Some cleanup

This commit is contained in:
Dedy Martadinata Supriyadi 2022-03-12 07:44:36 +00:00
parent d4a9dc1ba0
commit 866243d436

View File

@ -1,13 +1,9 @@
variables:
IMAGE_TAG: latest
IMAGE_TAG_TEST: test
DOCKER_CLI_EXPERIMENTAL: enabled
PLATFORMS: "linux/amd64,linux/arm64,linux/arm/v7"
PLATFORMS_TEST: "linux/amd64"
PACKAGE_REGISTRY_URL: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_COMMIT_SHORT_SHA}/${CI_COMMIT_SHORT_SHA}"
# Docker build will download via this url
PACKAGE_REGISTRY_URL_STATIC: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/static/static"
ZIP_NAME: "deemix-docker"
npm_config_cache: "$CI_PROJECT_DIR/.npm"
PKG_CACHE_PATH: "$CI_PROJECT_DIR/.nodejs-bin"
YARN_CACHE_FOLDER: "$CI_PROJECT_DIR/.yarn-cache"
@ -49,7 +45,7 @@ build-deemix:
- yarn install-all
- yarn dist-server
- ls -al dist/
# Upload static
# Upload static files (overwritten) per build
- |
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file dist/deemix-server-x64 ${PACKAGE_REGISTRY_URL_STATIC}/deemix-server-linux-amd64
- |
@ -63,19 +59,19 @@ build-deemix:
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file dist/deemix-server-arm64 ${PACKAGE_REGISTRY_URL}/deemix-server-linux-arm64
- |
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file dist/deemix-server-armv7 ${PACKAGE_REGISTRY_URL}/deemix-server-linux-arm
only:
refs:
- master
# only:
# refs:
# - master
create-release:
stage: create-release
image: registry.gitlab.com/gitlab-org/release-cli:latest
#rules:
# - if: $CI_COMMIT_SHA
# - if: $CI_COMMIT_TAG
script:
- export DATE=$(date +%Y%m%d) #Cant tag same twice use $CI_COMMIT_SHA for a while
- export DATE=$(date +%Y%m%d) # Cant tag same twice use $CI_COMMIT_SHA for a while
- |
release-cli create --name "Release $CI_COMMIT_SHORT_SHA" --tag-name $CI_COMMIT_SHORT_SHA --description "rollback to this version by changing the docker TAG release code above, registry.gitlab.com/bockiii/deemix-docker:TAG" \
release-cli create --name "Release $CI_COMMIT_SHORT_SHA $DATE" --tag-name $CI_COMMIT_SHORT_SHA --description "rollback to this version by changing the TAG release code above, `registry.gitlab.com/bockiii/deemix-docker:TAG`" \
--assets-link "{\"name\":\"deemix-server-linux-amd64\",\"url\":\"${PACKAGE_REGISTRY_URL}/deemix-server-linux-amd64\"}" \
--assets-link "{\"name\":\"deemix-server-linux-arm64\",\"url\":\"${PACKAGE_REGISTRY_URL}/deemix-server-linux-arm64\"}" \
--assets-link "{\"name\":\"deemix-server-linux-armv7\",\"url\":\"${PACKAGE_REGISTRY_URL}/deemix-server-linux-arm\"}" \
@ -83,14 +79,12 @@ create-release:
--assets-link "{\"name\":\"deemix-server-linux-static-arm64\",\"url\":\"${PACKAGE_REGISTRY_URL_STATIC}/deemix-server-linux-arm64\"}" \
--assets-link "{\"name\":\"deemix-server-linux-static-armv7\",\"url\":\"${PACKAGE_REGISTRY_URL_STATIC}/deemix-server-linux-arm\"}" \
--assets-link "{\"name\":\"deemix-server-docker-pull\",\"url\":\"https://registry.gitlab.com/bockiii/deemix-docker:${CI_COMMIT_SHORT_SHA}\"}"
only:
refs:
- master
# only:
# refs:
# - master
build-docker-image:
image: docker:19
#dependencies:
# - build-deemix
image: docker:20
stage: build-docker-image
services:
- docker:dind
@ -100,9 +94,9 @@ build-docker-image:
- export CI_JOB_TIMESTAMP=$(date --utc -Iseconds)
- export DATE=$(date +%Y%m%d)
script:
# Download latest buildx bin from github
# Format 20220212
- export DATE=$(date +%Y%m%d)
#Format 20220212
# Download latest buildx bin from github
- mkdir -p ~/.docker/cli-plugins/
- BUILDX_LATEST_BIN_URI=$(curl -s -L https://github.com/docker/buildx/releases/latest | grep 'linux-amd64' | grep 'href' | sed 's/.*href="/https:\/\/github.com/g; s/amd64".*/amd64/g')
- curl -s -L ${BUILDX_LATEST_BIN_URI} -o ~/.docker/cli-plugins/docker-buildx
@ -113,10 +107,8 @@ build-docker-image:
# create the multibuilder
- docker buildx create --name multibuilder
- docker buildx use multibuilder
# build and push, still need fix download url in dockerfile
# build and push
- docker buildx build --platform "${PLATFORMS}" --build-arg BUILDDATE=$DATE --build-arg STATIC_URL=$PACKAGE_REGISTRY_URL_STATIC -t ${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHORT_SHA} -t ${CI_REGISTRY_IMAGE} . --push
# Also can do using date, so we dont dependant on latest, in case application break again.
#- docker buildx build --platform "${PLATFORMS}" -t ${CI_REGISTRY_IMAGE}:${DATE} -t $CI_REGISTRY_IMAGE:${IMAGE_TAG} . --push
only:
refs:
- master
# only:
# refs:
# - master