From 4c6f19bc6144f269b333adb14a5f6552ba330132 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Fri, 25 Jul 2025 13:46:02 +0200 Subject: [PATCH 1/7] fix(ci): s/FORGEJO_TOKEN/FORGEJO_TEST_TOKEN/ --- testdata/upload-download/.forgejo/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testdata/upload-download/.forgejo/workflows/test.yml b/testdata/upload-download/.forgejo/workflows/test.yml index 6254a27..33ad121 100644 --- a/testdata/upload-download/.forgejo/workflows/test.yml +++ b/testdata/upload-download/.forgejo/workflows/test.yml @@ -51,7 +51,7 @@ jobs: with: direction: upload tag: a/v3.0 - token: FORGEJO_TOKEN + token: FORGEJO_TEST_TOKEN release-dir: upload-dir release-notes: "RELEASE NOTES" verbose: true @@ -61,7 +61,7 @@ jobs: with: direction: upload tag: a/v3.0 - token: FORGEJO_TOKEN + token: FORGEJO_TEST_TOKEN release-dir: upload-dir release-notes-assistant: true hide-archive-link: true From a15345a4116d32624f7517fe04e231228771a5e4 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sat, 26 Jul 2025 05:40:23 +0200 Subject: [PATCH 2/7] fix(ci): do not test tags with / with RNA it does not make for a valid semver --- testdata/upload-download/.forgejo/workflows/test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/testdata/upload-download/.forgejo/workflows/test.yml b/testdata/upload-download/.forgejo/workflows/test.yml index 33ad121..6dbd3db 100644 --- a/testdata/upload-download/.forgejo/workflows/test.yml +++ b/testdata/upload-download/.forgejo/workflows/test.yml @@ -63,7 +63,6 @@ jobs: tag: a/v3.0 token: FORGEJO_TEST_TOKEN release-dir: upload-dir - release-notes-assistant: true hide-archive-link: true override: true verbose: true From a34fc370c5e4d42987d96dc283c582939a78ef55 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sat, 26 Jul 2025 05:52:33 +0200 Subject: [PATCH 3/7] fix(ci): no need to test for overrides twice --- .../.forgejo/workflows/test.yml | 19 ++++--------------- .../upload-dir-v3/file1-v3.txt | 1 + .../upload-dir-v3/file2-v3.txt | 1 + 3 files changed, 6 insertions(+), 15 deletions(-) create mode 100644 testdata/upload-download/upload-dir-v3/file1-v3.txt create mode 100644 testdata/upload-download/upload-dir-v3/file2-v3.txt diff --git a/testdata/upload-download/.forgejo/workflows/test.yml b/testdata/upload-download/.forgejo/workflows/test.yml index 6dbd3db..e80296e 100644 --- a/testdata/upload-download/.forgejo/workflows/test.yml +++ b/testdata/upload-download/.forgejo/workflows/test.yml @@ -4,7 +4,7 @@ name: Upload (and download) a release to (and from) the project that runs the wo on: [push] jobs: upload-download: - runs-on: self-hosted + runs-on: lxc-bookworm steps: - uses: actions/checkout@v4 - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} @@ -52,20 +52,9 @@ jobs: direction: upload tag: a/v3.0 token: FORGEJO_TEST_TOKEN - release-dir: upload-dir + release-dir: upload-dir-v3 release-notes: "RELEASE NOTES" verbose: true - - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} - id: release-upload-override-slash-in-tag - uses: SELF@vTest - with: - direction: upload - tag: a/v3.0 - token: FORGEJO_TEST_TOKEN - release-dir: upload-dir - hide-archive-link: true - override: true - verbose: true - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} id: release-download uses: SELF@vTest @@ -97,11 +86,11 @@ jobs: direction: download tag: a/v3.0 token: FORGEJO_TEST_TOKEN - release-dir: download-dir-v3a + release-dir: download-dir-v3 download-latest: true verbose: true - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} run: | - diff -u upload-dir download-dir-v3a + diff -u upload-dir-v3 download-dir-v3 - if: failure() run: docker logs forgejo diff --git a/testdata/upload-download/upload-dir-v3/file1-v3.txt b/testdata/upload-download/upload-dir-v3/file1-v3.txt new file mode 100644 index 0000000..d6c6b5f --- /dev/null +++ b/testdata/upload-download/upload-dir-v3/file1-v3.txt @@ -0,0 +1 @@ +FILE1-V3 diff --git a/testdata/upload-download/upload-dir-v3/file2-v3.txt b/testdata/upload-download/upload-dir-v3/file2-v3.txt new file mode 100644 index 0000000..9fa78bc --- /dev/null +++ b/testdata/upload-download/upload-dir-v3/file2-v3.txt @@ -0,0 +1 @@ +FILE2-V3 From efc7c9870c44349a71da1912f2e04ec64c806044 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sat, 26 Jul 2025 06:29:33 +0200 Subject: [PATCH 4/7] fix(ci): move slash test to the end otherwise it will have a side effect on the test that checks for the latest release --- .../.forgejo/workflows/test.yml | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/testdata/upload-download/.forgejo/workflows/test.yml b/testdata/upload-download/.forgejo/workflows/test.yml index e80296e..3bfd532 100644 --- a/testdata/upload-download/.forgejo/workflows/test.yml +++ b/testdata/upload-download/.forgejo/workflows/test.yml @@ -45,16 +45,6 @@ jobs: - \backslash escape - !exclamation_mark verbose: true - - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} - id: release-upload-slash-in-tag - uses: SELF@vTest - with: - direction: upload - tag: a/v3.0 - token: FORGEJO_TEST_TOKEN - release-dir: upload-dir-v3 - release-notes: "RELEASE NOTES" - verbose: true - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} id: release-download uses: SELF@vTest @@ -79,6 +69,17 @@ jobs: - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} run: | diff -u upload-dir-v2 download-dir-v2 + + - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} + id: release-upload-slash-in-tag + uses: SELF@vTest + with: + direction: upload + tag: a/v3.0 + token: FORGEJO_TEST_TOKEN + release-dir: upload-dir-v3 + release-notes: "RELEASE NOTES" + verbose: true - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} id: release-download-with-slash-in-tag uses: SELF@vTest @@ -87,7 +88,6 @@ jobs: tag: a/v3.0 token: FORGEJO_TEST_TOKEN release-dir: download-dir-v3 - download-latest: true verbose: true - if: ${{ !startsWith(github.ref, 'refs/tags/v') }} run: | From 428b5e175f73fc4956555b2c37e2510340938a62 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sat, 26 Jul 2025 06:51:13 +0200 Subject: [PATCH 5/7] fix(ci): do not use the same tag for different workflows --- .../upload-download/.forgejo/workflows/gpg-no-passphrase.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testdata/upload-download/.forgejo/workflows/gpg-no-passphrase.yml b/testdata/upload-download/.forgejo/workflows/gpg-no-passphrase.yml index 5ab367f..a0cf926 100644 --- a/testdata/upload-download/.forgejo/workflows/gpg-no-passphrase.yml +++ b/testdata/upload-download/.forgejo/workflows/gpg-no-passphrase.yml @@ -98,7 +98,7 @@ jobs: uses: SELF@vTest with: direction: upload - tag: v1.2 + tag: v1.3 token: FORGEJO_TEST_TOKEN release-dir: upload-dir release-notes: "RELEASE NOTES" @@ -109,7 +109,7 @@ jobs: uses: SELF@vTest with: direction: download - tag: v1.2 + tag: v1.3 token: FORGEJO_TEST_TOKEN release-dir: download-dir verbose: true From 2b1b059591be731d44c50c204cba4f37bd112075 Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sat, 26 Jul 2025 07:05:42 +0200 Subject: [PATCH 6/7] fix(ci): test logic requires that tags start with a v --- testdata/upload-download/.forgejo/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testdata/upload-download/.forgejo/workflows/test.yml b/testdata/upload-download/.forgejo/workflows/test.yml index 3bfd532..e77982e 100644 --- a/testdata/upload-download/.forgejo/workflows/test.yml +++ b/testdata/upload-download/.forgejo/workflows/test.yml @@ -75,7 +75,7 @@ jobs: uses: SELF@vTest with: direction: upload - tag: a/v3.0 + tag: v/3.0 token: FORGEJO_TEST_TOKEN release-dir: upload-dir-v3 release-notes: "RELEASE NOTES" @@ -85,7 +85,7 @@ jobs: uses: SELF@vTest with: direction: download - tag: a/v3.0 + tag: v/3.0 token: FORGEJO_TEST_TOKEN release-dir: download-dir-v3 verbose: true From 32debc27f9c8a1d543821872cbe013d6ad205d2b Mon Sep 17 00:00:00 2001 From: Earl Warren Date: Sun, 27 Jul 2025 08:51:25 +0200 Subject: [PATCH 7/7] chore: teach renovate about release-notes-assistant --- forgejo-release.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/forgejo-release.sh b/forgejo-release.sh index 73b8e7b..1216ded 100755 --- a/forgejo-release.sh +++ b/forgejo-release.sh @@ -19,6 +19,8 @@ if ${VERBOSE:-false}; then set -x; fi : ${RETRY:=1} : ${DELAY:=10} +RELEASE_NOTES_ASSISTANT_VERSION=v1.3.3 # renovate: datasource=forgejo-releases depName=forgejo/release-notes-assistant registryUrl=https://code.forgejo.org + TAG_FILE="$TMP_DIR/tag$$.json" TAG_URL=$(echo "$TAG" | sed 's/\//%2F/g') @@ -116,7 +118,7 @@ release_draft() { maybe_use_release_note_assistant() { if "$RELEASE_NOTES_ASSISTANT"; then - curl --fail -s -S -o rna https://code.forgejo.org/forgejo/release-notes-assistant/releases/download/v1.2.3/release-notes-assistant + curl --fail -s -S -o rna https://code.forgejo.org/forgejo/release-notes-assistant/releases/download/$RELEASE_NOTES_ASSISTANT_VERSION/release-notes-assistant chmod +x ./rna ./rna --storage release --storage-location "$TAG" --forgejo-url "$SCHEME"://placeholder:"$TOKEN"@"$HOST" --repository $REPO --token "$TOKEN" release "$TAG" fi