diff --git a/actions/example-force-rebuild/run.sh b/actions/example-force-rebuild/run.sh index 2f2cb7e..d82890a 100755 --- a/actions/example-force-rebuild/run.sh +++ b/actions/example-force-rebuild/run.sh @@ -1,3 +1,7 @@ +TMPDIR=$(mktemp -d) + +trap "rm -fr $TMPDIR" EXIT + function setup_with_rebuild() { FORGEJO_RUNNER_CONFIG=$EXAMPLE_DIR/runner-config-with-rebuild.yml forgejo-runner.sh reload } @@ -7,28 +11,32 @@ function setup_without_rebuild() { } function run() { - local expected="$1" + local dir="$1" + local expected="$2" local repo=root/example-$example - forgejo-test-helper.sh push_workflow actions/example-$example $url root example-$example setup-forgejo $token + forgejo-test-helper.sh push_workflow $dir $url root example-$example setup-forgejo $token sha=$(forgejo-test-helper.sh branch_tip $url $repo main) forgejo-test-helper.sh wait_$expected $url $repo $sha } function main() { + local dir=$TMPDIR/repository + cp -a $EXAMPLE_DIR $dir + # set up passing docker action - echo "0" > $EXAMPLE_DIR/.forgejo/local-docker-action/input.txt + echo "0" >$dir/.forgejo/local-docker-action/input.txt setup_with_rebuild - run success + run $dir success # change docker action to fail - echo "1" > $EXAMPLE_DIR/.forgejo/local-docker-action/input.txt + echo "1" >$dir/.forgejo/local-docker-action/input.txt # ... but without a rebuild, it should still pass setup_without_rebuild - run success + run $dir success # now the action should fail setup_with_rebuild - run failure + run $dir failure } main