diff --git a/.forgejo/workflows/integration.yml b/.forgejo/workflows/integration.yml index a7eb22c..9d7ad78 100644 --- a/.forgejo/workflows/integration.yml +++ b/.forgejo/workflows/integration.yml @@ -8,7 +8,7 @@ jobs: info: - version: "1.21.0-1-rc0" image: codeberg.org/forgejo-experimental/forgejo - tests: "echo cron pull-request service container expression local-action docker-action if if-fail" + tests: "echo cron artifacts pull-request service container expression local-action docker-action if if-fail" - version: "1.20" image: codeberg.org/forgejo/forgejo tests: "echo service container expression local-action docker-action if if-fail" diff --git a/README.md b/README.md index 81cd769..2da9cb1 100644 --- a/README.md +++ b/README.md @@ -102,6 +102,7 @@ because the tests run as root, but they do not need to run as root. * `export example=pull-request` * `export EXAMPLE_DIR=$(pwd)/testdata/example-$example` * `$EXAMPLE_DIR/setup.sh` # if it exists -* `$EXAMPLE_DIR/run.sh` +* `$EXAMPLE_DIR/run.sh` or +* `forgejo-test-helper.sh run_workflow testdata/example-$example http://root:admin1234@$(cat forgejo-ip):3000 root example-$example setup-forgejo $(cat forgejo-token)` * `forgejo-runner.sh teardown` * `forgejo.sh teardown` diff --git a/testdata/example-artifacts/.forgejo/workflows/many.yml b/testdata/example-artifacts/.forgejo/workflows/many.yml new file mode 100644 index 0000000..52b0d9a --- /dev/null +++ b/testdata/example-artifacts/.forgejo/workflows/many.yml @@ -0,0 +1,22 @@ +on: [push] +jobs: + upload: + runs-on: docker + steps: + - run: mkdir -p artifacts + + - run: touch artifacts/ONE artifacts/TWO + + - uses: actions/upload-artifact@v3 + with: + name: many-artifacts + path: artifacts/ + + download: + runs-on: docker + steps: + - uses: actions/download-artifact@v3 + + - run: | + test -f many-artifacts/ONE + test -f many-artifacts/TWO diff --git a/testdata/example-artifacts/.forgejo/workflows/one.yml b/testdata/example-artifacts/.forgejo/workflows/one.yml new file mode 100644 index 0000000..3d61853 --- /dev/null +++ b/testdata/example-artifacts/.forgejo/workflows/one.yml @@ -0,0 +1,24 @@ +on: [push] +jobs: + upload: + runs-on: docker + steps: + - run: mkdir -p path/to/artifact + + - run: echo hello > path/to/artifact/world.txt + + - uses: actions/upload-artifact@v3 + with: + name: my-artifact + path: path/to/artifact/world.txt + + download: + runs-on: docker + steps: + - run: "! test -f world.txt" + + - uses: actions/download-artifact@v3 + with: + name: my-artifact + + - run: "test -f world.txt"