Non-Release Build #8
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | name: Non-Release Build | |
| on: | |
| workflow_dispatch: | |
| branches: | |
| env: | |
| FILENAME_PREFIX: RTK_Surveyor_Firmware | |
| FIRMWARE_VERSION_MAJOR: 99 | |
| FIRMWARE_VERSION_MINOR: 99 | |
| #We limit the ESP32 core to v2.0.2 | |
| CORE_VERSION: 2.0.2 | |
| jobs: | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Get current date | |
| id: date | |
| run: echo "date=$(date +'%b_%d_%Y')" >> $GITHUB_OUTPUT | |
| - name: Get current date | |
| id: dateNoScores | |
| run: echo "dateNoScores=$(date +'%b %d %Y')" >> $GITHUB_OUTPUT | |
| - name: Extract branch name | |
| run: echo "BRANCH=${{github.ref_name}}" >> $GITHUB_ENV | |
| #File_Name_v3_1.bin | |
| #File_Name_RC-Jan_26_2023.bin | |
| - name: Create file ending and compiler flags based on branch | |
| run: | | |
| echo "FILE_ENDING_UNDERSCORE=_RC-${{ steps.date.outputs.date }}" >> "$GITHUB_ENV" | |
| echo "FILE_ENDING_NOUNDERSCORE=_RC-${{ steps.dateNoScores.outputs.dateNoScores }}" >> "$GITHUB_ENV" | |
| echo "JSON_ENDING=-${{ steps.dateNoScores.outputs.dateNoScores }}" >> "$GITHUB_ENV" | |
| echo "JSON_FILE_NAME=RTK-RC-Firmware.json" >> "$GITHUB_ENV" | |
| echo "ENABLE_DEVELOPER=true" >> "$GITHUB_ENV" | |
| echo "DEBUG_LEVEL=debug" >> "$GITHUB_ENV" | |
| - name: Run Dockerfile and copy files | |
| # The --quiet suppresses the build output, keeping the secrets safe | |
| run: | | |
| cd ./Firmware | |
| echo "*** The docker build is quiet to protect the GitHub secrets ***" | |
| docker build -t rtk_firmware --no-cache --quiet \ | |
| --build-arg CORE_VERSION=${{ env.CORE_VERSION }} \ | |
| --build-arg FIRMWARE_VERSION_MAJOR=${{ env.FIRMWARE_VERSION_MAJOR }} \ | |
| --build-arg FIRMWARE_VERSION_MINOR=${{ env.FIRMWARE_VERSION_MINOR }} \ | |
| --build-arg POINTPERFECT_TOKEN="${{ secrets.POINTPERFECT_TOKEN }}" \ | |
| --build-arg ENABLE_DEVELOPER=${{ env.ENABLE_DEVELOPER }} \ | |
| --build-arg DEBUG_LEVEL=${{ env.DEBUG_LEVEL }} \ | |
| . | |
| docker create --name=rtk_container rtk_firmware:latest | |
| mkdir ./build | |
| docker cp rtk_container:/RTK_Surveyor.ino.bin ./build | |
| docker cp rtk_container:/RTK_Surveyor.ino.elf ./build | |
| docker cp rtk_container:/RTK_Surveyor/form.h ./RTK_Surveyor | |
| docker container rm rtk_container | |
| - name: Commit and push form.h | |
| run: | | |
| git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
| git config --local user.name "github-actions[bot]" | |
| git add ./Firmware/RTK_Surveyor/form.h | |
| git commit -m "Update form.h via Python" | |
| git push origin ${{ env.BRANCH }} | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Create artifact name | |
| run: | | |
| echo "ARTIFACT=${{ env.FILENAME_PREFIX }}${{ env.FILE_ENDING_UNDERSCORE }}" >> $GITHUB_ENV | |
| - name: Create artifact directory | |
| run: | | |
| cd ./Firmware/build/ | |
| mkdir ${{ env.ARTIFACT }} | |
| mv RTK_Surveyor.ino.bin ${{ env.ARTIFACT }} | |
| mv RTK_Surveyor.ino.elf ${{ env.ARTIFACT }} | |
| - name: Upload artifact directory to action - avoid double-zip | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ env.ARTIFACT }} | |
| path: ./Firmware/build/${{ env.ARTIFACT }} | |
| retention-days: 7 |