-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.drone.yml
154 lines (146 loc) · 3.59 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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
kind: pipeline
type: docker
name: docker-build-publish
node:
location: glk
steps:
- name: docker build test on dev
image: plugins/docker
settings:
username:
from_secret: nexus_ci_user
password:
from_secret: nexus_ci_password
password:
from_secret: nexus_ci_password
registry: docker.buttahtoast.ch
repo: docker.buttahtoast.ch/${DRONE_REPO}
tags:
- ${DRONE_COMMIT_SHA}
dockerfile: ${DOCKERFILE}
when:
branch:
- feature/*
- dev*
- init
event:
- push
- name: Docker Hub publsih on main
image: plugins/docker
settings:
username:
from_secret: dockerhub_user
password:
from_secret: dockerhub_password
repo: ${DRONE_REPO}
tags:
- latest-main
dockerfile: ${DOCKERFILE}
when:
branch:
- main
- master
event:
- push
- name: Docker Hub publsih on tag
image: plugins/docker
settings:
username:
from_secret: dockerhub_user
password:
from_secret: dockerhub_password
repo: ${DRONE_REPO}
tags:
- ${VERSION_PREFIX}${DRONE_COMMIT_REF//refs\/tags\//}
- latest
dockerfile: ${DOCKERFILE}
when:
event:
- tag
- name: Docker Hub publsih README
image: peterevans/dockerhub-description
environment:
DOCKERHUB_USERNAME:
from_secret: dockerhub_user
DOCKERHUB_PASSWORD:
from_secret: dockerhub_password
DOCKERHUB_REPOSITORY: ${DRONE_REPO}
README_FILEPATH: /drone/src/README.md
commands:
- /entrypoint.sh
- cat /action.log
- ls -lah
- ls /drone/src/
when:
event:
- tag
environment:
VERSION_PREFIX:
DOCKERFILE: ./Dockerfile
---
kind: pipeline
type: docker
name: docker-audit
node:
location: glk
steps:
- name: docker_build_check
image: docker
commands:
- docker build . -f $${DOCKERFILE} -t $${DRONE_COMMIT_SHA}
volumes:
- name: docker
path: /var/run/docker.sock
environment:
DOCKERFILE: ./Dockerfile
- name: Docker Audit
image: goodwithtech/dockle
commands:
- dockle --exit-code 1 --exit-level fatal $${DRONE_COMMIT_SHA}
volumes:
- name: docker
path: /var/run/docker.sock
when:
event:
- pull_request
- push
depends_on: [ docker_build_check ]
volumes:
- name: docker
host:
path: /var/run/docker.sock
---
kind: pipeline
type: docker
name: validate-pr-docker
node:
location: glk
steps:
- name: docker build test on pr
image: plugins/docker
settings:
username:
from_secret: nexus_ci_user
password:
from_secret: nexus_ci_password
registry: docker.buttahtoast.ch
repo: docker.buttahtoast.ch/${DRONE_REPO}
tags:
- ${DRONE_COMMIT_SHA}
dockerfile: ${DOCKERFILE}
when:
event:
- pull_request
- name: comment-pr
image: gboo/github-pr
settings:
github_token:
from_secret: github_api_token
action: comment
message: "This PR looks good so far! Test it ```docker run -it docker.buttahtoast.ch/${DRONE_REPO}:${DRONE_COMMIT_SHA} ```"
when:
event: pull_request
status: [ success ]
environment:
VERSION_PREFIX:
DOCKERFILE: ./Dockerfile