nixiesp12/.github/workflows/arduino.yaml

70 lines
1.7 KiB
YAML
Executable File

---
name: arduino
on:
push:
tags:
- 'v*.*.*'
jobs:
build:
permissions: write-all
strategy:
matrix:
arduino-platform: ["esp8266:esp8266"]
include:
- arduino-platform: "esp8266:esp8266"
fqbn: "esp8266:esp8266:generic"
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Setup Arduino CLI
uses: arduino/setup-arduino-cli@v1
- name: Install platform
run: >
arduino-cli core install
--additional-urls=http://arduino.esp8266.com/stable/package_esp8266com_index.json
${{ matrix.arduino-platform }}
- name: Install time lib
run: arduino-cli lib install time wifimanager ezTime
- name: Make timezones
run: python firmware/cities.py > firmware/cities.h
- name: Compile Sketch
run: >
arduino-cli compile --fqbn ${{ matrix.fqbn }} -e
firmware
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./firmware/build/esp8266.esp8266.generic/firmware.ino.bin
asset_name: nixiesp12.bin
asset_content_type: application/bin