| name: Create a Release |
| |
| on: |
| push: |
| tags: |
| - 'v*' |
| - '!v*rc*' |
| |
| permissions: |
| contents: read |
| |
| jobs: |
| release: |
| runs-on: ubuntu-24.04 |
| timeout-minutes: 20 |
| permissions: |
| contents: write # to create GitHub release entry |
| steps: |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 |
| with: |
| persist-credentials: false |
| fetch-depth: 0 |
| |
| - name: Get the version |
| id: get_version |
| run: | |
| echo "VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT |
| echo "TRIMMED_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT |
| |
| - name: REUSE Compliance Check |
| uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0 |
| with: |
| args: spdx -o zephyr-${{ steps.get_version.outputs.VERSION }}.spdx |
| |
| - name: upload-results |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 |
| continue-on-error: true |
| with: |
| name: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx |
| path: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx |
| |
| - name: Create empty release notes body |
| run: | |
| echo "TODO: add release overview and notes link" > release-notes.txt |
| |
| - name: Create Release |
| env: |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| run: | |
| gh release create "${{ steps.get_version.outputs.VERSION }}" \ |
| "zephyr-${{ steps.get_version.outputs.VERSION }}.spdx" \ |
| --title "Zephyr ${{ steps.get_version.outputs.TRIMMED_VERSION }}" \ |
| --notes-file release-notes.txt \ |
| --draft \ |
| --prerelease |