60 Commits
Author SHA1 Message Date
Nanokloon 603494c105 i messed up the workflow whoops v2
Build / build (push) Failing after 1m55s
2026-09-29 21:25:03 +02:00
Nanokloon df04669700 i messed up the workflow whoops
Build / build (push) Failing after 2m0s
2026-09-29 21:22:19 +02:00
Nanokloon 0813bb32f5 i messed up the workflow whoops
Build / build (push) Failing after 2m4s
2026-09-29 21:21:47 +02:00
Nanokloon 661fe6e013 i messed up the workflow whoops
Build / build (push) Successful in 1m56s
2026-09-29 21:18:56 +02:00
Nanokloon 5a0472e406 v0.0.1
Build / build (push) Failing after 2m1s
2026-09-29 21:05:41 +02:00
Nanokloon a9353e5c10 v0.0.1
Build / build (push) Failing after 10m33s
2026-09-29 21:03:15 +02:00
Nanokloon 434b3c5df5 hope this works
Build / build (push) Successful in 2m25s
2026-09-29 21:00:02 +02:00
Nanokloon 62cb4c6f06 debugging 27
Build / build (push) Successful in 2m30s
2026-09-29 20:42:43 +02:00
Nanokloon 28638b99f1 debugging 26
Build / build (push) Failing after 14s
2026-09-29 20:40:52 +02:00
Nanokloon 872e9bcb78 debugging 25
Build / build (push) Failing after 16s
2026-09-29 20:39:55 +02:00
Nanokloon ac3a1f20b5 debugging 25
Build / build (push) Failing after 10s
2026-09-29 20:39:33 +02:00
Nanokloon 2537dba07a debugging 25
Build / build (push) Failing after 4s
2026-09-29 20:39:12 +02:00
Nanokloon 35602fb877 debugging 25
Build / build (push) Failing after 16s
2026-09-29 20:36:02 +02:00
Nanokloon 2ca785d6b2 debugging 25
Build / build (push) Failing after 3s
2026-09-29 20:35:21 +02:00
Nanokloon 192f2b1b21 debugging 25
Build / build (push) Failing after 4s
2026-09-29 20:34:28 +02:00
Nanokloon 2864c8289f debugging 25
Build / build (push) Failing after 4s
2026-09-29 20:32:14 +02:00
Nanokloon be300f11ce debugging 25
Build / build (push) Failing after 4s
2026-09-29 20:31:35 +02:00
Nanokloon fc4064d659 debugging 25
Build / build (push) Failing after 4s
2026-09-29 20:30:58 +02:00
Nanokloon 5fd7a23c38 debugging 24
Build / build (push) Failing after 16s
2026-09-29 20:24:11 +02:00
Nanokloon a5d3120f3e debugging 23
Build / build (push) Failing after 5s
2026-09-29 20:23:49 +02:00
Nanokloon dfba9a76d0 debugging 22
Build / build (push) Failing after 17s
2026-09-29 20:21:15 +02:00
Nanokloon 5973883a9b debugging 21
Build / build (push) Failing after 16s
2026-09-29 20:19:35 +02:00
Nanokloon e47cf850e0 debugging 20
Build / build (push) Failing after 15s
2026-09-29 20:19:04 +02:00
Nanokloon efb019f623 debugging 20
Build / build (push) Failing after 9s
2026-09-29 20:18:26 +02:00
Nanokloon 3d694be8a6 debugging 19
Build / build (push) Failing after 17s
2026-09-29 20:05:28 +02:00
Nanokloon 4b663faa7f debugging 18
Build / build (push) Failing after 16s
2026-09-29 20:04:22 +02:00
Nanokloon 2a4806eca5 debugging 17
Build / build (push) Has been cancelled
2026-09-29 20:04:05 +02:00
Nanokloon e7553da18e debugging 17
Build / build (push) Failing after 13s
2026-09-29 20:03:18 +02:00
Nanokloon b8ba94a78f debugging 16
Build / build (push) Failing after 15s
2026-09-29 20:01:33 +02:00
Nanokloon 415a64cba5 debugging 15
Build / build (push) Failing after 8s
2026-09-29 20:01:08 +02:00
Nanokloon bd28b1a4b0 debugging 14
Build / build (push) Failing after 15s
2026-09-29 19:59:13 +02:00
Nanokloon c6cb8fe2f0 debugging 13
Build / build (push) Failing after 17s
2026-09-29 19:58:17 +02:00
Nanokloon 134ac88cf0 debugging 12
Build / build (push) Failing after 15s
2026-09-29 19:43:54 +02:00
Nanokloon 2ef8fd4de8 debugging 11
Build / build (push) Failing after 15s
2026-09-29 19:41:00 +02:00
Nanokloon 33c4e1f8a2 debugging 10
Build / build (push) Failing after 15s
2026-09-29 19:40:26 +02:00
Nanokloon be48b7601b debugging 9
Build / build (push) Failing after 15s
2026-09-29 19:38:43 +02:00
Nanokloon ec4a0334f3 debugging 8
Build / build (push) Failing after 14s
2026-09-29 19:37:13 +02:00
Nanokloon b8aac5c769 debugging 7
Build / build (push) Failing after 15s
2026-09-29 19:36:40 +02:00
Nanokloon 8de01c486c debugging 6
Build / build (push) Failing after 17s
2026-09-29 19:35:58 +02:00
Nanokloon dbc20be3c7 debugging 5
Build / build (push) Failing after 15s
2026-09-29 19:35:12 +02:00
Nanokloon c55952e84d debugging 4
Build / build (push) Failing after 8s
2026-09-29 19:33:43 +02:00
Nanokloon d2413610ec debugging 3
Build / build (push) Failing after 13s
2026-09-29 19:32:13 +02:00
Nanokloon c770c179b5 debugging 2
Build / build (push) Failing after 9s
2026-09-29 19:31:10 +02:00
Nanokloon 3cfa014200 debugging
Build / build (push) Failing after 5s
2026-09-29 19:30:15 +02:00
Nanokloon d4eee81dba testing
Build / build (push) Failing after 15s
2026-09-29 19:23:46 +02:00
Nanokloon 7acf008d8e testing
Build / build (push) Failing after 15s
2026-09-29 19:21:35 +02:00
Nanokloon a4e792b3c2 testing
Build / build (push) Failing after 16s
2026-09-29 19:19:35 +02:00
Nanokloon 3ec593b2f6 testing
Build / build (push) Failing after 16s
2026-09-29 19:18:28 +02:00
Nanokloon 20a7dc1d40 testing
Build / build (push) Failing after 19s
2026-09-29 19:17:25 +02:00
Nanokloon 72f2566fe1 testing
Build / build (push) Failing after 14s
2026-09-29 19:16:12 +02:00
Nanokloon eeca3ea74d testing
Build / build (push) Failing after 16s
2026-09-29 19:15:22 +02:00
Nanokloon 68909c4b73 testing
Build / build (push) Failing after 15s
2026-09-29 19:14:31 +02:00
Nanokloon e356794c79 testing
Build / build (push) Failing after 16s
2026-09-29 19:13:08 +02:00
Nanokloon a2c5d714bf testing
Build / build (push) Failing after 16s
2026-09-29 19:11:43 +02:00
Nanokloon 69fbd04b53 testing
Build / build (push) Failing after 7s
2026-09-29 19:11:10 +02:00
Nanokloon eb62f27485 idk man
Build / build (push) Failing after 16s
2026-09-29 19:06:13 +02:00
Nanokloon 42dba0b758 idk man
Build / build (push) Failing after 15s
2026-09-29 19:04:08 +02:00
Nanokloon f5fa26e196 action fixed fr
Build / build (push) Failing after 24s
2026-09-29 19:02:11 +02:00
Nanokloon 6b37937b38 action fixed
Build / build (push) Failing after 7m3s
2026-09-29 18:52:29 +02:00
Nanokloon bf127eae13 action?
Build / build (push) Failing after 2m37s
2026-09-29 18:49:41 +02:00
4 changed files with 157 additions and 22 deletions
@@ -0,0 +1,62 @@
name: "Espressif IoT Development Framework (ESP-IDF)"
description: "This action builds your firmware for ESP32 directly in GitHub using Espressif ESP-IDF Docker image."
branding:
color: red
icon: wifi
inputs:
path:
description: "Relative path under $GITHUB_WORKSPACE containing the project"
default: "."
required: false
esp_idf_version:
default: "latest"
required: false
esp_idf_docker_image:
default: "espressif/idf"
required: false
extra_docker_args:
default: ""
required: false
target:
default: "esp32"
required: false
command:
default: "idf.py build"
required: false
runs:
using: "composite"
steps:
- shell: bash
env:
INPUT_PATH: ${{ inputs.path }}
INPUT_TARGET: ${{ inputs.target }}
INPUT_VERSION: ${{ inputs.esp_idf_version }}
INPUT_IMAGE: ${{ inputs.esp_idf_docker_image }}
INPUT_EXTRA: ${{ inputs.extra_docker_args }}
INPUT_COMMAND: ${{ inputs.command }}
run: |
set -euo pipefail
IDF_TARGET=$(echo "$INPUT_TARGET" | tr '[:upper:]' '[:lower:]' | tr -d '_-')
WORKDIR="/project/${INPUT_PATH}"
CID=$(docker create -t \
-e IDF_TARGET="$IDF_TARGET" \
-w "$WORKDIR" \
$INPUT_EXTRA \
"${INPUT_IMAGE}:${INPUT_VERSION}" \
/bin/bash -c "git config --global --add safe.directory '*' && ${INPUT_COMMAND}")
cleanup() { docker rm -f "$CID" >/dev/null 2>&1 || true; }
trap cleanup EXIT
docker cp "$GITHUB_WORKSPACE/." "$CID:/project"
status=0
docker start -a "$CID" || status=$?
# copy build output back so later steps (artifact upload etc.) can use it
mkdir -p "$GITHUB_WORKSPACE/${INPUT_PATH}"
docker cp "$CID:$WORKDIR/build/." "$GITHUB_WORKSPACE/${INPUT_PATH}/build" 2>/dev/null || true
exit $status
+93
View File
@@ -0,0 +1,93 @@
name: Build
on:
push:
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: esp-idf build
uses: ./.gitea/actions/esp-idf-ci-action
with:
esp_idf_version: v6.0.2
target: esp32c6
- name: Package firmware
if: startsWith(github.ref, 'refs/tags/')
run: |
set -euo pipefail
NAME="firmware-${GITHUB_REF_NAME}"
PROJECT_BIN="mcu-code.bin"
mkdir -p "release/${NAME}/build/bootloader" "release/${NAME}/build/partition_table"
# Keep the build/ layout so "@flash_args" works after unzipping
cp build/bootloader/bootloader.bin "release/${NAME}/build/bootloader/"
cp build/partition_table/partition-table.bin "release/${NAME}/build/partition_table/"
cp "build/${PROJECT_BIN}" "release/${NAME}/build/"
cp build/flash_args "release/${NAME}/build/"
(cd release && zip -qr "${NAME}.zip" "${NAME}")
# Standalone copies
cp build/bootloader/bootloader.bin release/
cp build/partition_table/partition-table.bin release/
cp "build/${PROJECT_BIN}" release/
cat > release/notes.md <<EOF
## Flashing (${CHIP})
Requires [esptool](https://github.com/espressif/esptool) (\`pip install esptool\`).
**Option 1: with the individual files**
\`\`\`
python -m esptool --chip ${CHIP} -b 460800 --before default-reset --after hard-reset write-flash --flash-mode dio --flash-size 4MB --flash-freq 80m 0x0 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin 0x10000 build/${PROJECT_BIN}
\`\`\`
**Option 2: unzip \`${NAME}.zip\`, then from inside its \`build\` directory**
\`\`\`
python -m esptool --chip ${CHIP} -b 460800 --before default-reset --after hard-reset write-flash "@flash_args"
\`\`\`
EOF
- name: Create release
if: startsWith(github.ref, 'refs/tags/')
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref_name }}
body_path: release/notes.md
draft: false
prerelease: true
# actions/upload-release-asset relies on GitHub's templated upload_url, which Gitea
# doesn't provide, so attach the files through Gitea's API. The release ID is looked
# up by tag rather than taken from the step's outputs, because the old toolkit inside
# actions/create-release may emit outputs in a format Gitea's runner doesn't parse.
- name: Upload release assets
if: startsWith(github.ref, 'refs/tags/')
env:
TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -euo pipefail
API="${GITHUB_API_URL:-${GITHUB_SERVER_URL}/api/v1}/repos/${GITHUB_REPOSITORY}"
RELEASE_ID=$(curl -fsS -H "Authorization: token ${TOKEN}" \
"${API}/releases/tags/${GITHUB_REF_NAME}" | jq -r .id)
for f in release/firmware-*.zip release/bootloader.bin release/partition-table.bin "release/${PROJECT_BIN}"; do
echo "Uploading $(basename "$f")"
curl -fsS -X POST "${API}/releases/${RELEASE_ID}/assets?name=$(basename "$f")" \
-H "Authorization: token ${TOKEN}" \
-F "attachment=@${f}" >/dev/null
done
+2
View File
@@ -17,6 +17,8 @@ const char *test = "amai zeg\n";
#define NODE_NUMBER 1 #define NODE_NUMBER 1
#define TOTAL_NUMBER_OF_NODES 4 #define TOTAL_NUMBER_OF_NODES 4
// testing if the release packaging works
uint8_t node_mac[ESP_NOW_ETH_ALEN] = {0xDE, 0xD5, 0xEC, 0x00, 0x00, 0x02}; uint8_t node_mac[ESP_NOW_ETH_ALEN] = {0xDE, 0xD5, 0xEC, 0x00, 0x00, 0x02};
-22
View File
@@ -1,22 +0,0 @@
name: Build
on:
push:
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: https://github.com/actions/checkout@v4
with:
submodules: 'recursive'
- name: esp-idf build
uses: https://github.com/espressif/esp-idf-ci-action@v1
with:
esp_idf_version: v4.4
target: esp32s2
path: '.'