actions: verify runner config options for the container

- is not restricted to --volume (can use --env, etc.)
- --volume is sanitized with valid_volumes
This commit is contained in:
Earl Warren 2025-01-11 09:02:39 +01:00
parent d9edb00c72
commit f6f0acae0e
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
5 changed files with 47 additions and 1 deletions

View file

@ -146,7 +146,7 @@ function test_actions() {
done done
fi fi
for example in cache checkout service container expression local-action docker-action if if-fail push tag push-cancel artifacts pull-request context; do for example in config-options cache checkout service container expression local-action docker-action if if-fail push tag push-cancel artifacts pull-request context; do
run actions_verify_example $example run actions_verify_example $example
done done

View file

@ -0,0 +1,12 @@
on: [push]
jobs:
test:
runs-on: docker
steps:
- run: |
test -f /srv/example-config-options-volume-valid
- run: |
! test -f /srv/example-config-options-volume-invalid
- run: |
test "$FROB" = "NITZ"

View file

@ -0,0 +1,30 @@
log:
level: debug
runner:
file: .runner
capacity: 1
env_file: .env
timeout: 3h
insecure: false
fetch_timeout: 5s
fetch_interval: 2s
labels: ["docker:docker://code.forgejo.org/oci/node:20-bookworm"]
cache:
enabled: false
dir: ""
host: ""
port: 0
container:
network: ""
privileged: false
options: "--volume /srv/example-config-options-volume-valid:/srv/example-config-options-volume-valid --volume /srv/example-config-options-volume-invalid:/srv/example-config-options-volume-invalid --env FROB=NITZ"
workdir_parent:
valid_volumes: ["/srv/example-config-options-volume-valid"]
docker_host: ""
host:
workdir_parent:

View file

@ -0,0 +1,3 @@
>/srv/example-config-options-volume-valid
>/srv/example-config-options-volume-invalid
FORGEJO_RUNNER_CONFIG=$EXAMPLE_DIR/runner-config.yaml forgejo-runner.sh reload

View file

@ -0,0 +1 @@
forgejo-runner.sh reload