From 06b018e2132184fc64f5f93ed5c6cc5539a1e013 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: Wed, 5 Mar 2025 00:59:55 +0000 Subject: [PATCH] Add ability to deploy custom images --- deploy_custom_images.yml.tmpl | 9 +++++++++ generate-deploy-ops-stages.sh | 22 +++++++++++++++++----- 2 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 deploy_custom_images.yml.tmpl diff --git a/deploy_custom_images.yml.tmpl b/deploy_custom_images.yml.tmpl new file mode 100644 index 0000000..77303c3 --- /dev/null +++ b/deploy_custom_images.yml.tmpl @@ -0,0 +1,9 @@ +${CUSTOM_IMAGE_TYPE}: + script: + - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" $CI_REGISTRY + - docker pull $UAT_REGISTRY/custom_images/${CUSTOM_IMAGE_TYPE}:main + - docker tag $UAT_REGISTRY/custom_images/${CUSTOM_IMAGE_TYPE}:main $CI_REGISTRY/root/maap-workspaces/custom_images/${CUSTOM_IMAGE_TYPE}:${TAG} + - docker push $CI_REGISTRY/root/maap-workspaces/custom_images/${CUSTOM_IMAGE_TYPE}:${TAG} + + tags: + - shell \ No newline at end of file diff --git a/generate-deploy-ops-stages.sh b/generate-deploy-ops-stages.sh index 3788d23..e56ff1e 100644 --- a/generate-deploy-ops-stages.sh +++ b/generate-deploy-ops-stages.sh @@ -7,17 +7,29 @@ if [[ ! -z "${TAG}" ]]; then pushd maap-workspaces # List paths containing dockerfiles find base_images -name "Dockerfile" -type f > ${basedir}/images.txt + find custom_images -name "Dockerfile" -type f >> ${basedir}/images.txt popd cat ${basedir}/images.txt template="${basedir}/deploy.yml.tmpl" cat ${basedir}/images.txt | while read image do - second_dir=$(echo "$image" | cut -d'/' -f2) - export BASE_IMAGE_TYPE=${second_dir} - export TAG=${TAG} - export DIT_REGISTRY=${DIT_REGISTRY} - cat ${template} | CI_JOB_TOKEN='$CI_JOB_TOKEN' envsubst >> deploy.yml + if [[ "$image" == base_images/*/* ]]; then + template="${basedir}/deploy.yml.tmpl" + second_dir=$(echo "$image" | cut -d'/' -f2) + export BASE_IMAGE_TYPE=${second_dir} + export TAG=${TAG} + export DIT_REGISTRY=${DIT_REGISTRY} + cat ${template} | CI_JOB_TOKEN='$CI_JOB_TOKEN' envsubst >> deploy.yml + elif [[ "$image" == custom_images/*/* ]]; then + template="${basedir}/deploy_custom_images.yml.tmpl" + second_dir=$(echo "$image" | cut -d'/' -f2) + export CUSTOM_IMAGE_TYPE=${second_dir} + export TAG=${TAG} + export DIT_REGISTRY=${DIT_REGISTRY} + cat ${template} | CI_JOB_TOKEN='$CI_JOB_TOKEN' envsubst >> deploy.yml + fi done + fi echo "Generate stages.yaml" -- GitLab