gitlab-org--gitlab-foss/scripts/build_assets_image
John T Skarbek a992c908b0 Adds the commit sha to the pushed assets
* This will upload the sha of the docker image containing assets to
  assist with building specific sha builds in the future.
* Addresses: https://gitlab.com/gitlab-org/release/framework/issues/51
2019-02-19 13:51:36 +00:00

29 lines
977 B
Bash
Executable file

#!/bin/bash
# Exit early if we don't want to build the image
if [[ "${BUILD_ASSETS_IMAGE}" != "true" ]]
then
exit 0
fi
# Generate the image name based on the project this is being run in
ASSETS_IMAGE_NAME=$(echo ${CI_PROJECT_NAME} |
awk '{
split($1, p, "-");
interim = sprintf("%s-assets-%s", p[1], p[2]);
sub(/-$/, "", interim);
print interim
}'
)
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/
docker build -t ${ASSETS_IMAGE_PATH}:${CI_COMMIT_REF_SLUG} -f assets_container.build/Dockerfile.assets assets_container.build/
docker tag ${ASSETS_IMAGE_PATH}:${CI_COMMIT_REF_SLUG} ${ASSETS_IMAGE_PATH}:${CI_COMMIT_SHA}
docker login -u gitlab-ci-token -p ${CI_JOB_TOKEN} ${CI_REGISTRY}
docker push ${ASSETS_IMAGE_PATH}:${CI_COMMIT_REF_SLUG}
docker push ${ASSETS_IMAGE_PATH}:${CI_COMMIT_SHA}