harbor + woodpecker #1
| @ -1,12 +1,12 @@ | |||||||
| --- | --- | ||||||
| repositories: | repositories: | ||||||
|   - name: woodpecker |   - name: woodpecker | ||||||
|     url: https://woodpecker-ci.org/helm-charts |     url: https://woodpecker-ci.org/ | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|   - name: woodpecker |   - name: woodpecker | ||||||
|     namespace: ci |     namespace: woodpecker | ||||||
|     chart: woodpecker/woodpecker |     chart: woodpecker/woodpecker | ||||||
|     version: 1.0.3 |     version: 1.5.1 | ||||||
|     values: |     values: | ||||||
|       - values.yaml |       - values.yaml | ||||||
|  | |||||||
| @ -1,111 +1,55 @@ | |||||||
| --- | --- | ||||||
| server: | server: | ||||||
|   image: |   host: "ci.nationtech.io" | ||||||
|     repository: woodpeckerci/woodpecker-server |  | ||||||
|     tag: v2.3.0 |  | ||||||
|   replicaCount: 2 |  | ||||||
|   service: |  | ||||||
|     type: ClusterIP |  | ||||||
|     port: 8000 |  | ||||||
|   ingress: |   ingress: | ||||||
|     enabled: true |     enabled: true | ||||||
|     ingressClassName: "nginx" |  | ||||||
|     annotations: |     annotations: | ||||||
|       kubernetes.io/ingress.class: nginx |       kubernetes.io/ingress.class: nginx | ||||||
|  |       cert-manager.io/issuer: letsencrypt-prod | ||||||
|       kubernetes.io/tls-acme: "true" |       kubernetes.io/tls-acme: "true" | ||||||
|       cert-manager.io/issuer: "letsencrypt-prod" |  | ||||||
|     hosts: |     hosts: | ||||||
|       - host: ci.nationtech.io |       - host: "ci.nationtech.io" | ||||||
|         paths: |         paths: | ||||||
|           - path: / |           - path: "/" | ||||||
|  |             pathType: Prefix | ||||||
|  |             backend: | ||||||
|  |               service: | ||||||
|  |                 name: woodpecker-server | ||||||
|  |                 port: | ||||||
|  |                   number: 80 | ||||||
|     tls: |     tls: | ||||||
|       - secretName: ci.nationtech.io-tls |       - secretName: "ci.nationtech.io-tls" | ||||||
|         hosts: |         hosts: | ||||||
|           - ci.nationtech.io |           - "ci.nationtech.io" | ||||||
|   secrets: |  | ||||||
|     - name: woodpecker-secret |  | ||||||
|   serviceAccount: |  | ||||||
|     # -- Specifies whether a service account should be created |  | ||||||
|     create: true |  | ||||||
| 
 |  | ||||||
|   env: |   env: | ||||||
|     WOODPECKER_OPEN: "false" |     WOODPECKER_OPEN: "true" | ||||||
|  |     WOODPECKER_ADMIN: "woodpecker,admin,ci,nationtech,med" | ||||||
|     WOODPECKER_HOST: "https://ci.nationtech.io" |     WOODPECKER_HOST: "https://ci.nationtech.io" | ||||||
|     WOODPECKER_AGENT_SECRET: "woodpecker_agent_secret" |     WOODPECKER_AGENT_SECRET: "woodpecker-secret" | ||||||
|     WOODPECKER_GRPC_SECRET: "woodpecker_grpc_secret" |  | ||||||
|     WOODPECKER_GRPC_ADDR: ":9000" |     WOODPECKER_GRPC_ADDR: ":9000" | ||||||
|     WOODPECKER_SERVER_ADDR: ":8000" |     WOODPECKER_GITEA: "true" | ||||||
|     WOODPECKER_METRICS_SERVER_ADDR: "prometheus-kube-prometheus-prometheus.monitoring.svc:9090" |     WOODPECKER_GITEA_URL: "https://git.nationtech.io" | ||||||
|     # WOODPECKER_ADMIN: "woodpecker_admin" |     WOODPECKER_GITEA_CLIENT: "2a17849f-7747-44b9-a0d4-c79bc4aeff3d" | ||||||
|     # WOODPECKER_DATABASE_DRIVER: "postgres" |     WOODPECKER_GITEA_SECRET: "gto_5zpyckcvuawq6l2zaja4mt3mptigpyc5o7nibmbd76jd2e5tu3fa" | ||||||
|     # WOODPECKER_DATABASE_DATASOURCE: "postgres://woodpecker_admin:woodpecker_admin@postgresql:5432/woodpecker?sslmode=require" |  | ||||||
|   resources: |  | ||||||
|     requests: |  | ||||||
|       cpu: 200m |  | ||||||
|       memory: 256Mi |  | ||||||
|     limits: |  | ||||||
|       cpu: 500m |  | ||||||
|       memory: 512Mi |  | ||||||
| 
 | 
 | ||||||
| # Woodpecker agent configuration |  | ||||||
| agent: | agent: | ||||||
|   image: |   replicaCount: 2 | ||||||
|     repository: woodpeckerci/woodpecker-agent |  | ||||||
|     tag: v2.3.0 # Use a specific version instead of 'latest' |  | ||||||
|   replicaCount: 2 # Run multiple agents for better parallelism |  | ||||||
|   env: |   env: | ||||||
|     WOODPECKER_SERVER: "woodpecker-server:9000" |     WOODPECKER_SERVER: "woodpecker-server:9000" | ||||||
|     WOODPECKER_AGENT_SECRET: "woodpecker_agent_secret" |     WOODPECKER_AGENT_SECRET: "woodpecker-secret" | ||||||
|  |     WOODPECKER_MAX_PROCS: "2" | ||||||
|     WOODPECKER_BACKEND: "kubernetes" |     WOODPECKER_BACKEND: "kubernetes" | ||||||
|     WOODPECKER_BACKEND_K8S_NAMESPACE: "ci" |     WOODPECKER_BACKEND_K8S_NAMESPACE: "woodpecker" | ||||||
|     WOODPECKER_BACKEND_K8S_VOLUME_SIZE: "5Gi" |  | ||||||
|     WOODPECKER_BACKEND_K8S_STORAGE_CLASS: "ceph-block" |     WOODPECKER_BACKEND_K8S_STORAGE_CLASS: "ceph-block" | ||||||
|  |     WOODPECKER_BACKEND_K8S_VOLUME_SIZE: "10Gi" | ||||||
|     WOODPECKER_BACKEND_K8S_STORAGE_RWX: "true" |     WOODPECKER_BACKEND_K8S_STORAGE_RWX: "true" | ||||||
|     WOODPECKER_BACKEND_K8S_POD_LABELS: '{"app":"woodpecker-job"}' |     WOODPECKER_BACKEND_K8S_POD_LABELS: '{"app.kubernetes.io/name":"agent"}' | ||||||
|     WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS: '{"prometheus.io/scrape":"true","prometheus.io/port":"9000"}' |     WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS: "" | ||||||
|     WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR: '{"kubernetes.io/os":"linux"}' |     WOODPECKER_CONNECT_RETRY_COUNT: "3" | ||||||
|     WOODPECKER_BACKEND_K8S_SECCTX_NONROOT: "true" |     WOODPECKER_BACKEND_K8S_PULL_SECRET_NAMES: "" | ||||||
|     WOODPECKER_BACKEND_K8S_PULL_SECRET_NAMES: "woodpecker-pull-secret" |  | ||||||
|   resources: |  | ||||||
|     requests: |  | ||||||
|       cpu: 200m |  | ||||||
|       memory: 256Mi |  | ||||||
|     limits: |  | ||||||
|       cpu: 1 |  | ||||||
|       memory: 1Gi |  | ||||||
| 
 | 
 | ||||||
| # PostgreSQL configuration |   image: | ||||||
| postgresql: |     registry: docker.io | ||||||
|   enabled: true |     repository: woodpeckerci/woodpecker-agent | ||||||
|   auth: |     pullPolicy: IfNotPresent | ||||||
|     username: "woodpecker_admin" |     tag: "latest" | ||||||
|     password: "woodpecker_admin" |  | ||||||
|     database: "woodpecker" |  | ||||||
|   persistence: |  | ||||||
|     enabled: true |  | ||||||
|     size: 5Gi |  | ||||||
|   resources: |  | ||||||
|     requests: |  | ||||||
|       cpu: 100m |  | ||||||
|       memory: 256Mi |  | ||||||
|     limits: |  | ||||||
|       cpu: 500m |  | ||||||
|       memory: 1Gi |  | ||||||
| 
 |  | ||||||
| # Prometheus integration |  | ||||||
| metrics: |  | ||||||
|   serviceMonitor: |  | ||||||
|     enabled: true |  | ||||||
|     namespace: monitoring |  | ||||||
|     interval: 15s |  | ||||||
|     scrapeTimeout: 14s |  | ||||||
|     selector: |  | ||||||
|       release: prometheus |  | ||||||
| 
 |  | ||||||
| # Logging integration |  | ||||||
| logging: |  | ||||||
|   fluentd: |  | ||||||
|     enabled: true |  | ||||||
|     config: |  | ||||||
|       logLevel: info |  | ||||||
|       fluentdAddress: fluentd-headless.logging.svc:24224 |  | ||||||
|  | |||||||
| @ -7,5 +7,5 @@ helmfiles: | |||||||
|   # - path: applications/vault/helmfile.yaml |   # - path: applications/vault/helmfile.yaml | ||||||
|   # - path: applications/logging/helmfile.yaml |   # - path: applications/logging/helmfile.yaml | ||||||
|   # - path: applications/gitea/helmfile.yaml |   # - path: applications/gitea/helmfile.yaml | ||||||
|   # - path: applications/woodpecker/helmfile.yaml |   - path: applications/woodpecker/helmfile.yaml | ||||||
|   - path: applications/harbor/helmfile.yaml | #  - path: applications/harbor/helmfile.yaml | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user