-
-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added automatically generated release
- Loading branch information
1 parent
cfd3028
commit 9d836a6
Showing
2 changed files
with
136 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
name: PlatformIO CI | ||
|
||
on: | ||
push: | ||
paths-ignore: | ||
- "**.md" | ||
|
||
jobs: | ||
job_bsc: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
|
||
- name: Cache pip | ||
uses: actions/cache@v3 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} | ||
restore-keys: ${{ runner.os }}-pip- | ||
|
||
- name: Cache PlatformIO | ||
uses: actions/cache@v3 | ||
with: | ||
path: ~/.platformio | ||
key: ${{ runner.os }}-platformio-2022-${{ hashFiles('**/lockfiles') }} | ||
|
||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.x' | ||
|
||
- name: Install PlatformIO | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install --upgrade platformio | ||
- name: Create folders | ||
run: | | ||
mkdir -p ./output_fw/bsc | ||
mkdir -p ./output_fw/bsc_serial_log | ||
- name: Prebuild Parameter | ||
run: python ./scripts/prebuild_parameter.py | ||
|
||
- name: Run githubCI.py | ||
run: python ./scripts/githubCI.py | ||
|
||
- name: Build firmware | ||
run: platformio run | ||
|
||
- name: Copy output | ||
run: | | ||
cp .pio/build/bsc/firmware.bin ./output_fw/bsc/ | ||
cp .pio/build/bsc/firmware.elf ./output_fw/bsc/ | ||
cp .pio/build/bsc/partitions.bin ./output_fw/bsc/ | ||
cp .pio/build/bsc/bootloader.bin ./output_fw/bsc/ | ||
cp ~/.platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin ./output_fw/bsc/ | ||
cp .pio/build/bsc_hw_log/firmware.bin ./output_fw/bsc_serial_log/ | ||
cp .pio/build/bsc_hw_log/firmware.elf ./output_fw/bsc_serial_log/ | ||
cp .pio/build/bsc_hw_log/partitions.bin ./output_fw/bsc_serial_log/ | ||
cp .pio/build/bsc_hw_log/bootloader.bin ./output_fw/bsc_serial_log/ | ||
cp ~/.platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin ./output_fw/bsc_serial_log/ | ||
- name: ZIP output for release | ||
run: | | ||
zip -j ./output_fw/bsc_release.zip ./output_fw/bsc/firmware.bin | ||
zip -j ./output_fw/bsc_release.zip ./output_fw/bsc/partitions.bin | ||
zip -j ./output_fw/bsc_release.zip ./output_fw/bsc/bootloader.bin | ||
zip -j ./output_fw/bsc_release.zip ./output_fw/bsc/boot_app0.bin | ||
- name: Get current date | ||
id: date | ||
run: echo "dt=$(date +'%Y-%m-%d-%H-%M')" >> $GITHUB_ENV | ||
|
||
- name: Rename ZIP | ||
run: mv ./output_fw/bsc_release.zip ./output_fw/bsc_release_${{ env.BSC_SW_VERSION }}_${{ env.dt }}.zip | ||
|
||
- name: Publish Artifacts BSC firmware | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: bsc_firmware | ||
#path: .pio/build/*/firmware.bin | ||
path: ./output_fw | ||
if-no-files-found: error | ||
|
||
- name: Create Release Files (only on MAIN branch) | ||
id: create_release | ||
uses: actions/create-release@v1 | ||
if: github.ref == 'refs/heads/main' | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token | ||
with: | ||
tag_name: ${{ env.BSC_SW_VERSION }}_${{ env.dt }} | ||
release_name: ${{ env.BSC_SW_VERSION }}_${{ env.dt }} | ||
body: | | ||
Automatically generated release | ||
draft: false | ||
prerelease: false | ||
|
||
- name: Upload Release Asset | ||
id: upload-release-asset | ||
uses: actions/upload-release-asset@v1 | ||
if: github.ref == 'refs/heads/main' | ||
env: | ||
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | ||
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: ./output_fw/bsc_release_${{ env.BSC_SW_VERSION }}_${{ env.dt }}.zip | ||
asset_name: bsc_firmware_${{ env.BSC_SW_VERSION }}_${{ env.dt }}.zip | ||
asset_content_type: application/zip |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# Copyright (c) 2024 Tobias Himmler | ||
# | ||
# This software is released under the MIT License. | ||
# https://opensource.org/licenses/MIT | ||
|
||
import os | ||
|
||
env_file = os.getenv('GITHUB_ENV') | ||
|
||
|
||
datei = open('./include/defines.h','r') | ||
for zeile in datei: | ||
defFound = zeile.find("#define ") | ||
if defFound >= 0: | ||
defs = zeile.strip().split(' ',2) | ||
if len(defs) == 3: | ||
defName = defs[1].strip() | ||
defValue = defs[2].strip().replace('"', '') | ||
|
||
if(defName == "BSC_SW_VERSION"): | ||
defValue=defValue.lower() | ||
print(defName+"="+defValue) | ||
with open(env_file, "a") as myfile: | ||
myfile.write(defName+"="+defValue) | ||
|
||
datei.close() |