Compare commits

...

26 Commits

Author SHA1 Message Date
982bb5aa21 docs: update changelog for version 1.3.20
Some checks failed
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Failing after 2m44s
2025-02-21 22:22:10 +01:00
007737db13 docs: update webpages for version v1.3.20 2025-02-21 22:22:10 +01:00
17e5949201 workflow: enable git tagging and pushing for Gitea releases 2025-02-21 22:22:06 +01:00
6a57186091 docs: update changelog for version 1.3.19
All checks were successful
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Successful in 2m42s
2025-02-21 22:17:32 +01:00
babd3f47a0 docs: update webpages for version v1.3.19 2025-02-21 22:17:32 +01:00
5372fe10fe workflow: enable git push for version tagging in Gitea release 2025-02-21 22:17:22 +01:00
e0c9d90892 docs: update changelog for version 1.3.18
All checks were successful
Release Workflow / detect-provider (push) Successful in 2s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Successful in 2m49s
2025-02-21 22:11:13 +01:00
e5f5d1961b docs: update webpages for version v1.3.18 2025-02-21 22:11:13 +01:00
31a960fb9e docs: add note about filaman_full.bin installation in changelog 2025-02-21 22:11:07 +01:00
3c2e75b77a docs: update changelog for version 1.3.18 and enhance update script for existing entries 2025-02-21 22:10:32 +01:00
367143c456 docs: update changelog for version 1.3.17
All checks were successful
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Successful in 2m39s
2025-02-21 21:54:28 +01:00
fbde4b764f docs: update webpages for version v1.3.17 2025-02-21 21:54:28 +01:00
e57f4216d4 ci: comment out git tag and push commands in gitea-release workflow 2025-02-21 21:54:24 +01:00
b8beb992d6 config: update platformio.ini for version 1.3.16
Some checks failed
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Failing after 2m32s
2025-02-21 21:49:48 +01:00
4234b2254e docs: update changelog for version 1.3.16 2025-02-21 21:44:40 +01:00
b8faf79163 docs: update webpages for version v1.3.16 2025-02-21 21:44:40 +01:00
d35afaff46 ci: update filenames for firmware and website binaries in release workflows 2025-02-21 21:44:33 +01:00
a8a00372b5 docs: update changelog for version 1.3.15 2025-02-21 21:34:36 +01:00
72f4eab588 docs: update webpages for version v1.3.15 2025-02-21 21:34:36 +01:00
afa4eddc00 ci: fix missing 'fi' in GitHub release workflow script 2025-02-21 21:34:32 +01:00
b0888e7e63 docs: update changelog for version 1.3.14
Some checks failed
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Failing after 2m32s
2025-02-21 21:25:29 +01:00
238a84a8a2 docs: update webpages for version v1.3.14 2025-02-21 21:25:29 +01:00
59cc00ca13 ci: update GitHub release workflow to improve file upload handling 2025-02-21 21:25:16 +01:00
ab083f5f57 docs: update changelog for version 1.3.13
Some checks failed
Release Workflow / detect-provider (push) Successful in 3s
Release Workflow / github-release (push) Has been skipped
Release Workflow / gitea-release (push) Failing after 2m39s
2025-02-21 21:17:06 +01:00
c111573206 docs: update webpages for version v1.3.13 2025-02-21 21:17:06 +01:00
52b2494e52 ci: update GitHub release workflow to use RELEASE_TOKEN for improved security 2025-02-21 21:17:02 +01:00
6 changed files with 120 additions and 40 deletions

View File

@ -34,10 +34,10 @@ jobs:
pio run -t buildfs
# Copy firmware binary
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/filaman_${VERSION}.bin
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin
# Create SPIFFS binary
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/webpage_${VERSION}.bin
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/upgrade_filaman_website_v${VERSION}.bin
# Create full binary
(cd .pio/build/esp32dev &&
@ -78,7 +78,7 @@ jobs:
# Prepare files for upload
FILES=""
for file in filaman_${VERSION}.bin webpage_${VERSION}.bin filaman_full_${VERSION}.bin; do
for file in upgrade_filaman_firmware_v${VERSION}.bin upgrade_filaman_website_v${VERSION}.bin filaman_full_${VERSION}.bin; do
if [ -f "$file" ]; then
FILES="$FILES -a $file"
fi

View File

@ -3,7 +3,7 @@ name: GitHub Release
on:
workflow_call:
secrets:
GITHUB_TOKEN:
RELEASE_TOKEN:
description: 'GitHub token for release creation'
required: true
@ -17,6 +17,8 @@ jobs:
contents: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v4
@ -65,10 +67,10 @@ jobs:
pio run -t buildfs
# Copy firmware binary
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/filaman_${VERSION}.bin
cp .pio/build/esp32dev/firmware.bin .pio/build/esp32dev/upgrade_filaman_firmware_v${VERSION}.bin
# Always create SPIFFS binary
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/webpage_${VERSION}.bin
cp .pio/build/esp32dev/spiffs.bin .pio/build/esp32dev/upgrade_filaman_website_v${VERSION}.bin
# Create full binary (always)
(cd .pio/build/esp32dev &&
@ -104,40 +106,35 @@ jobs:
- name: Create GitHub Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
VERSION=${{ steps.get_version.outputs.VERSION }}
cd .pio/build/esp32dev
# Create the release first
RELEASE_JSON=$(curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"https://api.github.com/repos/$GITHUB_REPOSITORY/releases" \
-d "{
\"tag_name\":\"v${VERSION}\",
\"name\":\"Release ${VERSION}\",
\"body\":\"${{ steps.changelog.outputs.CHANGES }}\",
\"draft\":false,
\"prerelease\":false
}")
# Create release with available files
FILES_TO_UPLOAD=""
# Extract the upload URL from the response
UPLOAD_URL=$(echo "$RELEASE_JSON" | jq -r .upload_url | sed 's/{?name,label}//')
# Always add firmware
if [ -f "update_filaman_firmware_v${VERSION}.bin" ]; then
FILES_TO_UPLOAD="$FILES_TO_UPLOAD upgrade_filaman_firmware_v${VERSION}.bin"
fi
# Upload the binary files
for file in filaman_${VERSION}.bin webpage_${VERSION}.bin filaman_full_${VERSION}.bin; do
if [ -f "$file" ]; then
echo "Uploading $file..."
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "X-GitHub-Api-Version: 2022-11-28" \
-H "Content-Type: application/octet-stream" \
"${UPLOAD_URL}?name=${file}" \
--data-binary "@${file}"
fi
done
# Add SPIFFS and full binary only if they exist
if [ -f "update_filaman_website_v${VERSION}.bin" ]; then
FILES_TO_UPLOAD="$FILES_TO_UPLOAD upgrade_filaman_website_v${VERSION}.bin"
fi
if [ -f "filaman_full_${VERSION}.bin" ]; then
FILES_TO_UPLOAD="$FILES_TO_UPLOAD filaman_full_${VERSION}.bin"
fi
# Create release with available files
if [ -n "$FILES_TO_UPLOAD" ]; then
gh release create "v${VERSION}" \
--title "Release ${VERSION}" \
--notes "${{ steps.changelog.outputs.CHANGES }}" \
$FILES_TO_UPLOAD
else
echo "Error: No files found to upload"
exit 1
fi

View File

@ -31,7 +31,7 @@ jobs:
if: needs.detect-provider.outputs.provider == 'github'
uses: ./.github/workflows/github-release.yml
secrets:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RELEASE_TOKEN: ${{ secrets.GITHUB_TOKEN }}
gitea-release:
needs: detect-provider

View File

@ -1,5 +1,64 @@
# Changelog
## [1.3.20] - 2025-02-21
### Changed
- update webpages for version v1.3.20
- workflow: enable git tagging and pushing for Gitea releases
## [1.3.19] - 2025-02-21
### Changed
- update webpages for version v1.3.19
- workflow: enable git push for version tagging in Gitea release
## [1.3.18] - 2025-02-21
### Changed
- ACHTUNG: Installiere einmal das filaman_full.bin danach kannst du über die upgrade Files aktualisieren und deine Settings bleiben auch erhalten.
- ATTENTION: Install the filaman_full.bin once, then you can update via the upgrade files and your settings will also be retained.
## [1.3.18] - 2025-02-21
### Added
- add note about filaman_full.bin installation in changelog
### Changed
- update webpages for version v1.3.18
- update changelog for version 1.3.18 and enhance update script for existing entries
## [1.3.17] - 2025-02-21
### Changed
- update webpages for version v1.3.17
- ci: comment out git tag and push commands in gitea-release workflow
## [1.3.16] - 2025-02-21
### Changed
- update webpages for version v1.3.16
- ci: update filenames for firmware and website binaries in release workflows
## [1.3.15] - 2025-02-21
### Changed
- update webpages for version v1.3.15
### Fixed
- ci: fix missing 'fi' in GitHub release workflow script
## [1.3.14] - 2025-02-21
### Changed
- update webpages for version v1.3.14
- ci: update GitHub release workflow to improve file upload handling
## [1.3.13] - 2025-02-21
### Changed
- update webpages for version v1.3.13
- ci: update GitHub release workflow to use RELEASE_TOKEN for improved security
## [1.3.12] - 2025-02-21
### Changed
- update webpages for version v1.3.12

View File

@ -9,7 +9,9 @@
; https://docs.platformio.org/page/projectconf.html
[common]
version = "1.3.12"
version = "1.3.20"
#test
[env:esp32dev]
platform = espressif32

View File

@ -122,7 +122,29 @@ def update_changelog():
f.write(updated_content)
push_changes(version)
else:
print(f"Version {version} already exists in changelog")
# Version existiert bereits, füge neue Einträge unter der existierenden Version ein
version_pattern = f"## \\[{version}\\] - \\d{{4}}-\\d{{2}}-\\d{{2}}"
next_version_pattern = "## \\[.*?\\] - \\d{4}-\\d{2}-\\d{2}"
# Finde den Start der aktuellen Version
version_match = re.search(version_pattern, content)
if version_match:
version_start = version_match.end()
# Suche nach der nächsten Version
next_version_match = re.search(next_version_pattern, content[version_start:])
if next_version_match:
# Füge zwischen aktueller und nächster Version ein
insert_pos = version_start + next_version_match.start()
updated_content = content[:insert_pos] + "\n" + changelog_entry + content[insert_pos:]
else:
# Füge am Ende des Abschnitts ein
updated_content = content[:version_start] + "\n" + changelog_entry + content[version_start:]
with open(changelog_path, 'w') as f:
f.write(updated_content)
push_changes(version)
print(f"Added new entries to existing version {version}")
if __name__ == "__main__":
update_changelog()