diff --git a/.github/workflows/main_matrix.yml b/.github/workflows/main_matrix.yml index d4aaff620..dbb4e5b30 100644 --- a/.github/workflows/main_matrix.yml +++ b/.github/workflows/main_matrix.yml @@ -6,7 +6,6 @@ on: paths-ignore: - "**.md" - "**.yml" - - "version.properties" # Note: This is different from "pull_request". Need to specify ref when doing checkouts. pull_request_target: @@ -340,7 +339,7 @@ jobs: ref: ${{github.event.pull_request.head.ref}} repository: ${{github.event.pull_request.head.repo.full_name}} - gather-artifacts: + gather-A: runs-on: ubuntu-latest needs: [build-esp32, build-nrf52, build-native, build-rpi2040] steps: @@ -403,3 +402,48 @@ jobs: artifacts-branch: device artifacts-dir: pr artifacts: ./firmware-${{ steps.version.outputs.version }}.zip + + - name: Verify Changed files + uses: tj-actions/verify-changed-files@v10.1 + id: verify-changed-files + with: + files: | + version.properties + + - name: Create release + uses: actions/create-release@v1 + id: create_release + if: contains(steps.verify-changed-files.outputs.changed_files, 'version.properties') && ${{ github.event_name != 'pull_request_target' && github.event_name != 'pull_request' }} + with: + draft: true + prerelease: true + release_name: ${{ steps.version.outputs.version }} alpha + tag_name: v${{ steps.version.outputs.version }} + body: | + Autogenerated by github action, developer should edit as required before publishing... + env: + GITHUB_TOKEN: ${{ github.token }} + + - name: Add bins to release + uses: actions/upload-release-asset@v1 + if: contains(steps.verify-changed-files.outputs.changed_files, 'version.properties') && ${{ github.event_name != 'pull_request_target' && github.event_name != 'pull_request' }} + env: + GITHUB_TOKEN: ${{ github.token }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: release/archive/firmware-${{ steps.version.outputs.version }}.zip + asset_name: firmware-${{ steps.version.outputs.version }}.zip + asset_content_type: application/zip + + - name: Add debug elfs to release + uses: actions/upload-release-asset@v1 + if: contains(steps.verify-changed-files.outputs.changed_files, 'version.properties') && ${{ github.event_name != 'pull_request_target' && github.event_name != 'pull_request' }} + env: + GITHUB_TOKEN: ${{ github.token }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: release/archive/elfs-${{ steps.version.outputs.version }}.zip + asset_name: debug-elfs-${{ steps.version.outputs.version }}.zip + asset_content_type: application/zip + + \ No newline at end of file