Skip to content

Commit

Permalink
everest-docker-image: Specify ev cli version or skip installation (#172)
Browse files Browse the repository at this point in the history
* Add parameter to specify ev-cli version used in everest-docker-image
* Add parameter to skip installation of ev-cli in everest-docker-image

This can be done automatically since EVerest 2024.9

---------

Signed-off-by: Kai-Uwe Hermann <kai-uwe.hermann@pionix.de>
  • Loading branch information
hikinggrass authored Dec 20, 2024
1 parent 9ce7f00 commit 46eda28
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 2 deletions.
6 changes: 4 additions & 2 deletions docker/everest-docker-image/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ ARG BRANCH
ARG EVEREST_CONFIG
ARG OCPP_CONFIG
ARG ADDITIONAL_CMAKE_PARAMETERS
ARG EV_CLI_VERSION
ARG INSTALL_EV_CLI

RUN apt-get update \
&& apt-get install --no-install-recommends -y \
Expand Down Expand Up @@ -49,9 +51,9 @@ ENV EVEREST_VENV=/workspace/everest/venv
RUN python3 -m venv ${EVEREST_VENV}
ENV PATH="${EVEREST_VENV}/bin:${PATH}"
RUN git clone https://github.com/EVerest/everest-cmake.git
RUN git clone https://github.com/EVerest/everest-utils.git
RUN git clone https://github.com/EVerest/everest-utils.git -b ${EV_CLI_VERSION}
WORKDIR /workspace/everest/everest-utils/ev-dev-tools
RUN python3 -m pip install .
RUN if [ "${INSTALL_EV_CLI}" = "install_ev_cli" ] ; then python3 -m pip install . ; fi
WORKDIR /workspace/everest
RUN git clone https://github.com/EVerest/everest-dev-environment.git
WORKDIR /workspace/everest/everest-dev-environment/dependency_manager
Expand Down
13 changes: 13 additions & 0 deletions docker/everest-docker-image/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,16 @@ usage() {
echo -e "\t--no-ssh: Do not append \"--ssh default\" to docker build - Optional"
echo -e "\t--container-runtime: Set container runtime (e.g. docker or podman) for build - Optional"
echo -e "\t--additional-cmake-parameters: Set additional cmake parameters for build - Optional, default \"-DEVEREST_BUILD_ALL_MODULES=ON\""
echo -e "\t--ev-cli-version: Version of ev-cli to use - Optional, defaults to: main"
echo -e "\t--no-ev-cli: Do not install specific ev-cli version, since EVerest 2024.9 this can be done automatically - Optional"
exit 1
}

ssh_param="--ssh=default"
container_runtime="docker"
additional_cmake_parameters="-DEVEREST_BUILD_ALL_MODULES=ON"
ev_cli_version="main"
install_ev_cli="install_ev_cli"

while [ ! -z "$1" ]; do
if [ "$1" == "--repo" ]; then
Expand Down Expand Up @@ -46,6 +50,12 @@ while [ ! -z "$1" ]; do
elif [ "$1" == "--additional-cmake-parameters" ]; then
additional_cmake_parameters="${2}"
shift 2
elif [ "$1" == "--ev-cli-version" ]; then
ev_cli_version="${2}"
shift 2
elif [ "$1" == "--no-ev-cli" ]; then
install_ev_cli="do_not_install_ev_cli"
shift 1
else
usage
break
Expand Down Expand Up @@ -89,6 +99,7 @@ fi
echo "Build date: ${NOW}"
echo "Using container runtime \"${container_runtime}\" for building. Version: $(${container_runtime} --version)"
echo "Additional CMake parameters for EVerest build: \"${additional_cmake_parameters}\""
echo "ev-cli version: \"${ev_cli_version}\""
trap 'echo "Build not successful"; exit 1' ERR
DOCKER_BUILDKIT=1 ${container_runtime} build \
--build-arg BUILD_DATE="${NOW}" \
Expand All @@ -97,5 +108,7 @@ DOCKER_BUILDKIT=1 ${container_runtime} build \
--build-arg OCPP_CONFIG="${ocpp_conf}" \
--build-arg BRANCH="${branch}" \
--build-arg ADDITIONAL_CMAKE_PARAMETERS="${additional_cmake_parameters}" \
--build-arg EV_CLI_VERSION="${ev_cli_version}" \
--build-arg INSTALL_EV_CLI="${install_ev_cli}" \
-t "${name}" "${ssh_param}" .
${container_runtime} save "${name}":latest | gzip >"$name-${NOW}.tar.gz"

0 comments on commit 46eda28

Please sign in to comment.