mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-09-02 20:23:50 +00:00
Remove woodpecker prefix from env var title in docs (#4968)
This commit is contained in:
parent
9869f1be75
commit
3d73668fbc
14 changed files with 716 additions and 306 deletions
|
@ -596,7 +596,7 @@ For more details check the [matrix build docs](./30-matrix-workflows.md).
|
|||
|
||||
You can set labels for your workflow to select an agent to execute the workflow on. An agent will pick up and run a workflow when **every** label assigned to it matches the agents labels.
|
||||
|
||||
To set additional agent labels, check the [agent configuration options](../30-administration/10-configuration/30-agent.md#woodpecker_agent_labels). Agents will have at least four default labels: `platform=agent-os/agent-arch`, `hostname=my-agent`, `backend=docker` (type of the agent backend) and `repo=*`. Agents can use a `*` as a wildcard for a label. For example `repo=*` will match every repo.
|
||||
To set additional agent labels, check the [agent configuration options](../30-administration/10-configuration/30-agent.md#agent_labels). Agents will have at least four default labels: `platform=agent-os/agent-arch`, `hostname=my-agent`, `backend=docker` (type of the agent backend) and `repo=*`. Agents can use a `*` as a wildcard for a label. For example `repo=*` will match every repo.
|
||||
|
||||
Workflow labels with an empty value will be ignored.
|
||||
By default, each workflow has at least the `repo=your-user/your-repo-name` label. If you have set the [platform attribute](#platform) for your workflow it will have a label like `platform=your-os/your-arch` as well.
|
||||
|
|
|
@ -37,7 +37,7 @@ Example registry hostname matching logic:
|
|||
|
||||
## Global registry support
|
||||
|
||||
To make a private registry globally available, check the [server configuration docs](../30-administration/10-configuration/10-server.md#woodpecker_docker_config).
|
||||
To make a private registry globally available, check the [server configuration docs](../30-administration/10-configuration/10-server.md#docker_config).
|
||||
|
||||
## GCR registry support
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ The **agent** executes the [workflows](../20-usage/15-terminology/index.md) via
|
|||
The **autoscaler** allows spinning up new VMs on a cloud provider of choice to process pending builds. After the builds finished, the VMs are destroyed again (after a short transition time).
|
||||
|
||||
:::tip
|
||||
You can add more agents to increase the number of parallel workflows or set the agent's [`WOODPECKER_MAX_WORKFLOWS=1`](./10-configuration/30-agent.md#woodpecker_max_workflows) environment variable to increase the number of parallel workflows per agent.
|
||||
You can add more agents to increase the number of parallel workflows or set the agent's [`WOODPECKER_MAX_WORKFLOWS=1`](./10-configuration/30-agent.md#max_workflows) environment variable to increase the number of parallel workflows per agent.
|
||||
:::
|
||||
|
||||
## Database
|
||||
|
|
|
@ -547,64 +547,92 @@ $().ready(function () {
|
|||
|
||||
## Environment variables
|
||||
|
||||
### `WOODPECKER_LOG_LEVEL`
|
||||
### LOG_LEVEL
|
||||
|
||||
> Default: empty
|
||||
- Name: `WOODPECKER_LOG_LEVEL`
|
||||
- Default: `info`
|
||||
|
||||
Configures the logging level. Possible values are `trace`, `debug`, `info`, `warn`, `error`, `fatal`, `panic`, `disabled` and empty.
|
||||
|
||||
### `WOODPECKER_LOG_FILE`
|
||||
---
|
||||
|
||||
> Default: `stderr`
|
||||
### LOG_FILE
|
||||
|
||||
- Name: `WOODPECKER_LOG_FILE`
|
||||
- Default: `stderr`
|
||||
|
||||
Output destination for logs.
|
||||
'stdout' and 'stderr' can be used as special keywords.
|
||||
|
||||
### `WOODPECKER_DATABASE_LOG`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### DATABASE_LOG
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_LOG`
|
||||
- Default: `false`
|
||||
|
||||
Enable logging in database engine (currently xorm).
|
||||
|
||||
### `WOODPECKER_DATABASE_LOG_SQL`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### DATABASE_LOG_SQL
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_LOG_SQL`
|
||||
- Default: `false`
|
||||
|
||||
Enable logging of sql commands.
|
||||
|
||||
### `WOODPECKER_DATABASE_MAX_CONNECTIONS`
|
||||
---
|
||||
|
||||
> Default: `100`
|
||||
### DATABASE_MAX_CONNECTIONS
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_MAX_CONNECTIONS`
|
||||
- Default: `100`
|
||||
|
||||
Max database connections xorm is allowed create.
|
||||
|
||||
### `WOODPECKER_DATABASE_IDLE_CONNECTIONS`
|
||||
---
|
||||
|
||||
> Default: `2`
|
||||
### DATABASE_IDLE_CONNECTIONS
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_IDLE_CONNECTIONS`
|
||||
- Default: `2`
|
||||
|
||||
Amount of database connections xorm will hold open.
|
||||
|
||||
### `WOODPECKER_DATABASE_CONNECTION_TIMEOUT`
|
||||
---
|
||||
|
||||
> Default: `3 Seconds`
|
||||
### DATABASE_CONNECTION_TIMEOUT
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_CONNECTION_TIMEOUT`
|
||||
- Default: `3 Seconds`
|
||||
|
||||
Time an active database connection is allowed to stay open.
|
||||
|
||||
### `WOODPECKER_DEBUG_PRETTY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### DEBUG_PRETTY
|
||||
|
||||
- Name: `WOODPECKER_DEBUG_PRETTY`
|
||||
- Default: `false`
|
||||
|
||||
Enable pretty-printed debug output.
|
||||
|
||||
### `WOODPECKER_DEBUG_NOCOLOR`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### DEBUG_NOCOLOR
|
||||
|
||||
- Name: `WOODPECKER_DEBUG_NOCOLOR`
|
||||
- Default: `true`
|
||||
|
||||
Disable colored debug output.
|
||||
|
||||
### `WOODPECKER_HOST`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### HOST
|
||||
|
||||
- Name: `WOODPECKER_HOST`
|
||||
- Default: none
|
||||
|
||||
Server fully qualified URL of the user-facing hostname, port (if not default for HTTP/HTTPS) and path prefix.
|
||||
|
||||
|
@ -614,37 +642,52 @@ Examples:
|
|||
- `WOODPECKER_HOST=http://example.org/woodpecker`
|
||||
- `WOODPECKER_HOST=http://example.org:1234/woodpecker`
|
||||
|
||||
### `WOODPECKER_SERVER_ADDR`
|
||||
---
|
||||
|
||||
> Default: `:8000`
|
||||
### SERVER_ADDR
|
||||
|
||||
- Name: `WOODPECKER_SERVER_ADDR`
|
||||
- Default: `:8000`
|
||||
|
||||
Configures the HTTP listener port.
|
||||
|
||||
### `WOODPECKER_SERVER_ADDR_TLS`
|
||||
---
|
||||
|
||||
> Default: `:443`
|
||||
### SERVER_ADDR_TLS
|
||||
|
||||
- Name: `WOODPECKER_SERVER_ADDR_TLS`
|
||||
- Default: `:443`
|
||||
|
||||
Configures the HTTPS listener port when SSL is enabled.
|
||||
|
||||
### `WOODPECKER_SERVER_CERT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### SERVER_CERT
|
||||
|
||||
- Name: `WOODPECKER_SERVER_CERT`
|
||||
- Default: none
|
||||
|
||||
Path to an SSL certificate used by the server to accept HTTPS requests.
|
||||
|
||||
Example: `WOODPECKER_SERVER_CERT=/path/to/cert.pem`
|
||||
|
||||
### `WOODPECKER_SERVER_KEY`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### SERVER_KEY
|
||||
|
||||
- Name: `WOODPECKER_SERVER_KEY`
|
||||
- Default: none
|
||||
|
||||
Path to an SSL certificate key used by the server to accept HTTPS requests.
|
||||
|
||||
Example: `WOODPECKER_SERVER_KEY=/path/to/key.pem`
|
||||
|
||||
### `WOODPECKER_CUSTOM_CSS_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### CUSTOM_CSS_FILE
|
||||
|
||||
- Name: `WOODPECKER_CUSTOM_CSS_FILE`
|
||||
- Default: none
|
||||
|
||||
File path for the server to serve a custom .CSS file, used for customizing the UI.
|
||||
Can be used for showing banner messages, logos, or environment-specific hints (a.k.a. white-labeling).
|
||||
|
@ -652,9 +695,12 @@ The file must be UTF-8 encoded, to ensure all special characters are preserved.
|
|||
|
||||
Example: `WOODPECKER_CUSTOM_CSS_FILE=/usr/local/www/woodpecker.css`
|
||||
|
||||
### `WOODPECKER_CUSTOM_JS_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### CUSTOM_JS_FILE
|
||||
|
||||
- Name: `WOODPECKER_CUSTOM_JS_FILE`
|
||||
- Default: none
|
||||
|
||||
File path for the server to serve a custom .JS file, used for customizing the UI.
|
||||
Can be used for showing banner messages, logos, or environment-specific hints (a.k.a. white-labeling).
|
||||
|
@ -662,178 +708,246 @@ The file must be UTF-8 encoded, to ensure all special characters are preserved.
|
|||
|
||||
Example: `WOODPECKER_CUSTOM_JS_FILE=/usr/local/www/woodpecker.js`
|
||||
|
||||
### `WOODPECKER_GRPC_ADDR`
|
||||
---
|
||||
|
||||
> Default: `:9000`
|
||||
### GRPC_ADDR
|
||||
|
||||
- Name: `WOODPECKER_GRPC_ADDR`
|
||||
- Default: `:9000`
|
||||
|
||||
Configures the gRPC listener port.
|
||||
|
||||
### `WOODPECKER_GRPC_SECRET`
|
||||
---
|
||||
|
||||
> Default: `secret`
|
||||
### GRPC_SECRET
|
||||
|
||||
- Name: `WOODPECKER_GRPC_SECRET`
|
||||
- Default: `secret`
|
||||
|
||||
Configures the gRPC JWT secret.
|
||||
|
||||
### `WOODPECKER_GRPC_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GRPC_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_GRPC_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GRPC_SECRET` from the specified filepath.
|
||||
|
||||
### `WOODPECKER_METRICS_SERVER_ADDR`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### METRICS_SERVER_ADDR
|
||||
|
||||
- Name: `WOODPECKER_METRICS_SERVER_ADDR`
|
||||
- Default: none
|
||||
|
||||
Configures an unprotected metrics endpoint. An empty value disables the metrics endpoint completely.
|
||||
|
||||
Example: `:9001`
|
||||
|
||||
### `WOODPECKER_ADMIN`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### ADMIN
|
||||
|
||||
- Name: `WOODPECKER_ADMIN`
|
||||
- Default: none
|
||||
|
||||
Comma-separated list of admin accounts.
|
||||
|
||||
Example: `WOODPECKER_ADMIN=user1,user2`
|
||||
|
||||
### `WOODPECKER_ORGS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### ORGS
|
||||
|
||||
- Name: `WOODPECKER_ORGS`
|
||||
- Default: none
|
||||
|
||||
Comma-separated list of approved organizations.
|
||||
|
||||
Example: `org1,org2`
|
||||
|
||||
### `WOODPECKER_REPO_OWNERS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### REPO_OWNERS
|
||||
|
||||
- Name: `WOODPECKER_REPO_OWNERS`
|
||||
- Default: none
|
||||
|
||||
Repositories by those owners will be allowed to be used in woodpecker.
|
||||
|
||||
Example: `user1,user2`
|
||||
|
||||
### `WOODPECKER_OPEN`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### OPEN
|
||||
|
||||
- Name: `WOODPECKER_OPEN`
|
||||
- Default: `false`
|
||||
|
||||
Enable to allow user registration.
|
||||
|
||||
### `WOODPECKER_AUTHENTICATE_PUBLIC_REPOS`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### AUTHENTICATE_PUBLIC_REPOS
|
||||
|
||||
- Name: `WOODPECKER_AUTHENTICATE_PUBLIC_REPOS`
|
||||
- Default: `false`
|
||||
|
||||
Always use authentication to clone repositories even if they are public. Needed if the forge requires to always authenticate as used by many companies.
|
||||
|
||||
### `WOODPECKER_DEFAULT_ALLOW_PULL_REQUESTS`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### DEFAULT_ALLOW_PULL_REQUESTS
|
||||
|
||||
- Name: `WOODPECKER_DEFAULT_ALLOW_PULL_REQUESTS`
|
||||
- Default: `true`
|
||||
|
||||
The default setting for allowing pull requests on a repo.
|
||||
|
||||
### `WOODPECKER_DEFAULT_CANCEL_PREVIOUS_PIPELINE_EVENTS`
|
||||
---
|
||||
|
||||
> Default: `pull_request, push`
|
||||
### DEFAULT_CANCEL_PREVIOUS_PIPELINE_EVENTS
|
||||
|
||||
- Name: `WOODPECKER_DEFAULT_CANCEL_PREVIOUS_PIPELINE_EVENTS`
|
||||
- Default: `pull_request, push`
|
||||
|
||||
List of event names that will be canceled when a new pipeline for the same context (tag, branch) is created.
|
||||
|
||||
### `WOODPECKER_DEFAULT_CLONE_PLUGIN`
|
||||
---
|
||||
|
||||
> Default is defined in [shared/constant/constant.go](https://github.com/woodpecker-ci/woodpecker/blob/main/shared/constant/constant.go)
|
||||
### DEFAULT_CLONE_PLUGIN
|
||||
|
||||
- Name: `WOODPECKER_DEFAULT_CLONE_PLUGIN`
|
||||
- Default: `docker.io/woodpeckerci/plugin-git`
|
||||
|
||||
The default docker image to be used when cloning the repo.
|
||||
|
||||
It is also added to the trusted clone plugin list.
|
||||
|
||||
### `WOODPECKER_DEFAULT_WORKFLOW_LABELS`
|
||||
### DEFAULT_WORKFLOW_LABELS
|
||||
|
||||
> By default run workflows on any agent if no label conditions are set in workflow definition.
|
||||
- Name: `WOODPECKER_DEFAULT_WORKFLOW_LABELS`
|
||||
- Default: none
|
||||
|
||||
You can specify default label/platform conditions that will be used for agent selection for workflows that does not have labels conditions set.
|
||||
|
||||
Example: `platform=linux/amd64,backend=docker`
|
||||
|
||||
### `WOODPECKER_DEFAULT_PIPELINE_TIMEOUT`
|
||||
### DEFAULT_PIPELINE_TIMEOUT
|
||||
|
||||
> 60 (minutes)
|
||||
- Name: `WOODPECKER_DEFAULT_PIPELINE_TIMEOUT`
|
||||
- Default: 60
|
||||
|
||||
The default time for a repo in minutes before a pipeline gets killed
|
||||
|
||||
### `WOODPECKER_MAX_PIPELINE_TIMEOUT`
|
||||
### MAX_PIPELINE_TIMEOUT
|
||||
|
||||
> 120 (minutes)
|
||||
- Name: `WOODPECKER_MAX_PIPELINE_TIMEOUT`
|
||||
- Default: 120
|
||||
|
||||
The maximum time in minutes you can set in the repo settings before a pipeline gets killed
|
||||
|
||||
### `WOODPECKER_SESSION_EXPIRES`
|
||||
---
|
||||
|
||||
> Default: `72h`
|
||||
### SESSION_EXPIRES
|
||||
|
||||
- Name: `WOODPECKER_SESSION_EXPIRES`
|
||||
- Default: `72h`
|
||||
|
||||
Configures the session expiration time.
|
||||
Context: when someone does log into Woodpecker, a temporary session token is created.
|
||||
As long as the session is valid (until it expires or log-out),
|
||||
a user can log into Woodpecker, without re-authentication.
|
||||
|
||||
### `WOODPECKER_PLUGINS_PRIVILEGED`
|
||||
### PLUGINS_PRIVILEGED
|
||||
|
||||
- Name: `WOODPECKER_PLUGINS_PRIVILEGED`
|
||||
- Default: none
|
||||
|
||||
Docker images to run in privileged mode. Only change if you are sure what you do!
|
||||
|
||||
You should specify the tag of your images too, as this enforces exact matches.
|
||||
|
||||
### WOODPECKER_PLUGINS_TRUSTED_CLONE
|
||||
### PLUGINS_TRUSTED_CLONE
|
||||
|
||||
> Defaults are defined in [shared/constant/constant.go](https://github.com/woodpecker-ci/woodpecker/blob/main/shared/constant/constant.go)
|
||||
- Name: `WOODPECKER_PLUGINS_TRUSTED_CLONE`
|
||||
- Default: `docker.io/woodpeckerci/plugin-git,docker.io/woodpeckerci/plugin-git,quay.io/woodpeckerci/plugin-git`
|
||||
|
||||
Plugins which are trusted to handle the Git credential info in clone steps.
|
||||
If a clone step use an image not in this list, Git credentials will not be injected and users have to use other methods (e.g. secrets) to clone non-public repos.
|
||||
|
||||
You should specify the tag of your images too, as this enforces exact matches.
|
||||
|
||||
<!--
|
||||
### `WOODPECKER_VOLUME`
|
||||
> Default: empty
|
||||
<!-- ---
|
||||
|
||||
### `VOLUME`
|
||||
|
||||
- Name: `WOODPECKER_VOLUME`
|
||||
- Default: none
|
||||
|
||||
Comma-separated list of Docker volumes that are mounted into every pipeline step.
|
||||
|
||||
Example: `WOODPECKER_VOLUME=/path/on/host:/path/in/container:rw`|
|
||||
-->
|
||||
Example: `WOODPECKER_VOLUME=/path/on/host:/path/in/container:rw`| -->
|
||||
|
||||
### `WOODPECKER_DOCKER_CONFIG`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### DOCKER_CONFIG
|
||||
|
||||
- Name: `WOODPECKER_DOCKER_CONFIG`
|
||||
- Default: none
|
||||
|
||||
Configures a specific private registry config for all pipelines.
|
||||
|
||||
Example: `WOODPECKER_DOCKER_CONFIG=/home/user/.docker/config.json`
|
||||
|
||||
<!--
|
||||
### `WOODPECKER_ENVIRONMENT`
|
||||
> Default: empty
|
||||
---
|
||||
|
||||
TODO
|
||||
### ENVIRONMENT
|
||||
|
||||
### `WOODPECKER_NETWORK`
|
||||
> Default: empty
|
||||
- Name: `WOODPECKER_ENVIRONMENT`
|
||||
- Default: none
|
||||
|
||||
If you want specific environment variables to be available in all of your pipelines use the `WOODPECKER_ENVIRONMENT` setting on the Woodpecker server. Note that these can't overwrite any existing, built-in variables.
|
||||
|
||||
Example: `WOODPECKER_ENVIRONMENT=first_var:value1,second_var:value2`
|
||||
|
||||
<!-- ---
|
||||
|
||||
### NETWORK
|
||||
|
||||
- Name: `WOODPECKER_NETWORK`
|
||||
- Default: none
|
||||
|
||||
Comma-separated list of Docker networks that are attached to every pipeline step.
|
||||
|
||||
Example: `WOODPECKER_NETWORK=network1,network2`
|
||||
-->
|
||||
Example: `WOODPECKER_NETWORK=network1,network2` -->
|
||||
|
||||
### `WOODPECKER_AGENT_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### AGENT_SECRET
|
||||
|
||||
- Name: `WOODPECKER_AGENT_SECRET`
|
||||
- Default: none
|
||||
|
||||
A shared secret used by server and agents to authenticate communication. A secret can be generated by `openssl rand -hex 32`.
|
||||
|
||||
### `WOODPECKER_AGENT_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### AGENT_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_AGENT_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_AGENT_SECRET` from the specified filepath
|
||||
|
||||
### `WOODPECKER_DISABLE_USER_AGENT_REGISTRATION`
|
||||
---
|
||||
|
||||
> Default: false
|
||||
### DISABLE_USER_AGENT_REGISTRATION
|
||||
|
||||
- Name: `WOODPECKER_DISABLE_USER_AGENT_REGISTRATION`
|
||||
- Default: false
|
||||
|
||||
By default, users can create new agents for their repos they have admin access to.
|
||||
If an instance admin doesn't want this feature enabled, they can disable the API and hide the Web UI elements.
|
||||
|
@ -843,23 +957,32 @@ You should set this option if you have, for example,
|
|||
global secrets and don't trust your users to create a rogue agent and pipeline for secret extraction.
|
||||
:::
|
||||
|
||||
### `WOODPECKER_KEEPALIVE_MIN_TIME`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### KEEPALIVE_MIN_TIME
|
||||
|
||||
- Name: `WOODPECKER_KEEPALIVE_MIN_TIME`
|
||||
- Default: none
|
||||
|
||||
Server-side enforcement policy on the minimum amount of time a client should wait before sending a keepalive ping.
|
||||
|
||||
Example: `WOODPECKER_KEEPALIVE_MIN_TIME=10s`
|
||||
|
||||
### `WOODPECKER_DATABASE_DRIVER`
|
||||
---
|
||||
|
||||
> Default: `sqlite3`
|
||||
### DATABASE_DRIVER
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_DRIVER`
|
||||
- Default: `sqlite3`
|
||||
|
||||
The database driver name. Possible values are `sqlite3`, `mysql` or `postgres`.
|
||||
|
||||
### `WOODPECKER_DATABASE_DATASOURCE`
|
||||
---
|
||||
|
||||
> Default: `woodpecker.sqlite` if not running inside a container, `/var/lib/woodpecker/woodpecker.sqlite` if running inside a container
|
||||
### DATABASE_DATASOURCE
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_DATASOURCE`
|
||||
- Default: `woodpecker.sqlite` if not running inside a container, `/var/lib/woodpecker/woodpecker.sqlite` if running inside a container
|
||||
|
||||
The database connection string. The default value is the path of the embedded SQLite database file.
|
||||
|
||||
|
@ -875,34 +998,49 @@ WOODPECKER_DATABASE_DATASOURCE=root:password@tcp(1.2.3.4:3306)/woodpecker?parseT
|
|||
WOODPECKER_DATABASE_DATASOURCE=postgres://root:password@1.2.3.4:5432/woodpecker?sslmode=disable
|
||||
```
|
||||
|
||||
### `WOODPECKER_DATABASE_DATASOURCE_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### DATABASE_DATASOURCE_FILE
|
||||
|
||||
- Name: `WOODPECKER_DATABASE_DATASOURCE_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_DATABASE_DATASOURCE` from the specified filepath
|
||||
|
||||
### `WOODPECKER_PROMETHEUS_AUTH_TOKEN`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### PROMETHEUS_AUTH_TOKEN
|
||||
|
||||
- Name: `WOODPECKER_PROMETHEUS_AUTH_TOKEN`
|
||||
- Default: none
|
||||
|
||||
Token to secure the Prometheus metrics endpoint.
|
||||
Must be set to enable the endpoint.
|
||||
|
||||
### `WOODPECKER_PROMETHEUS_AUTH_TOKEN_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### PROMETHEUS_AUTH_TOKEN_FILE
|
||||
|
||||
- Name: `WOODPECKER_PROMETHEUS_AUTH_TOKEN_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_PROMETHEUS_AUTH_TOKEN` from the specified filepath
|
||||
|
||||
### `WOODPECKER_STATUS_CONTEXT`
|
||||
---
|
||||
|
||||
> Default: `ci/woodpecker`
|
||||
### STATUS_CONTEXT
|
||||
|
||||
- Name: `WOODPECKER_STATUS_CONTEXT`
|
||||
- Default: `ci/woodpecker`
|
||||
|
||||
Context prefix Woodpecker will use to publish status messages to SCM. You probably will only need to change it if you run multiple Woodpecker instances for a single repository.
|
||||
|
||||
### `WOODPECKER_STATUS_CONTEXT_FORMAT`
|
||||
---
|
||||
|
||||
> Default: `{{ .context }}/{{ .event }}/{{ .workflow }}{{if not (eq .axis_id 0)}}/{{.axis_id}}{{end}}`
|
||||
### STATUS_CONTEXT_FORMAT
|
||||
|
||||
- Name: `WOODPECKER_STATUS_CONTEXT_FORMAT`
|
||||
- Default: `{{ .context }}/{{ .event }}/{{ .workflow }}{{if not (eq .axis_id 0)}}/{{.axis_id}}{{end}}`
|
||||
|
||||
Template for the status messages published to forges, uses [Go templates](https://pkg.go.dev/text/template) as template language.
|
||||
Supported variables:
|
||||
|
@ -915,66 +1053,89 @@ Supported variables:
|
|||
|
||||
---
|
||||
|
||||
### `WOODPECKER_CONFIG_SERVICE_ENDPOINT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### CONFIG_SERVICE_ENDPOINT
|
||||
|
||||
- Name: `WOODPECKER_CONFIG_SERVICE_ENDPOINT`
|
||||
- Default: none
|
||||
|
||||
Specify a configuration service endpoint, see [Configuration Extension](#external-configuration-api)
|
||||
|
||||
### `WOODPECKER_FORGE_TIMEOUT`
|
||||
---
|
||||
|
||||
> Default: 5s
|
||||
### FORGE_TIMEOUT
|
||||
|
||||
- Name: `WOODPECKER_FORGE_TIMEOUT`
|
||||
- Default: 5s
|
||||
|
||||
Specify timeout when fetching the Woodpecker configuration from forge. See <https://pkg.go.dev/time#ParseDuration> for syntax reference.
|
||||
|
||||
### `WOODPECKER_FORGE_RETRY`
|
||||
---
|
||||
|
||||
> Default: 3
|
||||
### FORGE_RETRY
|
||||
|
||||
- Name: `WOODPECKER_FORGE_RETRY`
|
||||
- Default: 3
|
||||
|
||||
Specify how many retries of fetching the Woodpecker configuration from a forge are done before we fail.
|
||||
|
||||
### `WOODPECKER_ENABLE_SWAGGER`
|
||||
---
|
||||
|
||||
> Default: true
|
||||
### ENABLE_SWAGGER
|
||||
|
||||
- Name: `WOODPECKER_ENABLE_SWAGGER`
|
||||
- Default: true
|
||||
|
||||
Enable the Swagger UI for API documentation.
|
||||
|
||||
### `WOODPECKER_DISABLE_VERSION_CHECK`
|
||||
---
|
||||
|
||||
> Default: false
|
||||
### DISABLE_VERSION_CHECK
|
||||
|
||||
- Name: `WOODPECKER_DISABLE_VERSION_CHECK`
|
||||
- Default: false
|
||||
|
||||
Disable version check in admin web UI.
|
||||
|
||||
### `WOODPECKER_LOG_STORE`
|
||||
---
|
||||
|
||||
> Default: `database`
|
||||
### LOG_STORE
|
||||
|
||||
- Name: `WOODPECKER_LOG_STORE`
|
||||
- Default: `database`
|
||||
|
||||
Where to store logs. Possible values: `database` or `file`.
|
||||
|
||||
### `WOODPECKER_LOG_STORE_FILE_PATH`
|
||||
---
|
||||
|
||||
> Default empty
|
||||
### LOG_STORE_FILE_PATH
|
||||
|
||||
Directory to store logs in if [`WOODPECKER_LOG_STORE`](#woodpecker_log_store) is `file`.
|
||||
- Name: `WOODPECKER_LOG_STORE_FILE_PATH`
|
||||
- Default: none
|
||||
|
||||
Directory to store logs in if [`WOODPECKER_LOG_STORE`](#log_store) is `file`.
|
||||
|
||||
---
|
||||
|
||||
### `WOODPECKER_GITHUB_...`
|
||||
### GITHUB\_\*
|
||||
|
||||
See [GitHub configuration](./12-forges/20-github.md#configuration)
|
||||
|
||||
### `WOODPECKER_GITEA_...`
|
||||
---
|
||||
|
||||
### GITEA\_\*
|
||||
|
||||
See [Gitea configuration](./12-forges/30-gitea.md#configuration)
|
||||
|
||||
### `WOODPECKER_BITBUCKET_...`
|
||||
---
|
||||
|
||||
### BITBUCKET\_\*
|
||||
|
||||
See [Bitbucket configuration](./12-forges/50-bitbucket.md#configuration)
|
||||
|
||||
### `WOODPECKER_GITLAB_...`
|
||||
---
|
||||
|
||||
### GITLAB\_\*
|
||||
|
||||
See [GitLab configuration](./12-forges/40-gitlab.md#configuration)
|
||||
|
||||
### `WOODPECKER_ADDON_FORGE`
|
||||
|
||||
See [addon forges](./12-forges/100-addon.md).
|
||||
|
|
|
@ -8,7 +8,7 @@ This is the original backend used with Woodpecker. The docker backend executes e
|
|||
|
||||
## Private registries
|
||||
|
||||
Woodpecker supports [Docker credentials](https://github.com/docker/docker-credential-helpers) to securely store registry credentials. Install your corresponding credential helper and configure it in your Docker config file passed via [`WOODPECKER_DOCKER_CONFIG`](../10-server.md#woodpecker_docker_config).
|
||||
Woodpecker supports [Docker credentials](https://github.com/docker/docker-credential-helpers) to securely store registry credentials. Install your corresponding credential helper and configure it in your Docker config file passed via [`WOODPECKER_DOCKER_CONFIG`](../10-server.md#docker_config).
|
||||
|
||||
To add your credential helper to the Woodpecker server container you could use the following code to build a custom image:
|
||||
|
||||
|
@ -67,58 +67,83 @@ There is no official support for Podman, but one can try to set the environment
|
|||
|
||||
## Environment variables
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_NETWORK`
|
||||
### BACKEND_DOCKER_NETWORK
|
||||
|
||||
> Default: empty
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_NETWORK`
|
||||
- Default: none
|
||||
|
||||
Set to the name of an existing network which will be attached to all your pipeline containers (steps). Please be careful as this allows the containers of different pipelines to access each other!
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_ENABLE_IPV6`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BACKEND_DOCKER_ENABLE_IPV6
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_ENABLE_IPV6`
|
||||
- Default: `false`
|
||||
|
||||
Enable IPv6 for the networks used by pipeline containers (steps). Make sure you configured your docker daemon to support IPv6.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_VOLUMES`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_DOCKER_VOLUMES
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_VOLUMES`
|
||||
- Default: none
|
||||
|
||||
List of default volumes separated by comma to be mounted to all pipeline containers (steps). For example to use custom CA
|
||||
certificates installed on host and host timezone use `/etc/ssl/certs:/etc/ssl/certs:ro,/etc/timezone:/etc/timezone`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_MEM_SWAP`
|
||||
---
|
||||
|
||||
> Default: `0`
|
||||
### BACKEND_DOCKER_LIMIT_MEM_SWAP
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_MEM_SWAP`
|
||||
- Default: `0`
|
||||
|
||||
The maximum amount of memory a single pipeline container is allowed to swap to disk, configured in bytes. There is no limit if `0`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_MEM`
|
||||
---
|
||||
|
||||
> Default: `0`
|
||||
### BACKEND_DOCKER_LIMIT_MEM
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_MEM`
|
||||
- Default: `0`
|
||||
|
||||
The maximum amount of memory a single pipeline container can use, configured in bytes. There is no limit if `0`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_SHM_SIZE`
|
||||
---
|
||||
|
||||
> Default: `0`
|
||||
### BACKEND_DOCKER_LIMIT_SHM_SIZE
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_SHM_SIZE`
|
||||
- Default: `0`
|
||||
|
||||
The maximum amount of memory of `/dev/shm` allowed in bytes. There is no limit if `0`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_QUOTA`
|
||||
---
|
||||
|
||||
> Default: `0`
|
||||
### BACKEND_DOCKER_LIMIT_CPU_QUOTA
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_QUOTA`
|
||||
- Default: `0`
|
||||
|
||||
The number of microseconds per CPU period that the container is limited to before throttled. There is no limit if `0`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_SHARES`
|
||||
---
|
||||
|
||||
> Default: `0`
|
||||
### BACKEND_DOCKER_LIMIT_CPU_SHARES
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_SHARES`
|
||||
- Default: `0`
|
||||
|
||||
The relative weight vs. other containers.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_SET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_DOCKER_LIMIT_CPU_SET
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_DOCKER_LIMIT_CPU_SET`
|
||||
- Default: none
|
||||
|
||||
Comma-separated list to limit the specific CPUs or cores a pipeline container can use.
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ And then overwrite the `nodeSelector` in the `backend_options` section of the st
|
|||
kubernetes.io/arch: "${ARCH}"
|
||||
```
|
||||
|
||||
You can use [WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR](#woodpecker_backend_k8s_pod_node_selector) if you want to set the node selector per Agent
|
||||
You can use [WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR](#backend_k8s_pod_node_selector) if you want to set the node selector per Agent
|
||||
or [PodNodeSelector](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#podnodeselector) admission controller if you want to set the node selector by per-namespace basis.
|
||||
|
||||
### Tolerations
|
||||
|
@ -256,7 +256,7 @@ backend_options:
|
|||
```
|
||||
|
||||
In order to enable this configuration you need to set the appropriate environment variables to `true` on the woodpecker agent:
|
||||
[WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS_ALLOW_FROM_STEP](#woodpecker_backend_k8s_pod_annotations_allow_from_step) and/or [WOODPECKER_BACKEND_K8S_POD_LABELS_ALLOW_FROM_STEP](#woodpecker_backend_k8s_pod_labels_allow_from_step).
|
||||
[WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS_ALLOW_FROM_STEP](#backend_k8s_pod_annotations_allow_from_step) and/or [WOODPECKER_BACKEND_K8S_POD_LABELS_ALLOW_FROM_STEP](#backend_k8s_pod_labels_allow_from_step).
|
||||
|
||||
## Tips and tricks
|
||||
|
||||
|
@ -283,68 +283,101 @@ If running the agent within Kubernetes, this will already be set and you don't h
|
|||
|
||||
These env vars can be set in the `env:` sections of the agent.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_NAMESPACE`
|
||||
---
|
||||
|
||||
> Default: `woodpecker`
|
||||
### BACKEND_K8S_NAMESPACE
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_NAMESPACE`
|
||||
- Default: `woodpecker`
|
||||
|
||||
The namespace to create worker Pods in.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_VOLUME_SIZE`
|
||||
---
|
||||
|
||||
> Default: `10G`
|
||||
### BACKEND_K8S_VOLUME_SIZE
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_VOLUME_SIZE`
|
||||
- Default: `10G`
|
||||
|
||||
The volume size of the pipeline volume.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_STORAGE_CLASS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_K8S_STORAGE_CLASS
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_STORAGE_CLASS`
|
||||
- Default: none
|
||||
|
||||
The storage class to use for the pipeline volume.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_STORAGE_RWX`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### BACKEND_K8S_STORAGE_RWX
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_STORAGE_RWX`
|
||||
- Default: `true`
|
||||
|
||||
Determines if `RWX` should be used for the pipeline volume's [access mode](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes). If false, `RWO` is used instead.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_POD_LABELS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_K8S_POD_LABELS
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_POD_LABELS`
|
||||
- Default: none
|
||||
|
||||
Additional labels to apply to worker Pods. Must be a YAML object, e.g. `{"example.com/test-label":"test-value"}`.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_POD_LABELS_ALLOW_FROM_STEP`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BACKEND_K8S_POD_LABELS_ALLOW_FROM_STEP
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_POD_LABELS_ALLOW_FROM_STEP`
|
||||
- Default: `false`
|
||||
|
||||
Determines if additional Pod labels can be defined from a step's backend options.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_K8S_POD_ANNOTATIONS
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS`
|
||||
- Default: none
|
||||
|
||||
Additional annotations to apply to worker Pods. Must be a YAML object, e.g. `{"example.com/test-annotation":"test-value"}`.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS_ALLOW_FROM_STEP`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BACKEND_K8S_POD_ANNOTATIONS_ALLOW_FROM_STEP
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_POD_ANNOTATIONS_ALLOW_FROM_STEP`
|
||||
- Default: `false`
|
||||
|
||||
Determines if Pod annotations can be defined from a step's backend options.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_K8S_POD_NODE_SELECTOR
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_POD_NODE_SELECTOR`
|
||||
- Default: none
|
||||
|
||||
Additional node selector to apply to worker pods. Must be a YAML object, e.g. `{"topology.kubernetes.io/region":"eu-central-1"}`.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_SECCTX_NONROOT` <!-- cspell:ignore SECCTX NONROOT -->
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BACKEND_K8S_SECCTX_NONROOT <!-- cspell:ignore SECCTX NONROOT -->
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_SECCTX_NONROOT`
|
||||
- Default: `false`
|
||||
|
||||
Determines if containers must be required to run as non-root users.
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_PULL_SECRET_NAMES`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BACKEND_K8S_PULL_SECRET_NAMES
|
||||
|
||||
- Name: `WOODPECKER_BACKEND_K8S_PULL_SECRET_NAMES`
|
||||
- Default: none
|
||||
|
||||
Secret names to pull images from private repositories. See, how to [Pull an Image from a Private Registry](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/).
|
||||
|
|
|
@ -54,8 +54,9 @@ In the context of the local backend, plugins are simply executable binaries, whi
|
|||
|
||||
## Environment variables
|
||||
|
||||
### `WOODPECKER_BACKEND_LOCAL_TEMP_DIR`
|
||||
### BACKEND_LOCAL_TEMP_DIR
|
||||
|
||||
> Default: default temp directory
|
||||
- Name: `WOODPECKER_BACKEND_LOCAL_TEMP_DIR`
|
||||
- Default: default temp directory
|
||||
|
||||
Directory to create folders for workflows.
|
||||
|
|
|
@ -36,54 +36,81 @@ Use this one for the `WOODPECKER_GITHUB_SECRET` environment variable.
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_GITHUB`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITHUB
|
||||
|
||||
- Name: `WOODPECKER_GITHUB`
|
||||
- Default: `false`
|
||||
|
||||
Enables the GitHub driver.
|
||||
|
||||
### `WOODPECKER_GITHUB_URL`
|
||||
---
|
||||
|
||||
> Default: `https://github.com`
|
||||
### GITHUB_URL
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_URL`
|
||||
- Default: `https://github.com`
|
||||
|
||||
Configures the GitHub server address.
|
||||
|
||||
### `WOODPECKER_GITHUB_CLIENT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITHUB_CLIENT
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_CLIENT`
|
||||
- Default: none
|
||||
|
||||
Configures the GitHub OAuth client id to authorize access.
|
||||
|
||||
### `WOODPECKER_GITHUB_CLIENT_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITHUB_CLIENT_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_CLIENT_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITHUB_CLIENT` from the specified filepath.
|
||||
|
||||
### `WOODPECKER_GITHUB_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITHUB_SECRET
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures the GitHub OAuth client secret. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_GITHUB_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITHUB_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITHUB_SECRET` from the specified filepath.
|
||||
|
||||
### `WOODPECKER_GITHUB_MERGE_REF`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### GITHUB_MERGE_REF
|
||||
|
||||
### `WOODPECKER_GITHUB_SKIP_VERIFY`
|
||||
- Name: `WOODPECKER_GITHUB_MERGE_REF`
|
||||
- Default: `true`
|
||||
|
||||
> Default: `false`
|
||||
---
|
||||
|
||||
### GITHUB_SKIP_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_SKIP_VERIFY`
|
||||
- Default: `false`
|
||||
|
||||
Configure if SSL verification should be skipped.
|
||||
|
||||
### `WOODPECKER_GITHUB_PUBLIC_ONLY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITHUB_PUBLIC_ONLY
|
||||
|
||||
- Name: `WOODPECKER_GITHUB_PUBLIC_ONLY`
|
||||
- Default: `false`
|
||||
|
||||
Configures the GitHub OAuth client to only obtain a token that can manage public repositories.
|
||||
|
|
|
@ -54,44 +54,65 @@ Make sure your Gitea configuration allows requesting the API with a fixed page l
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_GITEA`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITEA
|
||||
|
||||
- Name: `WOODPECKER_GITEA`
|
||||
- Default: `false`
|
||||
|
||||
Enables the Gitea driver.
|
||||
|
||||
### `WOODPECKER_GITEA_URL`
|
||||
---
|
||||
|
||||
> Default: `https://try.gitea.io`
|
||||
### GITEA_URL
|
||||
|
||||
- Name: `WOODPECKER_GITEA_URL`
|
||||
- Default: `https://try.gitea.io`
|
||||
|
||||
Configures the Gitea server address.
|
||||
|
||||
### `WOODPECKER_GITEA_CLIENT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITEA_CLIENT
|
||||
|
||||
- Name: `WOODPECKER_GITEA_CLIENT`
|
||||
- Default: none
|
||||
|
||||
Configures the Gitea OAuth client id. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_GITEA_CLIENT_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITEA_CLIENT_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITEA_CLIENT_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITEA_CLIENT` from the specified filepath
|
||||
|
||||
### `WOODPECKER_GITEA_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITEA_SECRET
|
||||
|
||||
- Name: `WOODPECKER_GITEA_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures the Gitea OAuth client secret. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_GITEA_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITEA_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITEA_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITEA_SECRET` from the specified filepath
|
||||
|
||||
### `WOODPECKER_GITEA_SKIP_VERIFY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITEA_SKIP_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_GITEA_SKIP_VERIFY`
|
||||
- Default: `false`
|
||||
|
||||
Configure if SSL verification should be skipped.
|
||||
|
|
|
@ -54,44 +54,65 @@ Make sure your Forgejo configuration allows requesting the API with a fixed page
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_FORGEJO`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### FORGEJO
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO`
|
||||
- Default: `false`
|
||||
|
||||
Enables the Forgejo driver.
|
||||
|
||||
### `WOODPECKER_FORGEJO_URL`
|
||||
---
|
||||
|
||||
> Default: `https://next.forgejo.org`
|
||||
### FORGEJO_URL
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_URL`
|
||||
- Default: `https://next.forgejo.org`
|
||||
|
||||
Configures the Forgejo server address.
|
||||
|
||||
### `WOODPECKER_FORGEJO_CLIENT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### FORGEJO_CLIENT
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_CLIENT`
|
||||
- Default: none
|
||||
|
||||
Configures the Forgejo OAuth client id. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_FORGEJO_CLIENT_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### FORGEJO_CLIENT_FILE
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_CLIENT_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_FORGEJO_CLIENT` from the specified filepath
|
||||
|
||||
### `WOODPECKER_FORGEJO_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### FORGEJO_SECRET
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures the Forgejo OAuth client secret. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_FORGEJO_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### FORGEJO_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_FORGEJO_SECRET` from the specified filepath
|
||||
|
||||
### `WOODPECKER_FORGEJO_SKIP_VERIFY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### FORGEJO_SKIP_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_FORGEJO_SKIP_VERIFY`
|
||||
- Default: `false`
|
||||
|
||||
Configure if SSL verification should be skipped.
|
||||
|
|
|
@ -25,44 +25,65 @@ If you run the Woodpecker CI server on a private IP (RFC1918) or use a non stand
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_GITLAB`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITLAB
|
||||
|
||||
- Name: `WOODPECKER_GITLAB`
|
||||
- Default: `false`
|
||||
|
||||
Enables the GitLab driver.
|
||||
|
||||
### `WOODPECKER_GITLAB_URL`
|
||||
---
|
||||
|
||||
> Default: `https://gitlab.com`
|
||||
### GITLAB_URL
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_URL`
|
||||
- Default: `https://gitlab.com`
|
||||
|
||||
Configures the GitLab server address.
|
||||
|
||||
### `WOODPECKER_GITLAB_CLIENT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITLAB_CLIENT
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_CLIENT`
|
||||
- Default: none
|
||||
|
||||
Configures the GitLab OAuth client id. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_GITLAB_CLIENT_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITLAB_CLIENT_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_CLIENT_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITLAB_CLIENT` from the specified filepath
|
||||
|
||||
### `WOODPECKER_GITLAB_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITLAB_SECRET
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures the GitLab OAuth client secret. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_GITLAB_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### GITLAB_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_GITLAB_SECRET` from the specified filepath
|
||||
|
||||
### `WOODPECKER_GITLAB_SKIP_VERIFY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GITLAB_SKIP_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_GITLAB_SKIP_VERIFY`
|
||||
- Default: `false`
|
||||
|
||||
Configure if SSL verification should be skipped.
|
||||
|
|
|
@ -39,33 +39,48 @@ Please also be sure to check the following permissions:
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_BITBUCKET`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BITBUCKET
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET`
|
||||
- Default: `false`
|
||||
|
||||
Enables the Bitbucket driver.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_CLIENT`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_CLIENT
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_CLIENT`
|
||||
- Default: none
|
||||
|
||||
Configures the Bitbucket OAuth client key. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_CLIENT_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_CLIENT_FILE
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_CLIENT_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_BITBUCKET_CLIENT` from the specified filepath
|
||||
|
||||
### `WOODPECKER_BITBUCKET_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_SECRET
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures the Bitbucket OAuth client secret. This is used to authorize access.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_BITBUCKET_SECRET` from the specified filepath
|
||||
|
||||
|
|
|
@ -44,56 +44,83 @@ See also [Configure an incoming link](https://confluence.atlassian.com/bitbucket
|
|||
|
||||
This is a full list of configuration options. Please note that many of these options use default configuration values that should work for the majority of installations.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BITBUCKET_DC
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC`
|
||||
- Default: `false`
|
||||
|
||||
Enables the Bitbucket Server driver.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_URL`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_URL
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_URL`
|
||||
- Default: none
|
||||
|
||||
Configures the Bitbucket Server address.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_CLIENT_ID`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_CLIENT_ID
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_CLIENT_ID`
|
||||
- Default: none
|
||||
|
||||
Configures your Bitbucket Server OAUth 2.0 client id.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_CLIENT_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_CLIENT_SECRET
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_CLIENT_SECRET`
|
||||
- Default: none
|
||||
|
||||
Configures your Bitbucket Server OAUth 2.0 client secret.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_GIT_USERNAME`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_GIT_USERNAME
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_GIT_USERNAME`
|
||||
- Default: none
|
||||
|
||||
This username is used to authenticate and clone all private repositories.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_GIT_USERNAME_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_GIT_USERNAME_FILE
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_GIT_USERNAME_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_BITBUCKET_DC_GIT_USERNAME` from the specified filepath
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_GIT_PASSWORD`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_GIT_PASSWORD
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_GIT_PASSWORD`
|
||||
- Default: none
|
||||
|
||||
The password is used to authenticate and clone all private repositories.
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_GIT_PASSWORD_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### BITBUCKET_DC_GIT_PASSWORD_FILE
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_GIT_PASSWORD_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_BITBUCKET_DC_GIT_PASSWORD` from the specified filepath
|
||||
|
||||
### `WOODPECKER_BITBUCKET_DC_SKIP_VERIFY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### BITBUCKET_DC_SKIP_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_BITBUCKET_DC_SKIP_VERIFY`
|
||||
- Default: `false`
|
||||
|
||||
Configure if SSL verification should be skipped.
|
||||
|
|
|
@ -58,126 +58,182 @@ To get an _agent token_ you have to register the agent manually in the server us
|
|||
|
||||
## Environment variables
|
||||
|
||||
### `WOODPECKER_SERVER`
|
||||
### SERVER
|
||||
|
||||
> Default: `localhost:9000`
|
||||
- Name: `WOODPECKER_SERVER`
|
||||
- Default: `localhost:9000`
|
||||
|
||||
Configures gRPC address of the server.
|
||||
|
||||
### `WOODPECKER_USERNAME`
|
||||
---
|
||||
|
||||
> Default: `x-oauth-basic`
|
||||
### USERNAME
|
||||
|
||||
- Name: `WOODPECKER_USERNAME`
|
||||
- Default: `x-oauth-basic`
|
||||
|
||||
The gRPC username.
|
||||
|
||||
### `WOODPECKER_AGENT_SECRET`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### AGENT_SECRET
|
||||
|
||||
- Name: `WOODPECKER_AGENT_SECRET`
|
||||
- Default: none
|
||||
|
||||
A shared secret used by server and agents to authenticate communication. A secret can be generated by `openssl rand -hex 32`.
|
||||
|
||||
### `WOODPECKER_AGENT_SECRET_FILE`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### AGENT_SECRET_FILE
|
||||
|
||||
- Name: `WOODPECKER_AGENT_SECRET_FILE`
|
||||
- Default: none
|
||||
|
||||
Read the value for `WOODPECKER_AGENT_SECRET` from the specified filepath, e.g. `/etc/woodpecker/agent-secret.conf`
|
||||
|
||||
### `WOODPECKER_LOG_LEVEL`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### LOG_LEVEL
|
||||
|
||||
- Name: `WOODPECKER_LOG_LEVEL`
|
||||
- Default: `info`
|
||||
|
||||
Configures the logging level. Possible values are `trace`, `debug`, `info`, `warn`, `error`, `fatal`, `panic`, `disabled` and empty.
|
||||
|
||||
### `WOODPECKER_DEBUG_PRETTY`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### DEBUG_PRETTY
|
||||
|
||||
- Name: `WOODPECKER_DEBUG_PRETTY`
|
||||
- Default: `false`
|
||||
|
||||
Enable pretty-printed debug output.
|
||||
|
||||
### `WOODPECKER_DEBUG_NOCOLOR`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### DEBUG_NOCOLOR
|
||||
|
||||
- Name: `WOODPECKER_DEBUG_NOCOLOR`
|
||||
- Default: `true`
|
||||
|
||||
Disable colored debug output.
|
||||
|
||||
### `WOODPECKER_HOSTNAME`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### HOSTNAME
|
||||
|
||||
- Name: `WOODPECKER_HOSTNAME`
|
||||
- Default: none
|
||||
|
||||
Configures the agent hostname.
|
||||
|
||||
### `WOODPECKER_AGENT_CONFIG_FILE`
|
||||
---
|
||||
|
||||
> Default: `/etc/woodpecker/agent.conf`
|
||||
### AGENT_CONFIG_FILE
|
||||
|
||||
- Name: `WOODPECKER_AGENT_CONFIG_FILE`
|
||||
- Default: `/etc/woodpecker/agent.conf`
|
||||
|
||||
Configures the path of the agent config file.
|
||||
|
||||
### `WOODPECKER_MAX_WORKFLOWS`
|
||||
---
|
||||
|
||||
> Default: `1`
|
||||
### MAX_WORKFLOWS
|
||||
|
||||
- Name: `WOODPECKER_MAX_WORKFLOWS`
|
||||
- Default: `1`
|
||||
|
||||
Configures the number of parallel workflows.
|
||||
|
||||
### `WOODPECKER_AGENT_LABELS`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### AGENT_LABELS
|
||||
|
||||
- Name: `WOODPECKER_AGENT_LABELS`
|
||||
- Default: none
|
||||
|
||||
Configures custom labels for the agent, to let workflows filter by it.
|
||||
Use a list of key-value pairs like `key=value,second-key=*`. `*` can be used as a wildcard.
|
||||
By default, agents provide three additional labels `platform=os/arch`, `hostname=my-agent` and `repo=*` which can be overwritten if needed.
|
||||
To learn how labels work, check out the [pipeline syntax page](../../20-usage/20-workflow-syntax.md#labels).
|
||||
|
||||
### `WOODPECKER_HEALTHCHECK`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### HEALTHCHECK
|
||||
|
||||
- Name: `WOODPECKER_HEALTHCHECK`
|
||||
- Default: `true`
|
||||
|
||||
Enable healthcheck endpoint.
|
||||
|
||||
### `WOODPECKER_HEALTHCHECK_ADDR`
|
||||
---
|
||||
|
||||
> Default: `:3000`
|
||||
### HEALTHCHECK_ADDR
|
||||
|
||||
- Name: `WOODPECKER_HEALTHCHECK_ADDR`
|
||||
- Default: `:3000`
|
||||
|
||||
Configures healthcheck endpoint address.
|
||||
|
||||
### `WOODPECKER_KEEPALIVE_TIME`
|
||||
---
|
||||
|
||||
> Default: empty
|
||||
### KEEPALIVE_TIME
|
||||
|
||||
- Name: `WOODPECKER_KEEPALIVE_TIME`
|
||||
- Default: none
|
||||
|
||||
After a duration of this time of no activity, the agent pings the server to check if the transport is still alive.
|
||||
|
||||
### `WOODPECKER_KEEPALIVE_TIMEOUT`
|
||||
---
|
||||
|
||||
> Default: `20s`
|
||||
### KEEPALIVE_TIMEOUT
|
||||
|
||||
- Name: `WOODPECKER_KEEPALIVE_TIMEOUT`
|
||||
- Default: `20s`
|
||||
|
||||
After pinging for a keepalive check, the agent waits for a duration of this time before closing the connection if no activity.
|
||||
|
||||
### `WOODPECKER_GRPC_SECURE`
|
||||
---
|
||||
|
||||
> Default: `false`
|
||||
### GRPC_SECURE
|
||||
|
||||
- Name: `WOODPECKER_GRPC_SECURE`
|
||||
- Default: `false`
|
||||
|
||||
Configures if the connection to `WOODPECKER_SERVER` should be made using a secure transport.
|
||||
|
||||
### `WOODPECKER_GRPC_VERIFY`
|
||||
---
|
||||
|
||||
> Default: `true`
|
||||
### GRPC_VERIFY
|
||||
|
||||
- Name: `WOODPECKER_GRPC_VERIFY`
|
||||
- Default: `true`
|
||||
|
||||
Configures if the gRPC server certificate should be verified, only valid when `WOODPECKER_GRPC_SECURE` is `true`.
|
||||
|
||||
### `WOODPECKER_BACKEND`
|
||||
---
|
||||
|
||||
> Default: `auto-detect`
|
||||
### BACKEND
|
||||
|
||||
- Name: `WOODPECKER_BACKEND`
|
||||
- Default: `auto-detect`
|
||||
|
||||
Configures the backend engine to run pipelines on. Possible values are `auto-detect`, `docker`, `local` or `kubernetes`.
|
||||
|
||||
### `WOODPECKER_BACKEND_DOCKER_*`
|
||||
### BACKEND_DOCKER\_\*
|
||||
|
||||
See [Docker backend configuration](./11-backends/10-docker.md#environment-variables)
|
||||
|
||||
### `WOODPECKER_BACKEND_K8S_*`
|
||||
---
|
||||
|
||||
### BACKEND_K8S\_\*
|
||||
|
||||
See [Kubernetes backend configuration](./11-backends/20-kubernetes.md#environment-variables)
|
||||
|
||||
### `WOODPECKER_BACKEND_LOCAL_*`
|
||||
---
|
||||
|
||||
### BACKEND_LOCAL\_\*
|
||||
|
||||
See [Local backend configuration](./11-backends/30-local.md#environment-variables)
|
||||
|
||||
|
@ -187,14 +243,16 @@ See [Local backend configuration](./11-backends/30-local.md#environment-variable
|
|||
Only change these If you know what you do.
|
||||
:::
|
||||
|
||||
#### `WOODPECKER_CONNECT_RETRY_COUNT`
|
||||
#### CONNECT_RETRY_COUNT
|
||||
|
||||
> Default: `5`
|
||||
- Name: `WOODPECKER_CONNECT_RETRY_COUNT`
|
||||
- Default: `5`
|
||||
|
||||
Configures number of times agent retries to connect to the server.
|
||||
|
||||
#### `WOODPECKER_CONNECT_RETRY_DELAY`
|
||||
#### CONNECT_RETRY_DELAY
|
||||
|
||||
> Default: `2s`
|
||||
- Name: `WOODPECKER_CONNECT_RETRY_DELAY`
|
||||
- Default: `2s`
|
||||
|
||||
Configures delay between agent connection retries to the server.
|
||||
|
|
Loading…
Reference in a new issue