From 30c3f47afd5b5357f6ceac3d9e0e52f7f8785da0 Mon Sep 17 00:00:00 2001 From: Sebastian Kippe Date: Sun, 3 Mar 2019 11:27:22 +0700 Subject: [PATCH] Initial Drone CI configs --- kubernetes/drone-rbac.yaml | 12 +++++ kubernetes/drone-server.yaml | 84 ++++++++++++++++++++++++++++++++ kubernetes/kosmos-namespace.yaml | 6 +++ 3 files changed, 102 insertions(+) create mode 100644 kubernetes/drone-rbac.yaml create mode 100644 kubernetes/drone-server.yaml create mode 100644 kubernetes/kosmos-namespace.yaml diff --git a/kubernetes/drone-rbac.yaml b/kubernetes/drone-rbac.yaml new file mode 100644 index 0000000..9185d36 --- /dev/null +++ b/kubernetes/drone-rbac.yaml @@ -0,0 +1,12 @@ +apiVersion: rbac.authorization.k8s.io/v1beta1 +kind: ClusterRoleBinding +metadata: + name: kosmos-drone-rbac +subjects: + - kind: ServiceAccount + name: kosmos-drone-server + namespace: kosmos +roleRef: + kind: ClusterRole + name: cluster-admin + apiGroup: rbac.authorization.k8s.io diff --git a/kubernetes/drone-server.yaml b/kubernetes/drone-server.yaml new file mode 100644 index 0000000..703a9d3 --- /dev/null +++ b/kubernetes/drone-server.yaml @@ -0,0 +1,84 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: kosmos-drone-server + namespace: kosmos + labels: + app: kosmos-drone +spec: + replicas: 1 + template: + metadata: + labels: + name: kosmos-drone-server + app: kosmos-drone + spec: + containers: + - name: kosmos-drone-server + image: drone/drone:1.0.0-rc.5 + imagePullPolicy: Always + env: + - name: DRONE_KUBERNETES_ENABLED + value: "true" + - name: DRONE_KUBERNETES_NAMESPACE + value: kosmos + - name: DRONE_GITEA_SERVER + value: https://gitea.kosmos.org + - name: DRONE_RPC_SECRET + value: 0500c55b6ae97a7f1e7c207477698b6d + - name: DRONE_SERVER_HOST + value: drone.kosmos.org + - name: DRONE_SERVER_PROTO + value: https + - name: DRONE_TLS_AUTOCERT + value: "true" + - name: DRONE_ADMIN + value: raucao,gregkare,galfert + - name: DRONE_LOGS_DEBUG + value: "true" + volumeMounts: + - mountPath: /var/lib/drone + name: kosmos-drone-data + ports: + - containerPort: 80 + - containerPort: 443 + volumes: + - name: kosmos-drone-data + persistentVolumeClaim: + claimName: kosmos-drone-data + restartPolicy: Always +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: kosmos-drone-data + namespace: kosmos + labels: + app: kosmos-drone +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 3000Mi +status: {} +--- +apiVersion: v1 +kind: Service +metadata: + name: kosmos-drone-server + namespace: kosmos + labels: + name: kosmos-drone-server + app: kosmos-drone +spec: + type: LoadBalancer + ports: + - name: "http" + port: 80 + targetPort: 80 + - name: "https" + port: 443 + targetPort: 443 + selector: + name: kosmos-drone-server diff --git a/kubernetes/kosmos-namespace.yaml b/kubernetes/kosmos-namespace.yaml new file mode 100644 index 0000000..b89f8e5 --- /dev/null +++ b/kubernetes/kosmos-namespace.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kosmos + labels: + app: kosmos