-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
179 additions
and
195 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 |
---|---|---|
@@ -1,11 +1,11 @@ | ||
name: Release V2.5 | ||
name: Release V2.93 | ||
|
||
# # # # # # # # # # # | ||
# To create new release, just push a new tag with the format v* (v1.0, v2.0, v2.1, v2.2, etc) | ||
# | ||
# | ||
# In a terminal in platformIO do, for example: | ||
# git tag -a v0.10.005 -m "For general release v0.10.005" | ||
# git push origin v0.10.005 | ||
# git tag -a v1.0.1 -m "Release v1.0.1" | ||
# git push origin v1.0.1 | ||
# # # # # # # # # # # | ||
|
||
on: | ||
|
@@ -15,196 +15,180 @@ on: | |
workflow_dispatch: | ||
|
||
jobs: | ||
build_release: | ||
name: Create Release | ||
|
||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
matrix: | ||
environment: | ||
- esp32dev | ||
- esp32dev_OLED | ||
- TTGO_TDISPLAY | ||
- TTGO_TDISPLAY_SANDWICH | ||
- TDISPLAY_S3 | ||
- esp32dev_ST7789_240x320 | ||
- ttgo-t5-EINKBOARDGDEM0213B74 | ||
- ttgo-t5-EINKBOARDDEPG0213BN | ||
- ttgo-t5-EINKBOARDGDEW0213M21 | ||
- ttgo-t7-EINKBOARDGDEM029T94 | ||
- ttgo-t7-WEACT_GDEH0154D67 | ||
- ttgo-t7-WEACT_DEPG0213BN | ||
- ttgo-t7-WEACT_GxEPD2_290_BS | ||
|
||
env: | ||
CHIP_FAMILY: ${{ matrix.environment == 'TDISPLAY_S3' && 'ESP32-S3' || 'ESP32' }} | ||
|
||
timeout-minutes: 30 | ||
|
||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
|
||
- name: Show environments | ||
run: | | ||
echo | ||
- name: Determine chipFamily | ||
id: determine_chip_family | ||
run: | | ||
case "${{ matrix.environment }}" in | ||
"esp32dev") | ||
CHIP_FAMILY="ESP32";; | ||
"TDISPLAY_S3") | ||
CHIP_FAMILY="ESP32-S3";; | ||
# Add more cases for other environments as needed | ||
*) | ||
CHIP_FAMILY="UNKNOWN";; | ||
esac | ||
echo "::set-output name=chipFamily::${CHIP_FAMILY}" | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
|
||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -U platformio | ||
platformio update | ||
- name: Get the version | ||
id: get_version | ||
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/} | ||
|
||
- name: Show version | ||
run: echo ${{ steps.get_version.outputs.VERSION }} | ||
|
||
- name: Get current date | ||
id: date | ||
run: | | ||
echo "::set-output name=date::$(date +'%d-%m-%Y')" | ||
echo "::set-output name=time::$(date +'%H:%M:%S')" | ||
- name: Create manifest file | ||
id: createmanifest | ||
run: | | ||
# Define offset values based on env.CHIP_FAMILY | ||
if [[ "${{ env.CHIP_FAMILY }}" == "ESP32-S3" ]]; then | ||
bootloader_offset=0 | ||
partitions_offset=32768 | ||
firmware_offset=65536 | ||
spiffs_offset=3604480 | ||
else | ||
# Default values for ESP32 or other environments | ||
bootloader_offset=4096 | ||
partitions_offset=32768 | ||
firmware_offset=65536 | ||
spiffs_offset=3604480 | ||
fi | ||
# Create manifest | ||
echo "{" > ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"name\": \"${{ github.event.repository.name }}-${{ matrix.environment }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"flavour\": \"${{ matrix.environment }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"version\": \"${{ steps.get_version.outputs.VERSION }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"compilation_date\": \"${{ steps.date.outputs.date }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"compilation_time\": \"${{ steps.date.outputs.time }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"new_install_prompt_erase\": true," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"new_install_improv_wait_time\": 20," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"builds\": [" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " {" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"chipFamily\": \"${{ env.CHIP_FAMILY }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"improv\": true," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"parts\": [" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-bootloader.bin\", \"offset\": $bootloader_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-partitions.bin\", \"offset\": $partitions_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-firmware.bin\", \"offset\": $firmware_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-spiffs.bin\", \"offset\": $spiffs_offset }" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " ]" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " }" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " ]" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "}" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "::set-output name=manifest::$(cat ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json)" | ||
- name: Read manifest files | ||
run: | | ||
echo "Manifest:" | ||
echo ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "Manifest file contents readed with cat:" | ||
cat ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
- name: Copy manifest files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
mkdir ./firmware | ||
cp ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
- name: Build firmware file | ||
run: | | ||
pio run -e ${{ matrix.environment }} | ||
- name: Copy firmware files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
cp .pio/build/${{ matrix.environment }}/bootloader.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-bootloader.bin | ||
cp .pio/build/${{ matrix.environment }}/partitions.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-partitions.bin | ||
cp .pio/build/${{ matrix.environment }}/firmware.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-firmware.bin | ||
- name: Build spiffs file | ||
run: | | ||
pio run -e ${{ matrix.environment }} -t buildfs | ||
- name: Copy spiffs files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
ls -la ./firmware | ||
cp .pio/build/${{ matrix.environment }}/spiffs.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-spiffs.bin | ||
- name: Create Release | ||
id: create_release | ||
uses: softprops/action-gh-release@v1 | ||
if: startsWith(github.ref, 'refs/tags/') | ||
with: | ||
name: ${{ github.event.repository.name }}-${{ steps.get_version.outputs.VERSION }} | ||
files: | | ||
./firmware/*.bin | ||
./firmware/*.json | ||
draft: false | ||
generate_release_notes: true | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
# get_default_envs: | ||
# name: Gather Environments | ||
# runs-on: ubuntu-latest | ||
# steps: | ||
# - uses: actions/checkout@v2 | ||
# - uses: actions/setup-python@v2 | ||
# - name: Install PlatformIO | ||
# run: | | ||
# pip install -U platformio | ||
# platformio update | ||
# - name: Dump github context | ||
# run: echo "$GITHUB_CONTEXT" | ||
# shell: bash | ||
# env: | ||
# GITHUB_CONTEXT: ${{ toJson(github) }} | ||
# - name: Get default environments | ||
# id: envs | ||
# run: | | ||
# echo "::set-output name=environments::$(pio project config --json-output | jq -cr '.[0][1][0][1]')" | ||
# echo ${{ steps.envs.outputs.environments }} | ||
# outputs: | ||
# environments: ${{ steps.envs.outputs.environments }} | ||
|
||
build: | ||
name: Create Release | ||
|
||
runs-on: ubuntu-latest | ||
# needs: get_default_envs | ||
|
||
strategy: | ||
matrix: | ||
# environment: ${{ fromJSON(needs.get_default_envs.outputs.environments) }} | ||
environment: [esp32dev, esp32dev_OLED, TTGO_TDISPLAY, TTGO_TDISPLAY_SANDWICH, TDISPLAY_S3, esp32dev_ST7789_240x320] | ||
|
||
- name: 📂 Sync files - FTP-Deploy-Action | ||
uses: SamKirkland/[email protected] | ||
env: | ||
CHIP_FAMILY: ${{ matrix.environment == 'TDISPLAY_S3' && 'ESP32-S3' || 'ESP32' }} | ||
|
||
timeout-minutes: 30 # time out after 30 minutes (default is 360 minutes) | ||
|
||
steps: | ||
|
||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
|
||
- name: Show enviroments | ||
run: | | ||
echo | ||
- name: Determine chipFamily | ||
id: determine_chip_family | ||
run: | | ||
case "${{ matrix.environment }}" in | ||
"esp32dev") | ||
CHIP_FAMILY="ESP32";; | ||
"TDISPLAY_S3") | ||
CHIP_FAMILY="ESP32-S3";; | ||
# Add more cases for other environments as needed | ||
*) | ||
CHIP_FAMILY="UNKNOWN";; | ||
esac | ||
echo "::set-output name=chipFamily::${CHIP_FAMILY}" | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
|
||
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -U platformio | ||
platformio update | ||
- name: Get the version | ||
id: get_version | ||
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/} | ||
|
||
- name: Show version | ||
run: echo ${{ steps.get_version.outputs.VERSION }} | ||
|
||
- name: Get current date | ||
id: date | ||
run: | | ||
echo "::set-output name=date::$(date +'%d-%m-%Y')" | ||
echo "::set-output name=time::$(date +'%H:%M:%S')" | ||
- name: Create manifest file | ||
id: createmanifest | ||
run: | | ||
# Define offset values based on env.CHIP_FAMILY | ||
if [[ "${{ env.CHIP_FAMILY }}" == "ESP32-S3" ]]; then | ||
bootloader_offset=0 | ||
partitions_offset=32768 | ||
app0_offset=57344 | ||
firmware_offset=65536 | ||
spiffs_offset=13172736 | ||
else | ||
# Default values for ESP32 or other environments | ||
bootloader_offset=4096 | ||
partitions_offset=32768 | ||
app0_offset=57344 | ||
firmware_offset=65536 | ||
spiffs_offset=3997696 | ||
fi | ||
# Create manifest | ||
echo "{" > ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"name\": \"${{ github.event.repository.name }}-${{ matrix.environment }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"flavour\": \"${{ matrix.environment }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"version\": \"${{ steps.get_version.outputs.VERSION }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"compilation_date\": \"${{ steps.date.outputs.date }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"compilation_time\": \"${{ steps.date.outputs.time }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"new_install_prompt_erase\": true," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"new_install_improv_wait_time\": 20," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"builds\": [" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " {" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"chipFamily\": \"${{ env.CHIP_FAMILY }}\"," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"improv\": true," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " \"parts\": [" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-bootloader.bin\", \"offset\": $bootloader_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-partitions.bin\", \"offset\": $partitions_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-firmware.bin\", \"offset\": $firmware_offset }," >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " { \"path\": \"${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-spiffs.bin\", \"offset\": $spiffs_offset }" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " ]" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " }" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo " ]" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "}" >> ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "::set-output name=manifest::$(cat ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json)" | ||
- name: Read manifest files | ||
run: | | ||
echo "Manifest:" | ||
echo ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
echo "Manifest file contents readed with cat:" | ||
cat ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
- name: Copy manifest files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
mkdir ./firmware | ||
cp ${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}.manifest.json | ||
- name: Build firmware file | ||
run: | | ||
pio run -e ${{ matrix.environment }} | ||
- name: Copy firmware files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
cp .pio/build/${{ matrix.environment }}/bootloader.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-bootloader.bin | ||
cp .pio/build/${{ matrix.environment }}/partitions.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-partitions.bin | ||
cp .pio/build/${{ matrix.environment }}/firmware.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-firmware.bin | ||
- name: Build spiffs file | ||
run: | | ||
pio run -e ${{ matrix.environment }} -t buildfs | ||
- name: Copy spiffs files | ||
if: startsWith(github.ref, 'refs/tags/') | ||
run: | | ||
ls -la ./firmware | ||
cp .pio/build/${{ matrix.environment }}/spiffs.bin ./firmware/${{ github.event.repository.name }}-${{ matrix.environment }}-${{ steps.get_version.outputs.VERSION }}-spiffs.bin | ||
- name: Create Release | ||
id: create_release | ||
uses: softprops/action-gh-release@v1 | ||
if: startsWith(github.ref, 'refs/tags/') | ||
with: | ||
name: ${{ github.event.repository.name }}-${{ steps.get_version.outputs.VERSION }} | ||
files: | | ||
./firmware/*.bin | ||
./firmware/*.json | ||
draft: false | ||
# prerelease: true | ||
generate_release_notes: true | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_ACTION_TOKEN }} | ||
- name: 📂 Sync files - FTP-Deploy-Action | ||
uses: SamKirkland/[email protected] | ||
env: | ||
FTP_SERVER: ${{ secrets.FTP_SERVER }} | ||
FTP_USERNAME: ${{ secrets.FTP_USER }} | ||
FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }} | ||
LOCAL_DIR: ./firmware/ | ||
REMOTE_DIR: /${{ github.event.repository.name }}/ | ||
METHOD: ftp | ||
PORT: 21 | ||
ARGS: --verbose | ||
- name: Clean eMariete.com Cache | ||
# run: curl https://emariete.com/clean_cache_wp_rocket.php | ||
run: curl https://emariete.com/clean_cache_litespeed.php | ||
FTP_SERVER: ${{ secrets.FTP_SERVER }} | ||
FTP_USERNAME: ${{ secrets.FTP_USER }} | ||
FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }} | ||
LOCAL_DIR: ./firmware/ | ||
REMOTE_DIR: /${{ github.event.repository.name }}/ | ||
METHOD: ftp | ||
PORT: 21 | ||
ARGS: --verbose | ||
|
||
- name: Clean eMariete.com Cache | ||
run: curl https://emariete.com/clean_cache_litespeed.php |