From d22e2d70d062c2fd0a6803ab286128143cdded7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Sun, 29 Sep 2024 16:52:54 +0200 Subject: [PATCH 1/7] Add workflow that builds and releases cache on new tags MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Øystein Sture --- .github/workflows/release_cache.yaml | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/release_cache.yaml diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml new file mode 100644 index 0000000000000..1cfe8671385d2 --- /dev/null +++ b/.github/workflows/release_cache.yaml @@ -0,0 +1,32 @@ +# This workflow builds and releases the rosdistro cache on a tag push. +--- +name: release-cache + +on: + push: + tags: + - '**' # Double ** needed to match tags containing '/' + +jobs: + build-and-release-cache: + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Environmental variables + run: | + ROSDISTRO_TAG=${{ github.ref_name }} + echo "ROSDISTRO_TAG=${ROSDISTRO_TAG}" >> $GITHUB_ENV + echo "ROSDISTRO_TARGET=${ROSDISTRO_TAG%%/*}" >> $GITHUB_ENV + echo "ROSDISTRO_RELEASE=${ROSDISTRO_TAG#*/}" >> $GITHUB_ENV + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + - run: pip install rosdistro + - run: | + rosdistro_build_cache --debug "${GITHUB_WORKSPACE}/index-v4.yaml" "${ROSDISTRO_TARGET}" + mv "${ROSDISTRO_TARGET}-cache.yaml.gz" "${ROSDISTRO_TARGET}-${ROSDISTRO_RELEASE}-cache.yaml.gz" + - name: Release + uses: softprops/action-gh-release@v2 + with: + tag_name: "${{env.ROSDISTRO_TAG}}" + files: "${{env.ROSDISTRO_TARGET}}-${{env.ROSDISTRO_RELEASE}}-cache.yaml.gz" From f56da764bc8134a2af9fcb843a7371ae3289461d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Sun, 29 Sep 2024 17:09:33 +0200 Subject: [PATCH 2/7] Write generic release description instead of autogenerating MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Øystein Sture --- .github/workflows/release_cache.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index 1cfe8671385d2..e86de8706ddd0 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -28,5 +28,7 @@ jobs: - name: Release uses: softprops/action-gh-release@v2 with: - tag_name: "${{env.ROSDISTRO_TAG}}" - files: "${{env.ROSDISTRO_TARGET}}-${{env.ROSDISTRO_RELEASE}}-cache.yaml.gz" + body: "Generated cache for ${{ env.ROSDISTRO_TAG }}" + tag_name: "${{ env.ROSDISTRO_TAG }}" + files: "${{ env.ROSDISTRO_TARGET }}-${{ env.ROSDISTRO_RELEASE }}-cache.yaml.gz" + generate_release_notes: False From fd2b5f00af1dd44291fc5f5e31860ac595b1adcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Sun, 29 Sep 2024 17:13:44 +0200 Subject: [PATCH 3/7] Fix linter error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Øystein Sture --- .github/workflows/release_cache.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index e86de8706ddd0..89e07588ada66 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -31,4 +31,4 @@ jobs: body: "Generated cache for ${{ env.ROSDISTRO_TAG }}" tag_name: "${{ env.ROSDISTRO_TAG }}" files: "${{ env.ROSDISTRO_TARGET }}-${{ env.ROSDISTRO_RELEASE }}-cache.yaml.gz" - generate_release_notes: False + generate_release_notes: false From 28ba9c7d836e01260744a8d6ad02481d4122a034 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Tue, 1 Oct 2024 06:45:23 +0200 Subject: [PATCH 4/7] Fix linter error #2 Co-authored-by: Tomoya Fujita --- .github/workflows/release_cache.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index 89e07588ada66..f55e82008a75a 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -2,7 +2,7 @@ --- name: release-cache -on: +on: # yamllint disable-line rule:truthy push: tags: - '**' # Double ** needed to match tags containing '/' From 545c650228d72b82df6e8aa1ef479b9cd677ec9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Fri, 1 Nov 2024 16:49:24 +0100 Subject: [PATCH 5/7] Add possibility of running action manually MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Øystein Sture --- .github/workflows/release_cache.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index f55e82008a75a..959e8a1b405aa 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -3,6 +3,7 @@ name: release-cache on: # yamllint disable-line rule:truthy + workflow_dispatch: push: tags: - '**' # Double ** needed to match tags containing '/' From ea0efc63800bfeea9bb5a7097684f62fbaa9f699 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Fri, 1 Nov 2024 16:56:33 +0100 Subject: [PATCH 6/7] Add manual tag input for generating cache in this fork --- .github/workflows/release_cache.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index 959e8a1b405aa..70710a93942ef 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -4,6 +4,12 @@ name: release-cache on: # yamllint disable-line rule:truthy workflow_dispatch: + inputs: + tag: + description: 'Tag to release cache for.' + required: true + type: string + default: '' push: tags: - '**' # Double ** needed to match tags containing '/' From 47c6df4e8e55bcf74421933a86ca2a67425deafb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98ystein=20Sture?= Date: Fri, 1 Nov 2024 16:57:27 +0100 Subject: [PATCH 7/7] Revert "Add manual tag input for generating cache in this fork" This reverts commit ea0efc63800bfeea9bb5a7097684f62fbaa9f699. --- .github/workflows/release_cache.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/release_cache.yaml b/.github/workflows/release_cache.yaml index 70710a93942ef..959e8a1b405aa 100644 --- a/.github/workflows/release_cache.yaml +++ b/.github/workflows/release_cache.yaml @@ -4,12 +4,6 @@ name: release-cache on: # yamllint disable-line rule:truthy workflow_dispatch: - inputs: - tag: - description: 'Tag to release cache for.' - required: true - type: string - default: '' push: tags: - '**' # Double ** needed to match tags containing '/'