gitea runner
This commit is contained in:
6
gitea-runner/kustomization.yaml
Normal file
6
gitea-runner/kustomization.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- main.yaml
|
||||
112
gitea-runner/main.yaml
Normal file
112
gitea-runner/main.yaml
Normal file
@@ -0,0 +1,112 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: gitea-runner
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: act-runner
|
||||
app.kubernetes.io/version: 0.2.11
|
||||
helm.sh/chart: act-runner-0.2.0
|
||||
name: gitea-runner-act-runner
|
||||
namespace: gitea-runner
|
||||
---
|
||||
apiVersion: v1
|
||||
data:
|
||||
config.yaml: |-
|
||||
log:
|
||||
level: info
|
||||
runner:
|
||||
labels:
|
||||
- ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest
|
||||
- ubuntu-22.04:docker://docker.gitea.com/runner-images:ubuntu-22.04
|
||||
- ubuntu-20.04:docker://docker.gitea.com/runner-images:ubuntu-20.04
|
||||
- x64
|
||||
container:
|
||||
force_pull: true
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
annotations:
|
||||
checksum/config: 47c62c7084284f915799a694bfead1e221df249e7fa9043ed480992271c13cc8
|
||||
labels:
|
||||
app.kubernetes.io/instance: gitea-runner
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: act-runner
|
||||
app.kubernetes.io/version: 0.2.11
|
||||
helm.sh/chart: act-runner-0.2.0
|
||||
name: gitea-runner-act-runner-config
|
||||
namespace: gitea-runner
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: gitea-runner
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: act-runner
|
||||
app.kubernetes.io/version: 0.2.11
|
||||
helm.sh/chart: act-runner-0.2.0
|
||||
name: gitea-runner-act-runner
|
||||
namespace: gitea-runner
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/instance: gitea-runner
|
||||
app.kubernetes.io/name: act-runner
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
checksum/config: 47c62c7084284f915799a694bfead1e221df249e7fa9043ed480992271c13cc8
|
||||
checksum/secret: 12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126
|
||||
labels:
|
||||
app.kubernetes.io/instance: gitea-runner
|
||||
app.kubernetes.io/name: act-runner
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: GITEA_INSTANCE_URL
|
||||
value: https://git.borninpain.de
|
||||
- name: GITEA_RUNNER_REGISTRATION_TOKEN
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
key: token
|
||||
name: gitea-runner
|
||||
- name: CONFIG_FILE
|
||||
value: /config/config.yaml
|
||||
- name: DOCKER_HOST
|
||||
value: tcp://localhost:2376
|
||||
- name: DOCKER_CERT_PATH
|
||||
value: /certs/client
|
||||
- name: DOCKER_TLS_VERIFY
|
||||
value: "1"
|
||||
image: docker.io/gitea/act_runner:0.2.11-dind-rootless
|
||||
imagePullPolicy: IfNotPresent
|
||||
name: act-runner
|
||||
securityContext:
|
||||
privileged: true
|
||||
volumeMounts:
|
||||
- mountPath: /data
|
||||
name: data
|
||||
- mountPath: /config
|
||||
name: config
|
||||
restartPolicy: Always
|
||||
securityContext:
|
||||
fsGroup: 1000
|
||||
serviceAccountName: gitea-runner-act-runner
|
||||
terminationGracePeriodSeconds: 10
|
||||
volumes:
|
||||
- configMap:
|
||||
name: gitea-runner-act-runner-config
|
||||
name: config
|
||||
updateStrategy:
|
||||
type: RollingUpdate
|
||||
volumeClaimTemplates:
|
||||
- metadata:
|
||||
name: data
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
storageClassName: openebs-3-replicas
|
||||
12
gitea-runner/src/kustomization.yaml
Normal file
12
gitea-runner/src/kustomization.yaml
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
helmCharts:
|
||||
- name: act-runner
|
||||
repo: https://gringolito.github.io/helm-charts/
|
||||
version: 0.2.0
|
||||
releaseName: gitea-runner
|
||||
includeCRDs: true
|
||||
namespace: gitea-runner
|
||||
valuesFile: values.yaml
|
||||
207
gitea-runner/src/values.yaml
Normal file
207
gitea-runner/src/values.yaml
Normal file
@@ -0,0 +1,207 @@
|
||||
# Global values
|
||||
global:
|
||||
# -- Override the name of the app.
|
||||
nameOverride: ""
|
||||
# -- Override the fully qualified app name.
|
||||
fullnameOverride: ""
|
||||
# -- Apply labels to all resources.
|
||||
commonLabels: {}
|
||||
# enviornment: production
|
||||
|
||||
image:
|
||||
# -- Specify the image name to use (relative to `image.repository`).
|
||||
name: gitea/act_runner
|
||||
# -- Overrides the image tag whose default is the chart appVersion.
|
||||
tag: "0.2.11"
|
||||
# -- Specify the image repository to use.
|
||||
repository: docker.io
|
||||
# -- Specify the image pull policy. Valid values are `Always`, `Never`, `IfNotPresent`.
|
||||
# [imagePullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy).
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Specify the image pull secrets if pulling from private registry
|
||||
# [imagePullSecrets](https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod).
|
||||
pullSecrets: []
|
||||
# - name: <REGISTRY_SECRET>
|
||||
|
||||
runner:
|
||||
updateStrategy:
|
||||
# -- Specify the update strategy used to replace old Pods by new ones valid options are `RollingUpdate`, `OnDelete`.
|
||||
# [strategy](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies)
|
||||
type: RollingUpdate # @schema enum:[RollingUpdate, OnDelete]
|
||||
|
||||
# Docker in Docker configuration for running Docker commands inside the runner.
|
||||
dockerDind:
|
||||
# -- Enable Docker in Docker with root user.
|
||||
enabled: false
|
||||
# -- Docker DinD image repository and tag.
|
||||
image: docker:23.0.6-dind
|
||||
|
||||
# -- Gitea instance URL where the runner will register.
|
||||
instanceURL: https://git.borninpain.de
|
||||
|
||||
# Runner registration token configuration.
|
||||
token:
|
||||
# -- Set the Runner registration token value. If existing secret is specified this value is not used.
|
||||
value: ""
|
||||
# Specify an existing secret containing the Runner registration token.
|
||||
fromSecret:
|
||||
# -- Specify the secret name containing the Runner registration token.
|
||||
name: gitea-runner
|
||||
# -- Specify the key in the secret that contains the Runner registration token.
|
||||
key: token
|
||||
|
||||
# Runner custom configuration settings.
|
||||
config:
|
||||
# -- Enable custom configuration for the runner deployment.
|
||||
enabled: true
|
||||
# -- Specify runner's custom configuration in YAML format.
|
||||
# @default -- See [values.yaml](./values.yaml) for default configuration
|
||||
data: |
|
||||
log:
|
||||
level: info
|
||||
runner:
|
||||
labels:
|
||||
- ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest
|
||||
- ubuntu-22.04:docker://docker.gitea.com/runner-images:ubuntu-22.04
|
||||
- ubuntu-20.04:docker://docker.gitea.com/runner-images:ubuntu-20.04
|
||||
- x64
|
||||
container:
|
||||
force_pull: true
|
||||
|
||||
# -- Define environment variables for the runner container.
|
||||
# @default -- See [values.yaml](./values.yaml) for default configuration
|
||||
env:
|
||||
- name: DOCKER_HOST
|
||||
value: tcp://localhost:2376
|
||||
- name: DOCKER_CERT_PATH
|
||||
value: /certs/client
|
||||
- name: DOCKER_TLS_VERIFY
|
||||
value: "1"
|
||||
# - name: GITEA_RUNNER_LABELS
|
||||
# value: ""
|
||||
|
||||
# Persistent storage configuration for runner data.
|
||||
persistence:
|
||||
# -- Enable persistent storage for runner data.
|
||||
enabled: true
|
||||
# -- Storage class name for the PersistentVolumeClaim.
|
||||
storageClassName: openebs-3-replicas
|
||||
# -- Access modes for the PersistentVolumeClaim.
|
||||
accessModes: ReadWriteOnce
|
||||
# -- Size of the PersistentVolumeClaim.
|
||||
size: 1Gi
|
||||
# -- Path inside the container where the volume will be mounted.
|
||||
mountPath: "/data"
|
||||
# -- Label selectors for the PersistentVolumeClaim.
|
||||
selector: {}
|
||||
|
||||
# Service account configuration for the runner pods.
|
||||
serviceAccount:
|
||||
# -- Specifies whether a service account should be created.
|
||||
create: true
|
||||
# -- Annotations to add to the service account.
|
||||
annotations: {}
|
||||
# -- The name of the service account to use. If not set and create is true, a name is generated using the fullname template.
|
||||
name: ""
|
||||
|
||||
# Horizontal Pod Autoscaler configuration.
|
||||
autoscaling:
|
||||
# -- Enable horizontal pod autoscaling.
|
||||
enabled: false
|
||||
# -- Minimum number of replicas.
|
||||
minReplicas: 1 # @schema minimum:1
|
||||
# -- Maximum number of replicas.
|
||||
maxReplicas: 100 # @schema minimum:1
|
||||
# -- Target CPU utilization percentage for scaling.
|
||||
targetCPUUtilizationPercentage: 80 # @schema minimum:0;maximum:100
|
||||
# -- Target memory utilization percentage for scaling.
|
||||
targetMemoryUtilizationPercentage: 80 # @schema minimum:0;maximum:100
|
||||
|
||||
# -- Define environment variables from existing ConfigMap or Secret data.
|
||||
envFrom: []
|
||||
# - configMapRef:
|
||||
# name: <CONFIGMAP_NAME>
|
||||
# - secretRef:
|
||||
# name: <SECRET_NAME>
|
||||
|
||||
# -- Number of runner replicas.
|
||||
replicas: 1 # @schema minimum:1
|
||||
|
||||
# -- Annotations to add to the runner pods.
|
||||
podAnnotations: {}
|
||||
|
||||
# -- Labels to add to the runner pods.
|
||||
podLabels: {}
|
||||
|
||||
# -- Priority class name for the runner pods.
|
||||
# [priorityClassName](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass).
|
||||
podPriorityClassName: ""
|
||||
|
||||
# -- Pod security context configuration. Only applied when using rootless container.
|
||||
# [PodSecurityContext](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
|
||||
podSecurityContext:
|
||||
fsGroup: 1000
|
||||
|
||||
# -- Security context configuration for the runner container.
|
||||
# [SecurityContext](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
|
||||
securityContext: {}
|
||||
# privileged: true
|
||||
|
||||
# -- Resource requests and limits for the runner container.
|
||||
# [Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/).
|
||||
resources: {}
|
||||
# requests:
|
||||
# cpu: 200m
|
||||
# memory: 256Mi
|
||||
# limits:
|
||||
# cpu: 200m
|
||||
# memory: 256Mi
|
||||
|
||||
# -- Lifecycle hooks for the runner container.
|
||||
# [Lifecycle](https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/).
|
||||
lifecycle: {}
|
||||
# preStop:
|
||||
# exec:
|
||||
# command:
|
||||
# - /bin/sleep
|
||||
# - "10"
|
||||
|
||||
# -- Termination grace period in seconds for the runner pods.
|
||||
terminationGracePeriodSeconds: 10 # @schema minimum:0
|
||||
|
||||
# -- Node selector for scheduling runner pods on specific nodes.
|
||||
# [nodeSelector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector).
|
||||
nodeSelector: {}
|
||||
|
||||
# -- Tolerations for scheduling runner pods on nodes with taints.
|
||||
# [Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/).
|
||||
tolerations: []
|
||||
|
||||
# -- Affinity and anti-affinity rules for runner pod scheduling.
|
||||
# [Affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity).
|
||||
affinity: {}
|
||||
|
||||
# -- Topology spread constraints for distributing runner pods across zones/nodes.
|
||||
# [TopologySpreadConstraints](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/).
|
||||
topologySpreadConstraints: []
|
||||
|
||||
# -- Additional volumes to attach to the runner pods.
|
||||
extraVolumes: []
|
||||
|
||||
# -- Additional volume mounts for the runner container.
|
||||
extraVolumeMounts: []
|
||||
|
||||
# -- Init containers to run before the main runner container.
|
||||
initContainers: []
|
||||
|
||||
# -- Additional sidecar containers to run alongside the runner container.
|
||||
extraContainers: []
|
||||
|
||||
# -- Liveness probe configuration for the runner container.
|
||||
# [LivenessProbe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes).
|
||||
livenessProbe: {}
|
||||
|
||||
# -- Readiness probe configuration for the runner container.
|
||||
# [ReadinessProbe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes).
|
||||
readinessProbe: {}
|
||||
|
||||
Reference in New Issue
Block a user