2021-04-16 05:37:00 +00:00
name : Make Release
on :
# Can optionally take parameters from the github UI, more info here https://github.blog/changelog/2020-07-06-github-actions-manual-triggers-with-workflow_dispatch/#:~:text=You%20can%20now%20create%20workflows,the%20workflow%20is%20run%20on.
2021-04-16 07:03:38 +00:00
# workflow_dispatch:
# inputs:
# Only want to be run if a new tag starting with v is pushed.
push :
branches :
- "!*"
tags :
2021-04-17 01:28:36 +00:00
- "v1*"
2021-04-16 05:37:00 +00:00
jobs :
2021-04-16 07:31:53 +00:00
release-build :
2021-04-16 05:37:00 +00:00
runs-on : ubuntu-latest
steps :
- name : Checkout code
uses : actions/checkout@v2
with :
submodules : 'recursive'
2021-04-16 07:03:38 +00:00
# get github branch and tag names as ${{ steps.branch_name.outputs.SOURCE_TAG }}
- name : Branch name
id : branch_name
run : |
echo ::set-output name=SOURCE_NAME::${GITHUB_REF#refs/*/}
echo ::set-output name=SOURCE_BRANCH::${GITHUB_REF#refs/heads/}
echo ::set-output name=SOURCE_TAG::${GITHUB_REF#refs/tags/}
2021-04-16 05:46:14 +00:00
- name : Setup Python
uses : actions/setup-python@v2
with :
python-version : 3. x
2021-04-16 06:19:53 +00:00
# Note: we don't use caches on release builds because we don't want to accidentally not have a virgin build machine
2021-04-16 05:46:14 +00:00
- name : Upgrade python tools
# We actually want to run this every time
# if: steps.cache-pip.outputs.cache-hit != 'true'
run : |
python -m pip install --upgrade pip
pip install -U platformio meshtastic adafruit-nrfutil
- name : Upgrade platformio
run : |
pio upgrade
2021-04-16 05:37:00 +00:00
# Will be available in steps.version.outputs.version
- name : Get version string
2021-05-25 00:45:47 +00:00
run : echo "::set-output name=version::$(./bin/buildinfo.py long)"
2021-04-16 05:37:00 +00:00
id : version
- name : Build everything
run : bin/build-all.sh
2021-04-16 06:19:53 +00:00
- name : Create release
2021-04-16 05:37:00 +00:00
uses : actions/create-release@v1
id : create_release
with :
draft : true
prerelease : true
2021-04-16 06:19:53 +00:00
release_name : ${{ steps.version.outputs.version }} alpha
2021-04-16 07:03:38 +00:00
tag_name : ${{ steps.branch_name.outputs.SOURCE_TAG }}
2021-04-16 06:19:53 +00:00
# was ${{ github.ref }}
body : |
Autogenerated by github action, developer should edit as required before publishing...
2021-04-16 05:37:00 +00:00
env :
GITHUB_TOKEN : ${{ github.token }}
2021-05-26 02:21:26 +00:00
- name : Add bins to release
2021-04-16 05:37:00 +00:00
uses : actions/upload-release-asset@v1
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
2021-05-26 02:21:26 +00:00
asset_content_type : application/zip
- name : Add debug elfs to release
uses : actions/upload-release-asset@v1
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