gitlab-runner.yaml 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. apiVersion: extensions/v1beta1
  2. kind: Deployment
  3. metadata:
  4. labels:
  5. app: gitlab-runner-gitlab-runner
  6. chart: gitlab-runner-0.7.0
  7. release: gitlab-runner
  8. name: gitlab-runner-gitlab-runner
  9. spec:
  10. replicas: 1
  11. selector:
  12. matchLabels:
  13. app: gitlab-runner-gitlab-runner
  14. strategy:
  15. rollingUpdate:
  16. maxSurge: 1
  17. maxUnavailable: 1
  18. type: RollingUpdate
  19. template:
  20. metadata:
  21. annotations:
  22. prometheus.io/port: "9252"
  23. prometheus.io/scrape: "true"
  24. labels:
  25. app: gitlab-runner-gitlab-runner
  26. spec:
  27. containers:
  28. - command:
  29. - /bin/bash
  30. - /scripts/entrypoint
  31. env:
  32. - name: CI_SERVER_URL
  33. value: http://g.xxx.com.cn/ci/
  34. - name: CLONE_URL
  35. - name: RUNNER_REQUEST_CONCURRENCY
  36. value: "1"
  37. - name: RUNNER_EXECUTOR
  38. value: kubernetes
  39. - name: REGISTER_LOCKED
  40. value: "true"
  41. - name: RUNNER_TAG_LIST
  42. value: kubernetes-runner
  43. - name: KUBERNETES_IMAGE
  44. value: ubuntu:16.04
  45. - name: KUBERNETES_PRIVILEGED
  46. value: "true"
  47. - name: KUBERNETES_NAMESPACE
  48. value: default
  49. - name: KUBERNETES_CPU_LIMIT
  50. - name: KUBERNETES_MEMORY_LIMIT
  51. - name: KUBERNETES_CPU_REQUEST
  52. - name: KUBERNETES_MEMORY_REQUEST
  53. - name: KUBERNETES_SERVICE_ACCOUNT
  54. - name: KUBERNETES_SERVICE_CPU_LIMIT
  55. value: 200m
  56. - name: KUBERNETES_SERVICE_MEMORY_LIMIT
  57. value: 256Mi
  58. - name: KUBERNETES_SERVICE_CPU_REQUEST
  59. value: 100m
  60. - name: KUBERNETES_SERVICE_MEMORY_REQUEST
  61. value: 128Mi
  62. - name: KUBERNETES_HELPER_CPU_LIMIT
  63. - name: KUBERNETES_HELPER_MEMORY_LIMIT
  64. - name: KUBERNETES_HELPER_CPU_REQUEST
  65. - name: KUBERNETES_HELPER_MEMORY_REQUEST
  66. - name: KUBERNETES_HELPER_IMAGE
  67. - name: KUBERNETES_PULL_POLICY
  68. image: 10.120.116.178/package-images/gitlab-runner:alpine-v12.1.0
  69. imagePullPolicy: IfNotPresent
  70. lifecycle:
  71. preStop:
  72. exec:
  73. command:
  74. - gitlab-runner
  75. - unregister
  76. - --all-runners
  77. livenessProbe:
  78. exec:
  79. command:
  80. - /bin/bash
  81. - /scripts/check-live
  82. failureThreshold: 3
  83. initialDelaySeconds: 60
  84. periodSeconds: 10
  85. successThreshold: 1
  86. timeoutSeconds: 1
  87. name: gitlab-runner-gitlab-runner
  88. ports:
  89. - containerPort: 9252
  90. name: metrics
  91. protocol: TCP
  92. readinessProbe:
  93. exec:
  94. command:
  95. - /usr/bin/pgrep
  96. - gitlab.*runner
  97. failureThreshold: 3
  98. initialDelaySeconds: 10
  99. periodSeconds: 10
  100. successThreshold: 1
  101. timeoutSeconds: 1
  102. resources: {}
  103. terminationMessagePath: /dev/termination-log
  104. terminationMessagePolicy: File
  105. volumeMounts:
  106. - mountPath: /secrets
  107. name: runner-secrets
  108. - mountPath: /home/gitlab-runner/.gitlab-runner
  109. name: etc-gitlab-runner
  110. - mountPath: /scripts
  111. name: scripts
  112. - mountPath: /builds
  113. name: builds
  114. dnsPolicy: ClusterFirst
  115. initContainers:
  116. - command:
  117. - sh
  118. - /config/configure
  119. env:
  120. - name: CI_SERVER_URL
  121. value: http://g.xxx.com.cn/ci/
  122. - name: CLONE_URL
  123. - name: RUNNER_REQUEST_CONCURRENCY
  124. value: "1"
  125. - name: RUNNER_EXECUTOR
  126. value: kubernetes
  127. - name: REGISTER_LOCKED
  128. value: "true"
  129. - name: RUNNER_TAG_LIST
  130. value: kubernetes-runner
  131. - name: KUBERNETES_IMAGE
  132. value: ubuntu:16.04
  133. - name: KUBERNETES_PRIVILEGED
  134. value: "true"
  135. - name: KUBERNETES_NAMESPACE
  136. value: default
  137. - name: KUBERNETES_CPU_LIMIT
  138. - name: KUBERNETES_MEMORY_LIMIT
  139. - name: KUBERNETES_CPU_REQUEST
  140. - name: KUBERNETES_MEMORY_REQUEST
  141. - name: KUBERNETES_SERVICE_ACCOUNT
  142. - name: KUBERNETES_SERVICE_CPU_LIMIT
  143. value: 200m
  144. - name: KUBERNETES_SERVICE_MEMORY_LIMIT
  145. value: 256Mi
  146. - name: KUBERNETES_SERVICE_CPU_REQUEST
  147. value: 100m
  148. - name: KUBERNETES_SERVICE_MEMORY_REQUEST
  149. value: 128Mi
  150. - name: KUBERNETES_HELPER_CPU_LIMIT
  151. - name: KUBERNETES_HELPER_MEMORY_LIMIT
  152. - name: KUBERNETES_HELPER_CPU_REQUEST
  153. - name: KUBERNETES_HELPER_MEMORY_REQUEST
  154. - name: KUBERNETES_HELPER_IMAGE
  155. - name: KUBERNETES_PULL_POLICY
  156. image: 10.120.116.178/package-images/gitlab-runner:alpine-v12.1.0
  157. imagePullPolicy: IfNotPresent
  158. name: configure
  159. resources: {}
  160. terminationMessagePath: /dev/termination-log
  161. terminationMessagePolicy: File
  162. volumeMounts:
  163. - mountPath: /secrets
  164. name: runner-secrets
  165. - mountPath: /config
  166. name: scripts
  167. readOnly: true
  168. - mountPath: /init-secrets
  169. name: init-runner-secrets
  170. readOnly: true
  171. restartPolicy: Always
  172. schedulerName: default-scheduler
  173. securityContext:
  174. fsGroup: 65533
  175. runAsUser: 100
  176. serviceAccount: gitlab
  177. serviceAccountName: gitlab
  178. terminationGracePeriodSeconds: 30
  179. volumes:
  180. - name: builds
  181. persistentVolumeClaim:
  182. claimName: gitrunner-workspace
  183. - emptyDir:
  184. medium: Memory
  185. name: runner-secrets
  186. - emptyDir:
  187. medium: Memory
  188. name: etc-gitlab-runner
  189. - name: init-runner-secrets
  190. projected:
  191. defaultMode: 420
  192. sources:
  193. - secret:
  194. items:
  195. - key: runner-registration-token
  196. path: runner-registration-token
  197. - key: runner-token
  198. path: runner-token
  199. name: gitlab-runner-gitlab-runner
  200. - configMap:
  201. defaultMode: 420
  202. name: gitlab-runner-gitlab-runner
  203. name: scripts