From 91db5036c0901d5d0029a972e024d59c8b918d4d Mon Sep 17 00:00:00 2001
From: suchmememanyskill <38142618+suchmememanyskill@users.noreply.github.com>
Date: Mon, 13 Nov 2023 16:20:42 +0100
Subject: [PATCH] Try 2
---
.github/workflows/compile.yaml | 32 +++++++++++++++++++---
generate_manifest.py | 50 ++++++++++++++++++++++++++++++++++
index.html | 12 ++++++++
3 files changed, 90 insertions(+), 4 deletions(-)
create mode 100644 generate_manifest.py
create mode 100644 index.html
diff --git a/.github/workflows/compile.yaml b/.github/workflows/compile.yaml
index 467dfc9..4c5faee 100644
--- a/.github/workflows/compile.yaml
+++ b/.github/workflows/compile.yaml
@@ -28,18 +28,42 @@ jobs:
pio run
- name: Make output dir
- run: mkdir -p output
+ run: |
+ mkdir -p output
+ mkdir -p _site
- name: Build Binary
run: |
cp ./CYD-Klipper-Display/.pio/build/esp32dev/bootloader.bin output
cp ./CYD-Klipper-Display/.pio/build/esp32dev/partitions.bin output
cp ./CYD-Klipper-Display/.pio/build/esp32dev/firmware.bin output
- cp ~/platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin output
+ cp ~/.platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin output
esptool --chip esp32 merge_bin -o ./output/merged-firmware.bin --flash_mode dio --flash_freq 40m --flash_size 4MB 0x1000 ./output/bootloader.bin 0x8000 ./output/partitions.bin 0xe000 ./output/boot_app0.bin 0x10000 ./output/firmware.bin
- - name: Upload artefact
+ - name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: firmware
- path: ./output
\ No newline at end of file
+ path: ./output
+
+ - name: Make webpage
+ run: |
+ cp -r ./output ./_site
+ python3 generate_manifest.py
+ cp manifest.json ./_site
+ cp manifest_wipe.json ./_site
+ cp index.html ./_site
+
+ - name: Upload GitHub Page Artifact
+ uses: actions/upload-pages-artifact@v2
+
+ deploy:
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ runs-on: ubuntu-latest
+ needs: build
+ steps:
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v2
\ No newline at end of file
diff --git a/generate_manifest.py b/generate_manifest.py
new file mode 100644
index 0000000..9702f99
--- /dev/null
+++ b/generate_manifest.py
@@ -0,0 +1,50 @@
+import subprocess, json
+
+latest_tag = subprocess.check_output(["git", "describe", "--tags", "--abbrev=0"])
+
+data_without_wipe = {
+ "name": "CYD-Klipper-Display",
+ "new_install_prompt_erase": False,
+ "version": latest_tag.decode("utf-8").strip(),
+ "builds": [
+ {
+ "chipFamily": "ESP32",
+ "parts": [
+ {
+ "path": "output/bootloader.bin",
+ "offset": 4096
+ },
+ {
+ "path": "output/partitions.bin",
+ "offset": 32768
+ },
+ {
+ "path": "output/boot_app0.bin",
+ "offset": 57344
+ },
+ {
+ "path": "output/firmware.bin",
+ "offset": 65536
+ }
+ ]
+ }
+ ]
+}
+
+data_with_wipe = {
+ "name": "CYD-Klipper-Display",
+ "new_install_prompt_erase": False,
+ "version": latest_tag.decode("utf-8").strip(),
+ "builds": [
+ {
+ "path": "output/merged-firmware.bin",
+ "offset": 0
+ }
+ ]
+}
+
+with open("manifest.json", "w") as f:
+ json.dump(data_without_wipe, f, indent=4)
+
+with open("manifest_wipe.json", "w") as f:
+ json.dump(data_with_wipe, f, indent=4)
\ No newline at end of file
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..3cf1822
--- /dev/null
+++ b/index.html
@@ -0,0 +1,12 @@
+
+
+
+
+
\ No newline at end of file