1
- ---
2
1
# This file is used by the Drone CI Server and Agents to determine what
3
2
# should happen (if anything) in response to git pushes and pull requests.
4
3
# More info: https://reddit.atlassian.net/wiki/spaces/IO/pages/59113516/Drone+CI
5
4
kind : pipeline
6
5
type : docker
7
6
name : Lint
8
-
7
+ trigger :
8
+ event :
9
+ - push
10
+ - pull_request
11
+ - tag
9
12
steps :
10
- # https://pages.github.snooguts.net/reddit/infrared/guide/spinnaker.html
11
- - name : Lint Spinnaker Pipelines
12
- image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-infrared-pipeline:0.1
13
- pull : always
14
- settings :
15
- lint : true
16
- pipelines :
17
- - infrared/pipeline.star
18
-
19
13
# https://pages.github.snooguts.net/reddit/infrared/guide/k8s.html
20
14
- name : Lint Kubernetes Manifests
21
15
image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-infrared-deploy:0.1
24
18
lint : true
25
19
starlark :
26
20
- infrared/manifest.star
27
-
28
21
# https://github.snooguts.net/reddit/terraform-plugin-reddit-service/
29
22
- name : Lint Reddit Service Manifests
30
23
image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-terraform-reddit-service:0.6
@@ -35,21 +28,17 @@ steps:
35
28
wavefront_address : longboard.wavefront.com
36
29
wavefront_token :
37
30
from_secret : wavefront_token
38
-
39
31
---
40
32
kind : pipeline
41
33
type : docker
42
34
name : Publish
43
-
44
35
clone :
45
36
disable : true
46
-
47
37
trigger :
48
38
event :
49
39
- push
50
40
branch :
51
41
- master_reddit
52
-
53
42
steps :
54
43
- name : clone
55
44
image : plugins/git
60
49
image : golang:1.20
61
50
commands :
62
51
- apt-get update
63
- - apt-get install -yq --no-install-recommends build-essential curl git
52
+ - apt-get install -yq --no-install-recommends build-essential curl git
64
53
- make build
65
54
- mkdir -p .build/linux-amd64
66
55
- cp postgres_exporter .build/linux-amd64
80
69
username : drone
81
70
password :
82
71
from_secret : artifactory_password
83
-
84
72
- name : Notify Slack
85
73
image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-slack
86
74
pull : always
@@ -94,82 +82,106 @@ steps:
94
82
status :
95
83
- failure
96
84
- success
97
-
98
85
---
99
86
kind : pipeline
100
87
type : docker
101
88
name : Deploy
102
-
103
89
depends_on :
104
90
- Publish
105
-
106
91
trigger :
107
92
event :
108
93
- push
109
94
branch :
110
95
- master_reddit
111
-
112
96
steps :
113
- - name : Update Spinnaker Pipelines
114
- image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-infrared-pipeline:0.1
115
- pull : always
116
- settings :
117
- pipelines :
118
- - infrared/pipeline.star
119
- environment :
120
- GATE_PASSWORD :
121
- from_secret : gate_password
122
-
123
- - name : Deploy to Production
124
- image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-infrared-deploy:0.1
125
- pull : always
126
- settings :
127
- namespace : postgres-exporter
128
- starlark :
129
- - infrared/manifest.star
130
- webhook : postgres-exporter
131
- yaml :
132
- - infrared/alert-rules.yaml
133
- depends_on :
134
- - Update Spinnaker Pipelines
135
-
97
+ # Made by spinnaker-to-drone-pipeline migration tool
98
+ - name : Deploy to Production
99
+ image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-deploy-notifier:latest
100
+ pull : always
101
+ depends_on :
102
+ - clone
103
+ when :
104
+ branch :
105
+ - master_reddit
106
+ settings :
107
+ notify_targets : postgres-exporter
108
+ slack_channel : infra-storage-salon
109
+ slack_token :
110
+ from_secret : slack_token
111
+ ---
112
+ # Made by spinnaker-to-drone-pipeline migration tool
113
+ kind : pipeline
114
+ type : docker
115
+ name : ' Pipeline: Deploy'
116
+ node :
117
+ deployment-pool : " true"
118
+ trigger :
119
+ event :
120
+ - promote
121
+ target :
122
+ - postgres-exporter
123
+ concurrency :
124
+ limit : 1
125
+ steps :
126
+ - name : Deploy Manifest - prod-3-ue1d
127
+ image : artifactory.build.ue1.snooguts.net/reddit-docker-prod/drone-plugin-reddit-deploy:2.0
128
+ pull : always
129
+ depends_on :
130
+ - clone
131
+ settings :
132
+ cluster : prod-3-d
133
+ env : production
134
+ image_tag : ${IMAGE_TAG}
135
+ kustomize : infrared/deploy-to-production
136
+ namespace : postgres-exporter
137
+ service_account_token :
138
+ from_secret : core-prod-usva-aws-1-postgres-exporter
139
+ slack_channel : infra-storage-salon
140
+ slack_token :
141
+ from_secret : slack_token
142
+ starlark : infrared/manifest.star
143
+ timeout : 600
144
+ token :
145
+ from_secret : drone_token
136
146
---
137
147
kind : secret
138
148
name : artifactory_bearer
139
-
140
149
get :
141
150
path : secret/artifactory/drone/token
142
-
143
151
---
144
152
kind : secret
145
153
name : artifactory_password
146
-
147
154
get :
148
155
path : secret/artifactory/drone/password
149
-
150
156
---
151
157
kind : secret
152
158
name : slack_token
153
159
get :
154
160
path : secret/drone/common/slack_token
155
-
156
161
---
157
162
kind : secret
158
163
name : slack_webhook
159
-
160
164
get :
161
165
path : secret/drone/common/slack_webhook
162
-
163
166
---
164
167
kind : secret
165
168
name : gate_password
166
-
167
169
get :
168
170
path : secret/drone/common/gate_password
169
-
170
171
---
171
172
kind : secret
172
173
name : wavefront_token
173
-
174
174
get :
175
175
path : secret/drone/build/wavefront-token
176
+ ---
177
+ # Made by spinnaker-to-drone-pipeline migration tool
178
+ kind : secret
179
+ name : core-prod-usva-aws-1-postgres-exporter
180
+ get :
181
+ path : secret/achilles/drone/core-prod-usva-aws-1/postgres-exporter
182
+ ---
183
+ # Made by spinnaker-to-drone-pipeline migration tool
184
+ kind : secret
185
+ name : drone_token
186
+ get :
187
+ path : secret/drone/build/drone_token
0 commit comments