Merge pull request 'fix race condition when using v1.20 in tests' (#2) from wip-build-publish into main
Reviewed-on: https://code.forgejo.org/actions/forgejo-release/pulls/2
This commit is contained in:
commit
4ac9bbc591
3 changed files with 26 additions and 7 deletions
|
@ -10,26 +10,29 @@ jobs:
|
||||||
with:
|
with:
|
||||||
user: testuser
|
user: testuser
|
||||||
password: admin1234
|
password: admin1234
|
||||||
image-version: 1.19
|
image-version: 1.20
|
||||||
|
|
||||||
- name: Make the forgejo-release action available for testing
|
- name: push self
|
||||||
run: |
|
run: |
|
||||||
forgejo-test-helper.sh push_self_action http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser forgejo-release vTest
|
forgejo-test-helper.sh push_self_action http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser forgejo-release vTest
|
||||||
|
|
||||||
- name: Actions tests from testdata/upload-download/.forgejo/workflows
|
- name: testdata/upload-download
|
||||||
run: |
|
run: |
|
||||||
export FORGEJO_RUNNER_LOGS="${{ steps.forgejo.outputs.runner-logs }}"
|
export FORGEJO_RUNNER_LOGS="${{ steps.forgejo.outputs.runner-logs }}"
|
||||||
forgejo-test-helper.sh run_workflow testdata/upload-download http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser upload-download forgejo-release "${{ steps.forgejo.outputs.token }}"
|
forgejo-test-helper.sh run_workflow testdata/upload-download http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser upload-download forgejo-release "${{ steps.forgejo.outputs.token }}"
|
||||||
|
|
||||||
- name: Actions tests from testdata/nested-upload-download/.forgejo/workflows
|
- name: testdata/nested-upload-download
|
||||||
run: |
|
run: |
|
||||||
export FORGEJO_RUNNER_LOGS="${{ steps.forgejo.outputs.runner-logs }}"
|
export FORGEJO_RUNNER_LOGS="${{ steps.forgejo.outputs.runner-logs }}"
|
||||||
forgejo-test-helper.sh run_workflow testdata/nested-upload-download http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser nested-upload-download forgejo-release "${{ steps.forgejo.outputs.token }}"
|
forgejo-test-helper.sh run_workflow testdata/nested-upload-download http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser nested-upload-download forgejo-release "${{ steps.forgejo.outputs.token }}"
|
||||||
|
|
||||||
- name: Integration tests of the supporting script forgejo-release.sh
|
- name: test forgejo-release.sh
|
||||||
run: |
|
run: |
|
||||||
set -ex
|
set -ex
|
||||||
export FORGEJO="${{ steps.forgejo.outputs.url }}"
|
export FORGEJO="${{ steps.forgejo.outputs.url }}"
|
||||||
export TOKEN="${{ steps.forgejo.outputs.token }}"
|
export TOKEN="${{ steps.forgejo.outputs.token }}"
|
||||||
export VERBOSE=true
|
export VERBOSE=true
|
||||||
testdata/forgejo-release-test.sh test_run testuser otherrepo
|
testdata/forgejo-release-test.sh test_run testuser otherrepo
|
||||||
|
|
||||||
|
- if: failure()
|
||||||
|
run: docker logs forgejo
|
||||||
|
|
|
@ -44,7 +44,16 @@ upload_release() {
|
||||||
test ${releasetype+false} || echo "Uploading as Stable"
|
test ${releasetype+false} || echo "Uploading as Stable"
|
||||||
ensure_tag
|
ensure_tag
|
||||||
anchor=$(echo $TAG | sed -e 's/^v//' -e 's/[^a-zA-Z0-9]/-/g')
|
anchor=$(echo $TAG | sed -e 's/^v//' -e 's/[^a-zA-Z0-9]/-/g')
|
||||||
$BIN_DIR/tea release create $assets --repo $REPO --note "$RELEASENOTES" --tag $TAG --title $TAG --draft ${releasetype}
|
if ! $BIN_DIR/tea release create $assets --repo $REPO --note "$RELEASENOTES" --tag $TAG --title $TAG --draft ${releasetype} >& $TMP_DIR/tea.log ; then
|
||||||
|
if grep --quiet 'Unknown API Error: 500' $TMP_DIR/tea.log && grep --quiet services/release/release.go:194 $TMP_DIR/tea.log ; then
|
||||||
|
echo "workaround v1.20 race condition https://codeberg.org/forgejo/forgejo/issues/1370"
|
||||||
|
sleep 10
|
||||||
|
$BIN_DIR/tea release create $assets --repo $REPO --note "$RELEASENOTES" --tag $TAG --title $TAG --draft ${releasetype}
|
||||||
|
else
|
||||||
|
cat $TMP_DIR/tea.log
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
release_draft false
|
release_draft false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
name: Upload (and download) a release to (and from) a project found in a Forgejo instance that is different from the one running the workflow
|
#
|
||||||
|
# Upload (and download) a release to (and from) a project
|
||||||
|
# found in a Forgejo instance that is different from the one running the workflow
|
||||||
|
#
|
||||||
|
name: two Forgejo
|
||||||
on: [push]
|
on: [push]
|
||||||
jobs:
|
jobs:
|
||||||
setup-forgejo:
|
setup-forgejo:
|
||||||
|
@ -13,6 +17,7 @@ jobs:
|
||||||
user: testuser
|
user: testuser
|
||||||
password: admin1234
|
password: admin1234
|
||||||
lxc-ip-prefix: 10.0.15
|
lxc-ip-prefix: 10.0.15
|
||||||
|
image-version: 1.20
|
||||||
- id: testrepo
|
- id: testrepo
|
||||||
run: |
|
run: |
|
||||||
forgejo-test-helper.sh push testrepo http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser testrepo > /tmp/output
|
forgejo-test-helper.sh push testrepo http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }} testuser testrepo > /tmp/output
|
||||||
|
@ -41,3 +46,5 @@ jobs:
|
||||||
verbose: true
|
verbose: true
|
||||||
- run: |
|
- run: |
|
||||||
diff -u upload-dir download-dir
|
diff -u upload-dir download-dir
|
||||||
|
- if: failure()
|
||||||
|
run: docker logs forgejo
|
||||||
|
|
Loading…
Reference in a new issue