From 3e3be06f24b865280fdf33c5381b3d1101dcfc75 Mon Sep 17 00:00:00 2001 From: Antonio Gamez Diaz Date: Sat, 16 Jul 2022 09:50:19 +0200 Subject: [PATCH] Make ci build and use the e2e img Signed-off-by: Antonio Gamez Diaz --- .circleci/config.yml | 36 ++++++++++++++++++++++++++++++++++++ script/e2e-test.sh | 4 ++-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 262efa78142..4e3b3f68ca0 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -152,6 +152,8 @@ workflows: <<: *build_always - build_pinniped_proxy: <<: *build_always + - build_e2e_runner: + <<: *build_always - local_e2e_tests: <<: *build_always matrix: @@ -167,6 +169,7 @@ workflows: - build_go_images - build_dashboard - build_pinniped_proxy + - build_e2e_runner - sync_chart_from_bitnami - sync_chart_from_bitnami: <<: *build_on_main @@ -180,6 +183,7 @@ workflows: - build_go_images - build_dashboard - build_pinniped_proxy + - build_e2e_runner - sync_chart_from_bitnami - GKE_REGULAR_VERSION_LATEST_RELEASE: <<: *build_on_tag_or_prerelease @@ -191,6 +195,7 @@ workflows: - build_go_images - build_dashboard - build_pinniped_proxy + - build_e2e_runner - sync_chart_from_bitnami - GKE_STABLE_VERSION_MAIN: <<: *build_on_tag_or_prerelease @@ -202,6 +207,7 @@ workflows: - build_go_images - build_dashboard - build_pinniped_proxy + - build_e2e_runner - sync_chart_from_bitnami - GKE_STABLE_VERSION_LATEST_RELEASE: <<: *build_on_tag_or_prerelease @@ -213,6 +219,7 @@ workflows: - build_go_images - build_dashboard - build_pinniped_proxy + - build_e2e_runner - sync_chart_from_bitnami - push_images: <<: *build_on_main @@ -696,6 +703,35 @@ jobs: environment: IMAGES: "pinniped-proxy" <<: *build_images + build_e2e_runner: + docker: + - image: cimg/go:<< pipeline.parameters.GOLANG_VERSION >> + environment: + <<: *common_envars + IMAGE: "integration-tests" + steps: + - setup_remote_docker: + version: << pipeline.parameters.DOCKER_VERSION >> + - checkout + - <<: *exports + - run: + name: Build and push CI image + command: | + mkdir -p images/ + if [[ -n "${CIRCLE_TAG}" ]]; then + makeArgs="VERSION=${CIRCLE_TAG}" + fi + cd integration + make IMG_MODIFIER="$IMG_MODIFIER" IMAGE_TAG="${DEV_TAG}" $makeArgs kubeapps/${IMAGE} + if [[ -n "${DOCKER_USERNAME}" && -n "${DOCKER_PASSWORD}" ]]; then + docker login -u="${DOCKER_USERNAME}" -p="${DOCKER_PASSWORD}" + docker push kubeapps/${IMAGE}${IMG_MODIFIER}:${DEV_TAG} + fi + docker save kubeapps/${IMAGE}${IMG_MODIFIER}:${DEV_TAG} > ../images/${IMAGE}${IMG_MODIFIER}:${DEV_TAG} + - persist_to_workspace: + root: images + paths: + - "*" release: environment: <<: *common_envars diff --git a/script/e2e-test.sh b/script/e2e-test.sh index 5a8835cf158..0a092a6ed69 100755 --- a/script/e2e-test.sh +++ b/script/e2e-test.sh @@ -376,9 +376,9 @@ done # Browser tests cd "${ROOT_DIR}/integration" -kubectl apply -f manifests/e2e-runner.yaml +kubectl create deployment e2e-runner --image kubeapps/integration-tests${IMG_MODIFIER}:${DEV_TAG} k8s_wait_for_deployment default e2e-runner -pod=$(kubectl get po -l run=e2e-runner -o jsonpath="{.items[0].metadata.name}") +pod=$(kubectl get po -l app=e2e-runner -o custom-columns=:metadata.name --no-headers) ## Copy config and latest tests for f in *.js; do kubectl cp "./${f}" "${pod}:/app/"