Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jul 6, 2021. It is now read-only.

Commitf20a36f

Browse files
anatolystanslerNikolayS
authored andcommitted
feat: improved docker images storage
1 parent42c71c3 commitf20a36f

File tree

2 files changed

+102
-38
lines changed

2 files changed

+102
-38
lines changed

‎.ci/docker_build_push.sh

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
#!/bin/bash
2+
3+
set -euo pipefail
4+
5+
docker_file=${DOCKER_FILE:-"Dockerfile"}
6+
tags=${TAGS:-""}
7+
8+
registry_user=${REGISTRY_USER:-"${CI_REGISTRY_USER}"}
9+
registry_password=${REGISTRY_PASSWORD:-"${CI_REGISTRY_PASSWORD}"}
10+
registry=${REGISTRY:-"${CI_REGISTRY}"}
11+
12+
docker login --username$registry_user --password"${registry_password}"$registry
13+
14+
tags_build=""
15+
tags_push=""
16+
17+
IFS=','read -ra ADDR string<<EOF
18+
$tags
19+
EOF
20+
21+
fortagin"${ADDR[@]}";do
22+
tags_build="${tags_build} --tag${tag}"
23+
tags_push="${tags_push}${tag}\n"
24+
done
25+
26+
set -x
27+
docker build$tags_build --file$docker_file.
28+
set +x
29+
30+
echo -e"$tags_push"|whileread -r tag;do
31+
[-z"$tag" ]&&continue
32+
set -x
33+
docker push$tag
34+
set +x
35+
done

‎.gitlab-ci.yml

Lines changed: 67 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,13 @@ image: ubuntu:16.04
22

33
stages:
44
-test
5-
-docker_build
5+
-build-image
6+
7+
workflow:
8+
rules:
9+
-if:$CI_MERGE_REQUEST_ID
10+
when:never
11+
-when:always
612

713
variables:
814
POSTGRES_DB:dbname# set database
@@ -194,44 +200,67 @@ test-check-cli:
194200
exit 1
195201
fi
196202
197-
198-
Docker build master:
199-
image:docker:stable
200-
stage:docker_build
201-
when:on_success
202-
variables:
203-
DOCKER_DRIVER:overlay2
204-
DOCKER_HOST:tcp://docker:2375
205-
only:
206-
-master
207-
-docker_build
208-
-docker_run_checkup_with_upload
203+
.job_template:&build_image_definition
204+
image:docker:19
205+
stage:build-image
206+
artifacts:
207+
paths:
208+
-bin
209209
services:
210210
-docker:dind
211-
before_script:
212-
-docker login -u gitlab-ci-token -p "${CI_BUILD_TOKEN}" registry.gitlab.com
213211
script:
214-
-docker build -t registry.gitlab.com/postgres-ai/postgres-checkup:latest --no-cache=true .
215-
-docker push registry.gitlab.com/postgres-ai/postgres-checkup:latest
216-
after_script:
217-
-docker logout registry.gitlab.com
218-
219-
Docker build for tag:
220-
image:docker:stable
221-
stage:docker_build
222-
when:on_success
212+
-apk update && apk upgrade && apk add --no-cache bash# TODO(anatoly): Remove dependency.
213+
-bash ./.ci/docker_build_push.sh
214+
215+
.only_var_template:&only_tag_release
216+
rules:
217+
-if:$CI_COMMIT_TAG =~ /^[0-9.]+$/
218+
219+
.only_var_template:&only_tag_rc
220+
rules:
221+
-if:$CI_COMMIT_TAG =~ /^[0-9.]+[\-_]*[a-zA-Z]+[a-zA-Z0-9.\-_]*[a-zA-Z0-9]+$/
222+
223+
.only_var_template:&only_master
224+
rules:
225+
-if:$CI_COMMIT_BRANCH == "master"
226+
227+
.only_var_template:&only_feature
228+
rules:
229+
-if:$CI_COMMIT_REF_SLUG != "master"#$CI_COMMIT_REF_SLUG &&
230+
231+
build-image-feature-server:
232+
<<:*build_image_definition
233+
<<:*only_feature
223234
variables:
224-
DOCKER_DRIVER:overlay2
225-
DOCKER_HOST:tcp://docker:2375
226-
only:
227-
variables:
228-
-$CI_COMMIT_TAG != null
229-
services:
230-
-docker:dind
231-
before_script:
232-
-docker login -u gitlab-ci-token -p "${CI_BUILD_TOKEN}" registry.gitlab.com
233-
script:
234-
-docker build -t registry.gitlab.com/postgres-ai/postgres-checkup:$CI_COMMIT_TAG --no-cache=true .
235-
-docker push registry.gitlab.com/postgres-ai/postgres-checkup:$CI_COMMIT_TAG
236-
after_script:
237-
-docker logout registry.gitlab.com
235+
REGISTRY_USER:"${CI_REGISTRY_USER}"
236+
REGISTRY_PASSWORD:"${CI_REGISTRY_PASSWORD}"
237+
REGISTRY:"${CI_REGISTRY}"
238+
DOCKER_NAME:"registry.gitlab.com/postgres-ai/postgres-checkup"
239+
TAGS:"${DOCKER_NAME}:${CI_COMMIT_REF_SLUG}"
240+
241+
build-image-master-server:
242+
<<:*build_image_definition
243+
<<:*only_master
244+
variables:
245+
DOCKER_NAME:"registry.gitlab.com/postgres-ai/postgres-checkup"
246+
TAGS:"${DOCKER_NAME}:master,${DOCKER_NAME}:master-${CI_COMMIT_SHORT_SHA}"
247+
248+
build-image-latest-server:
249+
<<:*build_image_definition
250+
<<:*only_tag_release
251+
variables:
252+
REGISTRY_USER:"${DH_CI_REGISTRY_USER}"
253+
REGISTRY_PASSWORD:"${DH_CI_REGISTRY_PASSWORD}"
254+
REGISTRY:"${DH_CI_REGISTRY}"
255+
DOCKER_NAME:"postgresai/postgres-checkup"
256+
TAGS:"${DOCKER_NAME}:latest,${DOCKER_NAME}:${CI_COMMIT_TAG}"
257+
258+
build-image-rc-server:
259+
<<:*build_image_definition
260+
<<:*only_tag_rc
261+
variables:
262+
REGISTRY_USER:"${DH_CI_REGISTRY_USER}"
263+
REGISTRY_PASSWORD:"${DH_CI_REGISTRY_PASSWORD}"
264+
REGISTRY:"${DH_CI_REGISTRY}"
265+
DOCKER_NAME:"postgresai/postgres-checkup"
266+
TAGS:"${DOCKER_NAME}:${CI_COMMIT_TAG}"

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp