cluster-management/applications/woodpecker/values.yaml

112 lines
3.0 KiB
YAML

---
server:
image:
repository: woodpeckerci/woodpecker-server
tag: v2.3.0
replicaCount: 2
service:
type: ClusterIP
port: 8000
ingress:
enabled: true
ingressClassName: "nginx"
annotations:
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: "true"
cert-manager.io/issuer: "letsencrypt-prod"
hosts:
- host: ci.nationtech.io
paths:
- path: /
tls:
- secretName: ci.nationtech.io-tls
hosts:
- ci.nationtech.io
secrets:
- name: woodpecker-secret
serviceAccount:
# -- Specifies whether a service account should be created
create: true
env:
WOODPECKER_OPEN: "false"
WOODPECKER_HOST: "https://ci.nationtech.io"
WOODPECKER_AGENT_SECRET: "woodpecker_agent_secret"
WOODPECKER_GRPC_SECRET: "woodpecker_grpc_secret"
WOODPECKER_GRPC_ADDR: ":9000"
WOODPECKER_SERVER_ADDR: ":8000"
WOODPECKER_METRICS_SERVER_ADDR: "prometheus-kube-prometheus-prometheus.monitoring.svc:9090"
# WOODPECKER_ADMIN: "woodpecker_admin"
# WOODPECKER_DATABASE_DRIVER: "postgres"
# 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:
image:
repository: woodpeckerci/woodpecker-agent
tag: v2.3.0 # Use a specific version instead of 'latest'
replicaCount: 2 # Run multiple agents for better parallelism
env:
WOODPECKER_SERVER: "woodpecker-server:9000"
WOODPECKER_AGENT_SECRET: "woodpecker_agent_secret"
WOODPECKER_BACKEND: "kubernetes"
WOODPECKER_BACKEND_K8S_NAMESPACE: "ci"
WOODPECKER_BACKEND_K8S_VOLUME_SIZE: "5Gi"
WOODPECKER_BACKEND_K8S_STORAGE_CLASS: "ceph-block"
WOODPECKER_BACKEND_K8S_STORAGE_RWX: "true"
WOODPECKER_BACKEND_K8S_POD_LABELS: '{"app":"woodpecker-job"}'
WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS: '{"prometheus.io/scrape":"true","prometheus.io/port":"9000"}'
WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR: '{"kubernetes.io/os":"linux"}'
WOODPECKER_BACKEND_K8S_SECCTX_NONROOT: "true"
WOODPECKER_BACKEND_K8S_PULL_SECRET_NAMES: "woodpecker-pull-secret"
resources:
requests:
cpu: 200m
memory: 256Mi
limits:
cpu: 1
memory: 1Gi
# PostgreSQL configuration
postgresql:
enabled: true
auth:
username: "woodpecker_admin"
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