| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- name: "Version check for NEW release"
- run-name: " Version check for NEW release ${{ inputs.DEPLOY_TARGET }} by @${{ github.ACTOR }}"
- on:
- workflow_dispatch:
- push:
- branches:
- - master
- schedule:
- - cron: "*/30 * * * *"
- permissions:
- contents: write
- jobs:
- pull-request:
- concurrency:
- group: check-for-new-versions
- cancel-in-progress: false
- runs-on: ubuntu-latest
- env:
- REPO_UNLEASHED: ${{ vars.REPO_UNLEASHED }}
- RELEASE_VERSION: ${{ vars.RELEASE_VERSION }}
- FIRMWARE_VERSION: ${{ vars.FIRMWARE_VERSION }}
- REPO_SELF: ${{ vars.REPO_SELF }}
- CHECKOUT_DIR: "firmware"
- steps:
- - name: Copy Repo Files
- uses: actions/checkout@v3
- with:
- repository: "${{ env.REPO_SELF }}"
- path: "${{ env.CHECKOUT_DIR }}"
- clean: "true"
- submodules: "true"
- token: ${{ secrets.FLIPPER_TOKEN }}
- - name: Check firmware release
- shell: pwsh
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: |
- $Output = ('& $env:GITHUB_ACTION_PATH/.github/check-version.ps1')
- Write-Output("RELEASE_VERSION=$($Output.ReleaseVersion)") >> $env:GITHUB_ENV
- Write-Output("CURRENT_TAG=$($Output.CurrentTag)") >> $env:GITHUB_ENV
- Write-Output("REMOTE_TAG_INFO=$($Output.RemoteTagInfo)") >> $env:GITHUB_ENV
- Write-Output("RELEASE_TYPE=$($Output.ReleaseType)") >> $env:GITHUB_ENV
- - name: Update Firmware variable and create UPDATE release if necessary
- if: ${{ success() && env.RELEASE_TYPE == 1 }}
- env:
- GITHUB_TOKEN: ${{ secrets.FLIPPER_TOKEN }}
- OWNER: ${{ github.repository_owner }}
- run: |
- gh release create 'v${{ env.RELEASE_VERSION }}' --latest --draft \
- --notes 'Rebuild with new version of firmware.\n\nSee: [CHANGELOG](${{ env.FIRMWARE_VERSION }}/blob/dev/CHANGELOG.md)\n${{ env.REMOTE_TAG_INFO}}' \
- --title 'Minor update v${{ env.RELEASE_VERSION }}' --verify-tag -R '${{ env.REPO_SELF }}'
- gh variable set FIRMWARE_VERSION -b '${{ env.FIRMWARE_VERSION }}' -R '${{ env.REPO_SELF }}'
- gh variable set RELEASE_VERSION -b '${{ env.RELEASE_VERSION }}' -R '${{ env.REPO_SELF }}'
- - name: Update release variable and create NEW release if necessary
- if: ${{ success() && env.RELEASE_TYPE == 2 }}
- env:
- GITHUB_TOKEN: ${{ secrets.FLIPPER_TOKEN }}
- OWNER: ${{ github.repository_owner }}
- run: |
- gh release create 'v${{ env.RELEASE_VERSION }}' --notes-start-tag 'v${{ env.CURRENT_TAG }}' --generate-notes --draft --latest \
- --notes 'New version is rolling out!' --verify-tag --title 'Release v${{ env.RELEASE_VERSION }}' -R '${{ env.REPO_SELF }}'
- gh variable set FIRMWARE_VERSION -b '${{ env.FIRMWARE_VERSION }}' -R '${{ env.REPO_SELF }}'
- gh variable set RELEASE_VERSION -b '${{ env.RELEASE_VERSION }}' -R '${{ env.REPO_SELF }}'
- - name: Current settings in repo invalid. Changing
- if: ${{ success() && env.RELEASE_TYPE > 2 }}
- env:
- GITHUB_TOKEN: ${{ secrets.FLIPPER_TOKEN }}
- OWNER: ${{ github.repository_owner }}
- run: |
- gh variable set RELEASE_VERSION -b ${{ env.RELEASE_VERSION }} -R ${{ env.REPO_SELF }}
- # EOF
|