Kubernetes
We recommended to deploy Woodpecker using the Woodpecker helm chart.
Have a look at the values.yaml
config files for all available settings.
The chart contains two sub-charts, server
and agent
which are automatically configured as needed.
The chart started off with two independent charts but was merged into one to simplify the deployment at start of 2023.
A couple of backend-specific config env vars exists which are described in the kubernetes backend docs.
Metricsโ
Please see Prometheus for general information on configuration and usage.
For Kubernetes, you must set the following values when deploying via Helm chart to enable in-cluster metrics gathering:
metrics:
enabled: true
port: 9001
This activates the /metrics
endpoint on port 9001
without authentication. This port is not exposed externally by default. Use the instructions at Prometheus if you want to enable authenticated external access to metrics.
To enable Prometheus pod monitoring discovery, you must also make the following settings:
prometheus:
podmonitor:
enabled: true
interval: 60s
labels: {}
Troubleshooting Metricsโ
If you are not receiving metrics despite the steps above, ensure that in your Prometheus configuration either your namespace is explicitly configured in podMonitorNamespaceSelector
or the selectors are disabled.
# Search all available namespaces
podMonitorNamespaceSelector:
matchLabels: {}
# Enable all available pod monitors
podMonitorSelector:
matchLabels: {}