-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.drone.yml
81 lines (71 loc) · 2.17 KB
/
.drone.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
kind: pipeline
type: docker
name: default
trigger:
event:
- custom
volumes:
- name: docker
host:
path: /var/run/docker.sock
platform:
os: linux
arch: amd64
steps:
- name: Build Image
image: plugins/docker
environment:
ENV_DOCKER_REGISTRY_NAME: ghcr.io
ENV_DOCKER_REPO_NAME: ghcr.io/kazanexpress/qa-docker
ENV_DOCKER_LOGIN:
from_secret: github-user
ENV_DOCKER_PASSWORD:
from_secret: github-user-token
ENV_GITGHUB_LOGIN:
from_secret: github-user
ENV_GITHUB_PASSWORD:
from_secret: github-user-token
ENV_DOCKER_IMAGES_PURGE: false
commands:
- echo "Job started at $(date '+%d/%m/%Y %H:%M:%S')";
- apk update
- apk add curl jq git gettext
- ENV_DOCKER_PUSH_EXIST=false
- for imageFolder in ./images/* ;
do
if [ -d "$imageFolder" ]; then
if [ ! -f "$imageFolder/.skip" ]; then
ENV_DOCKER_IMAGE_NAME=$(basename $imageFolder);
UPDATE_IMAGE=false;
source $imageFolder/.versions;
source $imageFolder/.check;
source $imageFolder/.build;
else
echo "Skip image folder $imageFolder (found .skip file in folder)";
fi;
fi;
done
- if [ "$ENV_DOCKER_PUSH_EXIST" = true ]; then
echo "Pushing changes to repository...";
git config --global user.name 'Machine User';
git config --global user.email 'ghmachine@kazanexpress.ru';
git remote set-url origin "https://$ENV_GITGHUB_LOGIN:$ENV_GITHUB_PASSWORD@github.com/${DRONE_REPO}";
git commit -m"Commit new .versions file [skip ci]";
git push origin master;
echo "Done.";
fi
- if [ "$ENV_DOCKER_IMAGES_PURGE" = true ]; then
echo "Purging local docker images";
ENV_TMP_PS=$(docker image ls --filter reference=$ENV_DOCKER_REPO_NAME --quiet);
if [ -z $ENV_TMP_PS ]; then
echo "No images";
else
docker rmi $ENV_TMP_PS;
fi;
else
echo "Skip purge local docker images";
fi
- echo "Job finished at $(date '+%d/%m/%Y %H:%M:%S'). Bye...";
volumes:
- name: docker
path: /var/run/docker.sock