70 lines
2.2 KiB
YAML
70 lines
2.2 KiB
YAML
name: build
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- '**.md'
|
|
- 'circuit'
|
|
|
|
|
|
# env:
|
|
# UPLOAD_USER_FIRMWARE: false
|
|
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-18.04
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: before_install
|
|
run: |
|
|
sudo apt update
|
|
sudo apt install -y gcc git wget make libncurses-dev flex bison python python-setuptools python-serial ninja-build
|
|
wget https://dl.espressif.com/dl/xtensa-lx106-elf-linux64-1.22.0-100-ge567ec7-5.2.0.tar.gz
|
|
|
|
- name: install
|
|
run: |
|
|
tar -xzf ./xtensa-lx106-elf-linux64-1.22.0-100-ge567ec7-5.2.0.tar.gz
|
|
python -m pip install --user -r ./ESP8266_RTOS_SDK/requirements.txt
|
|
|
|
- name: script
|
|
id: script
|
|
run: |
|
|
export IDF_PATH=$PWD/ESP8266_RTOS_SDK
|
|
export PATH="$PATH:$PWD/xtensa-lx106-elf/bin"
|
|
echo "FIRMWARE=$PWD/build" >> $GITHUB_ENV
|
|
python ./idf.py fullclean
|
|
python ./idf.py build
|
|
echo "::set-output name=status::success"
|
|
|
|
# - name: Generate release tag
|
|
# id: tag
|
|
# if: env.UPLOAD_USER_FIRMWARE == 'true' && steps.script.outputs.status == 'success' && !cancelled()
|
|
# run: |
|
|
# echo "::set-output name=release_tag::UserBuild_$(date +"%Y.%m.%d_%H-%M")"
|
|
# echo "::set-output name=status::success"
|
|
|
|
- name: Merge bin files
|
|
id: merge
|
|
if: steps.script.outputs.status == 'success' && !cancelled()
|
|
run: |
|
|
git clone https://github.com/espressif/esptool.git
|
|
python3 ./esptool/esptool.py --chip esp8266 merge_bin -o build/esp8266_dap_full.bin 0x0 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0x10000 build/esp8266_dap.bin
|
|
mv build/esp8266_dap.bin build/esp8266_dap_app.bin
|
|
echo "::set-output name=status::success"
|
|
|
|
- name: Upload firmware
|
|
uses: actions/upload-artifact@v2
|
|
if: steps.merge.outputs.status == 'success' && !cancelled()
|
|
with:
|
|
name: firmware.zip
|
|
path: |
|
|
${{ env.FIRMWARE }}/esp8266_dap_full.bin
|
|
${{ env.FIRMWARE }}/esp8266_dap_app.bin
|
|
${{ env.FIRMWARE }}/bootloader/bootloader.bin
|
|
${{ env.FIRMWARE }}/partition_table/partition-table.bin
|
|
|