Skip to content

Commit 7a756c2

Browse files
drone stuff
1 parent 96827d3 commit 7a756c2

File tree

5 files changed

+197
-0
lines changed

5 files changed

+197
-0
lines changed

drone-ci/runner/dronerunner-rbac.yaml

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
kind: Role
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
metadata:
4+
namespace: drone
5+
name: drone-runner
6+
rules:
7+
- apiGroups:
8+
- ""
9+
resources:
10+
- secrets
11+
verbs:
12+
- create
13+
- delete
14+
- apiGroups:
15+
- ""
16+
resources:
17+
- pods
18+
- pods/log
19+
verbs:
20+
- get
21+
- create
22+
- delete
23+
- list
24+
- watch
25+
- update
26+
27+
---
28+
kind: RoleBinding
29+
apiVersion: rbac.authorization.k8s.io/v1
30+
metadata:
31+
name: drone-runner
32+
namespace: drone
33+
subjects:
34+
- kind: ServiceAccount
35+
name: drone-runner
36+
namespace: drone
37+
roleRef:
38+
kind: Role
39+
name: drone-runner
40+
apiGroup: rbac.authorization.k8s.io

drone-ci/runner/dronerunner.yaml

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: drone-runner
5+
labels:
6+
app.kubernetes.io/name: drone-runner
7+
spec:
8+
replicas: 1
9+
selector:
10+
matchLabels:
11+
app.kubernetes.io/name: drone
12+
template:
13+
metadata:
14+
labels:
15+
app.kubernetes.io/name: drone
16+
spec:
17+
serviceAccountName: drone-runner
18+
containers:
19+
- name: runner
20+
image: drone/drone-runner-kube:latest
21+
ports:
22+
- containerPort: 3000
23+
env:
24+
- name: DRONE_NAMESPACE_DEFAULT
25+
value: drone
26+
- name: DRONE_SERVICE_ACCOUNT_DEFAULT
27+
value: drone-runner
28+
- name: DRONE_RPC_HOST
29+
value: droneserver.drone
30+
- name: DRONE_RPC_PROTO
31+
value: http
32+
- name: DRONE_RPC_SECRET
33+
valueFrom:
34+
secretKeyRef:
35+
name: drone-server-secret
36+
key: DRONE_RPC_SECRET
37+
---
38+
apiVersion: v1
39+
kind: ServiceAccount
40+
metadata:
41+
name: drone-runner
42+
labels:
43+
app.kubernetes.io/name: drone-runner
+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: extensions/v1beta1
2+
kind: Ingress
3+
metadata:
4+
name: drone-server
5+
annotations:
6+
kubernetes.io/ingress.class: "traefik"
7+
traefik.ingress.kubernetes.io/frontend-entry-points: http,https
8+
traefik.ingress.kubernetes.io/redirect-entry-point: https
9+
traefik.ingress.kubernetes.io/redirect-permanent: "true"
10+
spec:
11+
rules:
12+
- host: drone.marceldempers.dev
13+
http:
14+
paths:
15+
- backend:
16+
serviceName: droneserver
17+
servicePort: 80
18+
path: /
+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
name: drone-server-secret
5+
type: Opaque
6+
data:
7+
DRONE_GITHUB_CLIENT_ID: xxxxxxx
8+
DRONE_GITHUB_CLIENT_SECRET: xxxxxxx
9+
DRONE_RPC_SECRET: xxxxxxx
10+
DRONE_DATABASE_DATASOURCE: xxxxxxx
11+
DRONE_USER_CREATE: xxxxxxx
12+
DRONE_SERVER_HOST: xxxxxxx

drone-ci/server/droneserver.yaml

+84
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: drone-server
5+
labels:
6+
app: drone-server
7+
annotations:
8+
spec:
9+
selector:
10+
matchLabels:
11+
app: drone-server
12+
replicas: 1
13+
strategy:
14+
type: RollingUpdate
15+
rollingUpdate:
16+
maxSurge: 1
17+
maxUnavailable: 0
18+
template:
19+
metadata:
20+
labels:
21+
app: drone-server
22+
spec:
23+
containers:
24+
- name: drone-server
25+
image: drone/drone:1.6.5
26+
imagePullPolicy: IfNotPresent
27+
ports:
28+
- containerPort: 80
29+
- containerPort: 443
30+
env:
31+
- name: DRONE_USER_CREATE
32+
valueFrom:
33+
secretKeyRef:
34+
name: drone-server-secret
35+
key: DRONE_USER_CREATE
36+
- name: DRONE_DATABASE_DRIVER
37+
value: postgres
38+
- name: DRONE_DATABASE_DATASOURCE
39+
valueFrom:
40+
secretKeyRef:
41+
name: drone-server-secret
42+
key: DRONE_DATABASE_DATASOURCE
43+
- name: DRONE_SERVER_PROTO
44+
value: https
45+
- name: DRONE_SERVER_HOST
46+
valueFrom:
47+
secretKeyRef:
48+
name: drone-server-secret
49+
key: DRONE_SERVER_HOST
50+
- name: DRONE_GITHUB_CLIENT_ID
51+
valueFrom:
52+
secretKeyRef:
53+
name: drone-server-secret
54+
key: DRONE_GITHUB_CLIENT_ID
55+
- name: DRONE_GITHUB_CLIENT_SECRET
56+
valueFrom:
57+
secretKeyRef:
58+
name: drone-server-secret
59+
key: DRONE_GITHUB_CLIENT_SECRET
60+
- name: DRONE_RPC_SECRET
61+
valueFrom:
62+
secretKeyRef:
63+
name: drone-server-secret
64+
key: DRONE_RPC_SECRET
65+
---
66+
apiVersion: v1
67+
kind: Service
68+
metadata:
69+
name: droneserver
70+
labels:
71+
app: drone-server
72+
spec:
73+
type: ClusterIP
74+
selector:
75+
app: drone-server
76+
ports:
77+
- protocol: TCP
78+
name: http
79+
port: 80
80+
targetPort: 80
81+
- protocol: TCP
82+
name: https
83+
port: 443
84+
targetPort: 443

0 commit comments

Comments
 (0)