debian-mirror-gitlab/scripts/build_assets_image

44 lines
1.6 KiB
Text
Raw Normal View History

2019-02-15 15:39:39 +05:30
# Exit early if we don't want to build the image
if [[ "${BUILD_ASSETS_IMAGE}" != "true" ]]
then
2020-06-23 00:09:42 +05:30
exit 0
2019-02-15 15:39:39 +05:30
fi
2018-12-13 13:39:08 +05:30
# Generate the image name based on the project this is being run in
2019-07-07 11:18:12 +05:30
ASSETS_IMAGE_NAME="gitlab-assets-ce"
2019-12-04 20:38:33 +05:30
# `dev.gitlab-org` still has gitlab-ee.
if [[ "${CI_PROJECT_NAME}" == "gitlab" ]] || [[ "${CI_PROJECT_NAME}" == "gitlab-ee" ]]
2019-07-07 11:18:12 +05:30
then
ASSETS_IMAGE_NAME="gitlab-assets-ee"
fi
2018-12-13 13:39:08 +05:30
ASSETS_IMAGE_PATH=${CI_REGISTRY}/${CI_PROJECT_PATH}/${ASSETS_IMAGE_NAME}
mkdir -p assets_container.build/public
cp -r public/assets assets_container.build/public/
cp Dockerfile.assets assets_container.build/
2020-05-24 23:13:21 +05:30
COMMIT_REF_SLUG_DESTINATION=${ASSETS_IMAGE_PATH}:${CI_COMMIT_REF_SLUG}
COMMIT_SHA_DESTINATION=${ASSETS_IMAGE_PATH}:${CI_COMMIT_SHA}
DESTINATIONS="--destination=$COMMIT_REF_SLUG_DESTINATION --destination=$COMMIT_SHA_DESTINATION"
2018-12-13 13:39:08 +05:30
2021-01-29 00:20:46 +05:30
# For EE branch builds, add a truncated SHA destination for later use by Omnibus
# auto-deploy builds
if [[ "${ASSETS_IMAGE_NAME}" == "gitlab-assets-ee" ]] && [ -n "$CI_COMMIT_BRANCH" ]
then
COMMIT_SHORT_SHA_DESTINATION=${ASSETS_IMAGE_PATH}:${CI_COMMIT_SHA:0:11}
DESTINATIONS="$DESTINATIONS --destination=$COMMIT_SHORT_SHA_DESTINATION"
fi
2019-07-07 11:18:12 +05:30
# Also tag the image with GitLab version, if running on a tag pipeline, so
# other projects can simply use that instead of computing the slug.
if [ -n "$CI_COMMIT_TAG" ]; then
2021-01-29 00:20:46 +05:30
COMMIT_REF_NAME_DESTINATION=${ASSETS_IMAGE_PATH}:${CI_COMMIT_REF_NAME}
2020-05-24 23:13:21 +05:30
DESTINATIONS="$DESTINATIONS --destination=$COMMIT_REF_NAME_DESTINATION"
2019-07-07 11:18:12 +05:30
fi
2020-05-24 23:13:21 +05:30
echo "building assets image for destinations: $DESTINATIONS"
/kaniko/executor --context=assets_container.build --dockerfile=assets_container.build/Dockerfile.assets $DESTINATIONS