diff --git a/.forgejo/workflows/example-docker-compose.yml b/.forgejo/workflows/example-docker-compose.yml index b0fd7c8..1b9c2e0 100644 --- a/.forgejo/workflows/example-docker-compose.yml +++ b/.forgejo/workflows/example-docker-compose.yml @@ -42,11 +42,13 @@ jobs: # $cli ps --help success='DEMO WORKFLOW SUCCESS' + failure='DEMO WORKFLOW FAILURE' for delay in $(seq 60) ; do $cli logs -n 10 demo-workflow > /tmp/out grep --quiet "$success" /tmp/out && break + grep --quiet "$failure" /tmp/out && break $cli ps --all - cat /tmp/out + tail /tmp/out sleep 10 done if ! grep --quiet "$success" /tmp/out ; then diff --git a/examples/docker-compose/compose-demo-workflow.yml b/examples/docker-compose/compose-demo-workflow.yml index 1ce2fee..0e44c59 100644 --- a/examples/docker-compose/compose-demo-workflow.yml +++ b/examples/docker-compose/compose-demo-workflow.yml @@ -13,13 +13,13 @@ services: runner-register: condition: service_completed_successfully command: >- - sh -xc ' + sh -ec ' apk add --quiet git curl jq ; mkdir -p /srv/demo ; cd /srv/demo ; git init --initial-branch=main ; mkdir -p .forgejo/workflows ; - echo "{ on: [push], jobs: { test: { runs-on: docker, steps: [ { run: echo All Good } ] } } }" > .forgejo/workflows/demo.yml ; + echo "{ on: [push], jobs: { test: { runs-on: docker, steps: [ {uses: actions/checkout@v4}, { run: echo All Good } ] } } }" > .forgejo/workflows/demo.yml ; git add . ; git config user.email root@example.com ; git config user.name username ; @@ -29,10 +29,10 @@ services: sleep 5 ; done ; sha=`git rev-parse HEAD` ; - while : ; do + for delay in 1 1 1 1 2 5 5 10 10 10 15 ; do curl -sS -f http://forgejo:3000/api/v1/repos/root/test/commits/$$sha/status | jq --raw-output .state | tee status ; - grep success status && break ; - sleep 5 ; - done ; - echo DEMO WORKFLOW SUCCESS + if grep success status ; then echo DEMO WORKFLOW SUCCESS && break ; fi ; + if grep failure status ; then echo DEMO WORKFLOW FAILURE && break ; fi ; + sleep $$delay ; + done ' diff --git a/examples/docker-compose/compose-forgejo-and-runner.yml b/examples/docker-compose/compose-forgejo-and-runner.yml index 18e8111..9ec1a89 100644 --- a/examples/docker-compose/compose-forgejo-and-runner.yml +++ b/examples/docker-compose/compose-forgejo-and-runner.yml @@ -46,7 +46,7 @@ services: - 8080:3000 runner-register: - image: code.forgejo.org/forgejo/runner:3.0.0 + image: code.forgejo.org/forgejo/runner:3.0.1 links: - docker-in-docker - forgejo @@ -56,18 +56,19 @@ services: - /srv/runner-data:/data user: 0:0 command: >- - bash -c ' + bash -ec ' while : ; do forgejo-runner create-runner-file --instance http://forgejo:3000 --name runner --secret {SHARED_SECRET} && break ; sleep 1 ; done ; forgejo-runner generate-config > config.yml ; + sed -i -e "s|network: .*|network: host|" config.yml ; sed -i -e "s|labels: \[\]|labels: \[\"docker:docker://alpine:3.18\"\]|" config.yml ; chown -R 1000:1000 /data ' runner-daemon: - image: code.forgejo.org/forgejo/runner:3.0.0 + image: code.forgejo.org/forgejo/runner:3.0.1 links: - docker-in-docker - forgejo