Skip to content

clean up release creation #99

clean up release creation

clean up release creation #99

Workflow file for this run

name: Build & Publish
on:
push:
branches:
- '**' # Runs on pushes to any branch
pull_request:
branches:
- '**' # Runs on PRs targeting any branch
env:
LC_ALL: C
EXTRA_VERSION: ${{ github.run_number }}
jobs:
build:
runs-on: ubuntu-latest
env:
COMMIT_SHA: ${{ github.sha }}
steps:
- uses: actions/checkout@v4
- name: Cache arduino dep downloads
uses: actions/cache@v4
with:
path: ${{ github.workspace}}/.arduino/downloads
key: ${{ runner.os }}-arduino-downloads
- run: make setup
- run: make all KALEIDOSCOPE_TEMP_PATH=${{ github.workspace}}/.kaleidoscope-temp
- name: Collect the commit SHAs of the build
run: make collect-build-info
- name: Add the NEWS as a changelog to the artifacts
run: cp NEWS.md output/firmware-changelog.md
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: firmware-build
path: |
output/
publish:
needs: build
runs-on: ubuntu-latest
# Ensure this job only runs on pushes to master branch
# if: github.ref == 'refs/heads/master'
env:
OUTPUT_DIR: artifacts/firmware-build
steps:
- uses: actions/checkout@v4
- name: Discover the version tag
id: version
run: |
TAG=$(make version-tag)
echo "TAG=$TAG" >> $GITHUB_ENV
- name: Download artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Delete the snapshot release
if: ${{ contains(env.TAG, 'snapshot') }}
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
shell: bash
run: |
make delete-tag-and-gh-release
- name: Create the release
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
run: |
make create-gh-release
- name: Package up the artifacts
shell: bash
run: |
make package-firmware-build
- name: Upload the firmware files & build info to the release
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
run: |
make upload-gh-release