From 033829e52feb1709a247aae23041847233f37a9f Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:00:41 +0200 Subject: [PATCH 01/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 5373bd8..539ca54 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -36,7 +36,11 @@ jobs: # Create new_release=$(date +'%Y').$(date +'%m').$counter +<<<<<<< HEAD echo "RELEASE=$new_release">> $GITHUB_OUTPUT +======= + echo "release=$new_release">> "$GITHUB_OUTPUT" +>>>>>>> 6ca7a3e (fix(action): outputs) echo "Release $new_release successfully set" build: -- 2.47.2 From ed0f43b3fa8d3dba09e866aae661331d736d31e0 Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:16:57 +0200 Subject: [PATCH 02/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 539ca54..0141dc7 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -36,11 +36,7 @@ jobs: # Create new_release=$(date +'%Y').$(date +'%m').$counter -<<<<<<< HEAD - echo "RELEASE=$new_release">> $GITHUB_OUTPUT -======= - echo "release=$new_release">> "$GITHUB_OUTPUT" ->>>>>>> 6ca7a3e (fix(action): outputs) + echo "RELEASE=$new_release" >> "$GITHUB_OUTPUT" echo "Release $new_release successfully set" build: @@ -76,8 +72,8 @@ jobs: push: true cleanup: true tags: | - ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:latest + ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE publish_release: needs: [release_tag, build] -- 2.47.2 From 396727d3cf51aaa0ea1723c899d6313519afe2ac Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:42:25 +0200 Subject: [PATCH 03/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 0141dc7..7acc4b8 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -6,16 +6,16 @@ on: - main jobs: - release_tag: + releaseTag: runs-on: ubuntu-latest outputs: - release: ${{ steps.create_release.outputs.RELEASE }} + release: ${{ steps.createRelease.outputs.RELEASE }} steps: - name: Checkout uses: actions/checkout@v4 - name: Get latest release and create new release - id: create_release + id: createRelease shell: bash run: | # Get latest release. @@ -40,10 +40,10 @@ jobs: echo "Release $new_release successfully set" build: - needs: release_tag runs-on: ubuntu-latest + needs: releaseTag env: - RELEASE: ${{ needs.release_tag.outputs.release }} + RELEASE: ${{ needs.releaseTag.outputs.release }} steps: - name: Checkout uses: actions/checkout@v4 @@ -76,10 +76,10 @@ jobs: ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE publish_release: - needs: [release_tag, build] + needs: [releaseTag, build] runs-on: ubuntu-latest env: - RELEASE: ${{ needs.release_tag.outputs.release }} + RELEASE: ${{ needs.releaseTag.outputs.release }} GH_TOKEN: "${{ secrets.GH_TOKEN }}" steps: - name: Checkout -- 2.47.2 From 2fa3c0aef43c5e583f09875be1d521551c2aa5d6 Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:44:33 +0200 Subject: [PATCH 04/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 7acc4b8..3d08900 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -48,6 +48,11 @@ jobs: - name: Checkout uses: actions/checkout@v4 + - name: test + shell: bash + run: | + echo "$RELEASE" + - name: Login to Docker Hub uses: docker/login-action@v3 with: -- 2.47.2 From 66ef5ea99b0eaff255aad587293dc6be55df87cb Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:45:27 +0200 Subject: [PATCH 05/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 3d08900..fea0535 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -78,7 +78,7 @@ jobs: cleanup: true tags: | ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:latest - ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE + ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:"$RELEASE" publish_release: needs: [releaseTag, build] -- 2.47.2 From 694a553c4631ab4b3bcf8dc563254d16d88574ef Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:47:51 +0200 Subject: [PATCH 06/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index fea0535..e94f3e2 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -6,16 +6,16 @@ on: - main jobs: - releaseTag: + release_tag: runs-on: ubuntu-latest outputs: - release: ${{ steps.createRelease.outputs.RELEASE }} + release: ${{ steps.create_release.outputs.RELEASE }} steps: - name: Checkout uses: actions/checkout@v4 - name: Get latest release and create new release - id: createRelease + id: create_release shell: bash run: | # Get latest release. @@ -41,9 +41,9 @@ jobs: build: runs-on: ubuntu-latest - needs: releaseTag + needs: release_tag env: - RELEASE: ${{ needs.releaseTag.outputs.release }} + RELEASE: ${{ needs.release_tag.outputs.release }} steps: - name: Checkout uses: actions/checkout@v4 @@ -78,13 +78,13 @@ jobs: cleanup: true tags: | ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:latest - ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:"$RELEASE" + ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE publish_release: - needs: [releaseTag, build] + needs: [release_tag, build] runs-on: ubuntu-latest env: - RELEASE: ${{ needs.releaseTag.outputs.release }} + RELEASE: ${{ needs.release_tag.outputs.release }} GH_TOKEN: "${{ secrets.GH_TOKEN }}" steps: - name: Checkout -- 2.47.2 From ee8dc1308e98f301d127dbc6032e70d34b1754d6 Mon Sep 17 00:00:00 2001 From: sujiba Date: Mon, 8 Jul 2024 23:58:05 +0200 Subject: [PATCH 07/16] fix(action): outputs --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index e94f3e2..d107bd9 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -78,7 +78,7 @@ jobs: cleanup: true tags: | ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:latest - ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:$RELEASE + ${{ secrets.DOCKER_USER }}/docker-owndyndns-netcup:${{ needs.release_tag.outputs.release }} publish_release: needs: [release_tag, build] -- 2.47.2 From 469cd5c59376ec8a92d0a9c32c47496214f96c20 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 00:02:39 +0200 Subject: [PATCH 08/16] chore(action): remove test --- .forgejo/workflows/build.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index d107bd9..7d88e0d 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -48,11 +48,6 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - name: test - shell: bash - run: | - echo "$RELEASE" - - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -66,7 +61,6 @@ jobs: uses: docker/setup-buildx-action@v3 with: endpoint: tcp://forgejo-docker-in-docker-1:2375 - platforms: linux/amd64,linux/arm64,linux/arm/v7 - name: Build and push uses: docker/build-push-action@v6 -- 2.47.2 From 72101fde82aac0fc42457b5f64016ade1b768c71 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 00:47:08 +0200 Subject: [PATCH 09/16] chore(action): shellcheck tipps --- .forgejo/workflows/build.yaml | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 7d88e0d..ade1b8a 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -78,8 +78,7 @@ jobs: needs: [release_tag, build] runs-on: ubuntu-latest env: - RELEASE: ${{ needs.release_tag.outputs.release }} - GH_TOKEN: "${{ secrets.GH_TOKEN }}" + NEW_RELEASE: ${{ needs.release_tag.outputs.release }} steps: - name: Checkout uses: actions/checkout@v4 @@ -87,10 +86,9 @@ jobs: - name: Create new release shell: bash run: | - echo $RELEASE # Get latest release "created at" timestemp latest_release=$(curl -s https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases\?limit\=1 | jq -r '.[] | .tag_name') - latest_release_time=$(date -d $(curl -s https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases\?limit\=1 | jq -r '.[] | .created_at'))) + latest_release_time=$(date -d "$(curl -s https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases\?limit\=1 | jq -r '.[] | .created_at')") echo "Last release from $latest_release_time" # Get last 50 commits @@ -102,11 +100,11 @@ jobs: while [[ $fin == 0 ]]; do - commit_time=$(date --date=$(cat /tmp/last_50_commits.json | jq -r --arg -i "$i" '.[$i|tonumber] | .created' )); + commit_time=$(date --date="$(< /tmp/last_50_commits.json jq -r --arg -i "$i" '.[$i|tonumber] | .created' )"); if [[ $(date -d "$latest_release_time" +%s) -le $(date -d "$commit_time" +%s) ]]; then echo "$i $commit_time" - i=$(($i + 1)); + i=$((i + 1)) else fin=1; fi @@ -115,20 +113,20 @@ jobs: # Generate list of commit messages since latest release for release message j=0 - release_list="" + message_list="" while [[ "$j" != "$i" ]]; do - message=$(cat /tmp/last_50_commits.json | jq -r --args j "$j" '.[$j|tonumber] | .commit.message') + message=$(< /tmp/last_50_commits.json jq -r --args j "$j" '.[$j|tonumber] | .commit.message') echo "$j $message" message_newline="${message}\n\"" message_list="$message_list* $message_newline" - j=$(($j + 1)) + j=$((j + 1)) done # Generate release message datetime=$(env TZ=Europe/Berlin date "+%A, %d.%m.%Y at %R") - body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo $message_list | sed 's/"//g')" - echo $body + body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo ${message_list//"/})" + echo "$body" # Create release - curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/release -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" + curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/release -H "Authorization: token ${{ secrets.GH_TOKEN }}" -H "Content-Type: application/json" \ No newline at end of file -- 2.47.2 From 9c722c2ab23f16e983e83c55c27ed8c3f71a1095 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 01:02:14 +0200 Subject: [PATCH 10/16] fix(action): typo --- .forgejo/workflows/build.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index ade1b8a..4295bc3 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -100,7 +100,7 @@ jobs: while [[ $fin == 0 ]]; do - commit_time=$(date --date="$(< /tmp/last_50_commits.json jq -r --arg -i "$i" '.[$i|tonumber] | .created' )"); + commit_time=$(date --date="$(< /tmp/last_50_commits.json jq -r --arg i "$i" '.[$i|tonumber] | .created' )"); if [[ $(date -d "$latest_release_time" +%s) -le $(date -d "$commit_time" +%s) ]]; then echo "$i $commit_time" @@ -110,7 +110,6 @@ jobs: fi done - # Generate list of commit messages since latest release for release message j=0 message_list="" -- 2.47.2 From 955a90a6916b1b3191be1c034cb7c0d232ba9a70 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 01:09:17 +0200 Subject: [PATCH 11/16] fix(action): typo --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 4295bc3..1c112c8 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -115,7 +115,7 @@ jobs: message_list="" while [[ "$j" != "$i" ]]; do - message=$(< /tmp/last_50_commits.json jq -r --args j "$j" '.[$j|tonumber] | .commit.message') + message=$(< /tmp/last_50_commits.json jq -r --arg j "$j" '.[$j|tonumber] | .commit.message') echo "$j $message" message_newline="${message}\n\"" message_list="$message_list* $message_newline" -- 2.47.2 From cc6928cd3f89340e64ad272c6810f4879f766c0c Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 08:14:57 +0000 Subject: [PATCH 12/16] fix(action): escape character --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 1c112c8..1c1f6c1 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -124,7 +124,7 @@ jobs: # Generate release message datetime=$(env TZ=Europe/Berlin date "+%A, %d.%m.%Y at %R") - body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo ${message_list//"/})" + body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo ${message_list//\"/})" echo "$body" # Create release -- 2.47.2 From 105fb15d796db056b57c349527b07fd17aac63f4 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 08:29:40 +0000 Subject: [PATCH 13/16] fix(action): added gh token --- .forgejo/workflows/build.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 1c1f6c1..891dea1 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -79,6 +79,7 @@ jobs: runs-on: ubuntu-latest env: NEW_RELEASE: ${{ needs.release_tag.outputs.release }} + GH_TOKEN: "${{ secrets.GH_TOKEN }}" steps: - name: Checkout uses: actions/checkout@v4 @@ -128,4 +129,4 @@ jobs: echo "$body" # Create release - curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/release -H "Authorization: token ${{ secrets.GH_TOKEN }}" -H "Content-Type: application/json" \ No newline at end of file + curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/release -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" \ No newline at end of file -- 2.47.2 From a4c1b3ac689984ee24e22f183171b63a9af2dae1 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 08:40:03 +0000 Subject: [PATCH 14/16] fix(action): changed gh token --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 891dea1..8acf61b 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -79,7 +79,7 @@ jobs: runs-on: ubuntu-latest env: NEW_RELEASE: ${{ needs.release_tag.outputs.release }} - GH_TOKEN: "${{ secrets.GH_TOKEN }}" + GH_TOKEN: "${{ secrets.RENOVATE_TOKEN }}" steps: - name: Checkout uses: actions/checkout@v4 -- 2.47.2 From 49e1c715ccfde1e02b2487e32164c4318be36507 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 08:52:10 +0000 Subject: [PATCH 15/16] fix(action): typo --- .forgejo/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index 8acf61b..d1ad745 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -129,4 +129,4 @@ jobs: echo "$body" # Create release - curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/release -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" \ No newline at end of file + curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" \ No newline at end of file -- 2.47.2 From 73a5cce843d9599a2bfeef967908ebe5632bb987 Mon Sep 17 00:00:00 2001 From: sujiba Date: Tue, 9 Jul 2024 09:14:46 +0000 Subject: [PATCH 16/16] fix(action): changed release var --- .forgejo/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index d1ad745..c8bdb18 100755 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -125,8 +125,8 @@ jobs: # Generate release message datetime=$(env TZ=Europe/Berlin date "+%A, %d.%m.%Y at %R") - body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo ${message_list//\"/})" + body="Create automatically on $datetime by forgejo action \\n\\n $i commit(s) since relase $latest_release:\\n\\n$(echo $message_list | sed 's/"//g' | sed 's/README.md docker-build docker-compose.yaml example.config renovate.json/*/g')" echo "$body" # Create release - curl -d "{\"body\": \"$body\", \"tag_name\": \"$RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" \ No newline at end of file + curl -d "{\"body\": \"$body\", \"tag_name\": \"$NEW_RELEASE\", \"target_commitish\": \"main\" }" https://git.smail.koeln/api/v1/repos/homelab/docker-ownDynDNS-netcup/releases -H "Authorization: token $GH_TOKEN" -H "Content-Type: application/json" \ No newline at end of file -- 2.47.2