name: Create a Release on: push: tags: - 'v*' - '!v*rc*' permissions: contents: read jobs: release: runs-on: ubuntu-24.04 permissions: contents: write # to create GitHub release entry steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: 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@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 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 id: create_release uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1.1.4 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: Zephyr ${{ steps.get_version.outputs.TRIMMED_VERSION }} body_path: release-notes.txt draft: true prerelease: true - name: Upload Release Assets id: upload-release-asset uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx asset_name: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx asset_content_type: text/plain