actions: test {upload,download}-artifacts@v4 support
If Forgejo version is >= 7.0 and Forgejo runner > 3.3.0 artifacts@v4 are tested to work with a forked modified version that claims to be compatible.
This commit is contained in:
parent
c461ace62b
commit
e1fd4cbc0f
2 changed files with 64 additions and 0 deletions
|
@ -76,6 +76,16 @@ function actions_teardown() {
|
||||||
stop_daemon forgejo
|
stop_daemon forgejo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function actions_runner_version() {
|
||||||
|
local runner_version=$($DIR/forgejo-runner --version | sed -n -e 's/forgejo-runner version v//p')
|
||||||
|
if test -z "$runner_version" ; then
|
||||||
|
$DIR/forgejo-runner --version
|
||||||
|
echo failed to parse version
|
||||||
|
false
|
||||||
|
fi
|
||||||
|
echo $runner_version
|
||||||
|
}
|
||||||
|
|
||||||
function test_actions() {
|
function test_actions() {
|
||||||
local versions="${1:-1.20 1.21 $RELEASE_NUMBERS_AND_DEV}"
|
local versions="${1:-1.20 1.21 $RELEASE_NUMBERS_AND_DEV}"
|
||||||
|
|
||||||
|
@ -84,6 +94,13 @@ function test_actions() {
|
||||||
log_info "Testing actions for $version"
|
log_info "Testing actions for $version"
|
||||||
|
|
||||||
actions_setup $version
|
actions_setup $version
|
||||||
|
local runner_version=$(actions_runner_version)
|
||||||
|
|
||||||
|
if dpkg --compare-versions $version gt 7.0 && dpkg --compare-versions $runner_version gt 3.3.0 ; then
|
||||||
|
for example in artifacts-v4 ; do
|
||||||
|
run actions_verify_example $example
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
for example in echo checkout service container expression local-action docker-action if if-fail ; do
|
for example in echo checkout service container expression local-action docker-action if if-fail ; do
|
||||||
run actions_verify_example $example
|
run actions_verify_example $example
|
||||||
|
|
47
actions/example-artifacts-v4/.forgejo/workflows/test.yml
Normal file
47
actions/example-artifacts-v4/.forgejo/workflows/test.yml
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
on: [push]
|
||||||
|
jobs:
|
||||||
|
upload-many:
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- run: mkdir -p artifacts
|
||||||
|
|
||||||
|
- run: touch artifacts/ONE artifacts/TWO
|
||||||
|
|
||||||
|
- uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: many-artifacts
|
||||||
|
path: artifacts/
|
||||||
|
|
||||||
|
download-many:
|
||||||
|
needs: [upload-many]
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- uses: https://code.forgejo.org/forgejo/download-artifact@v4
|
||||||
|
|
||||||
|
- run: |
|
||||||
|
test -f many-artifacts/ONE
|
||||||
|
test -f many-artifacts/TWO
|
||||||
|
|
||||||
|
upload-one:
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- run: mkdir -p path/to/artifact
|
||||||
|
|
||||||
|
- run: echo hello > path/to/artifact/world.txt
|
||||||
|
|
||||||
|
- uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: my-artifact
|
||||||
|
path: path/to/artifact/world.txt
|
||||||
|
|
||||||
|
download-one:
|
||||||
|
needs: [upload-one]
|
||||||
|
runs-on: docker
|
||||||
|
steps:
|
||||||
|
- run: "! test -f world.txt"
|
||||||
|
|
||||||
|
- uses: https://code.forgejo.org/forgejo/download-artifact@v4
|
||||||
|
with:
|
||||||
|
name: my-artifact
|
||||||
|
|
||||||
|
- run: "test -f world.txt"
|
Loading…
Add table
Reference in a new issue