forked from arduino/ArduinoCore-zephyr
-
Notifications
You must be signed in to change notification settings - Fork 0
Add contribution to support PSOC Edge E84 AI Kit #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ederjc
wants to merge
300
commits into
Infineon:add-psoc-e84-ai-kit
Choose a base branch
from
michal-gora:main
base: add-psoc-e84-ai-kit
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
300 commits
Select commit
Hold shift + click to select a range
599a36f
removing additional arduino api pipeline entirely
michal-gora 61a72f8
added more debug
michal-gora dee836e
added more debug checkpoints for finding the missing ArduinoAPI.h mis…
michal-gora 462727b
reverting from gitmodules to symlink and west management
michal-gora 3bcf2fe
fix: correct symlink target to include modules/lib/ path
michal-gora 9269009
fix: use west path to locate ArduinoCore-API for archive
michal-gora 6cbd9b6
fix: use 'west list -f {abspath}' instead of nonexistent 'west path'
michal-gora 0b3e71c
fix: remove archive:false from arduino-api upload to fix download-art…
michal-gora 2f0a0fa
fix: make --specs=nano.specs configurable, disable for kit_pse84_ai (…
michal-gora 4fa0132
ci: skip unsupported library tests for kit_pse84_ai (CAN, Ethernet, R…
michal-gora 5293064
ci: add publish-pse84 job to release complete CI-built tarball on tag…
michal-gora 00176f4
fixing ci triggers
michal-gora 8e1ad44
adjusting config path to openocd.cfg
michal-gora 0415e52
ci: consolidate release publishing into release.yml, no double build
michal-gora 9aea4a0
upload: use variant openocd.cfg with explicit path in upload pattern
michal-gora 04708cd
fixing workflow artifact referencing
michal-gora 44784c4
fixing workflow artifact referencing again
michal-gora 4b21c1b
ci: deprecate release workflow and update documentation
michal-gora cdfbd60
ci: enhance release workflow to automate version bumping and tagging
michal-gora 8e1e939
fix: add bootloader file handling for Zephyr variants in packaging sc…
michal-gora e3c65d2
fix: update OpenOCD version to 5.16.1 and add new binaries for Linux,…
michal-gora f006e1b
restoring old openocd.cfg again
michal-gora f318e4e
fix: add OpenOCD upload and program patterns for Windows
michal-gora 98ee916
fix: add default programmer and bootloader upload pattern for Windows…
michal-gora 282d62d
fix: update OpenOCD bootloader upload pattern for Windows to include …
michal-gora bbbbe13
fix: enhance firmware packaging logic to handle signed and unsigned h…
michal-gora ca1b8ca
fix: removing verify -> update OpenOCD bootloader upload pattern for …
michal-gora a078ea5
fix: add UART configuration options for improved serial communication…
michal-gora 91af215
fix: update UART configuration to ensure reliable Serial communicatio…
michal-gora b9bb90e
feat: add script to apply Zephyr patches and ensure they are applied …
michal-gora 4becf71
fix: update Zephyr module path resolution and improve error handling …
michal-gora 7e8d78f
fix: add new tools to package_infineon_pse84_index.template.json and …
michal-gora 9a1605a
fix: remove VID and PID entries from kit_pse84_ai configuration to di…
michal-gora 0277804
fix: update toolchain URLs and checksums in package_infineon_pse84_in…
michal-gora 7d49a0b
fix: standardize naming from PSoC Edge to PSOC Edge in configuration …
michal-gora f915fcd
fix: synchronizing forgotten variant.h definitions
michal-gora 7221966
attempting adding USB HID support
michal-gora b7169c1
HID.h fix attempt
michal-gora 9b86d24
fix attempt2: include of usbd_hid.h added in llext_export.c
michal-gora 601568c
fix HID attempt3
michal-gora c68ae9a
fix HID attempt4
michal-gora d4dfb6e
Revert USB HID support attempt
michal-gora a9a4a08
Revert USB HID support attempt
michal-gora c0c8b0f
Merge branch 'main' of https://github.com/michal-gora/ArduinoCore-zephyr
michal-gora 81e17f2
settings.json
michal-gora fc60c95
added original boards to boards.txt and platform.txt
michal-gora 3e5445f
Add conditional checks for board compatibility with Zephyr 4.4.0 in C…
michal-gora 9ff0bed
Remove conditional checks for board compatibility with Zephyr 4.4.0 i…
michal-gora 4008edf
Disabling other boards by commenting out
michal-gora 5318675
fixing newlib incompatibility for kit_pse84_ai
michal-gora 954d356
Added correct pinout
michal-gora 900e6c6
fix: Enable GPIO ports for additional functionality in overlay config…
michal-gora c2db569
reducing package_core.yml inconsistencies 1
michal-gora 53f7eac
Merge upstream/main: ci-builds tracking, split CI scripts, snippet ar…
michal-gora 327eae4
align package_core.yml with upstream/main post-merge
michal-gora 7bb4349
reducing package_core.yml inconsistencies 2
michal-gora 66bdd9c
reducing package_core.yml inconsistencies 2 revert
michal-gora 4550a5c
reducing package_core.yml inconsistencies 3, refactor: simplify workf…
michal-gora 3fc46fa
refactor: streamline API archiving process in package_core.yml
michal-gora 364c16f
fix: correct artifact names and disable archiving for arduino-api
michal-gora 3a6f578
feat: add artifact upload for input test reports and disable archiving
michal-gora 8de0973
refactor: separate release jobs to new workflow file
michal-gora e9d3229
refactor: remove HEAD_REF usage in checkout actions
michal-gora b13b337
remove .vscode
michal-gora bb8bebd
remove release.yml
michal-gora 120d06e
feat: add .gitmodules file for submodule management
michal-gora bf430e5
fix: remove unnecessary newline in .gitignore and package_core.yml
michal-gora 383e253
fix: update pip install path for Zephyr requirements in bootstrap script
michal-gora 18241ee
fix: remove imgtool Python dependencies installation workaround for P…
michal-gora 1467b59
fix: clean up build.sh by cleaning zephyr.signed.hex logic into patch
michal-gora 7044df3
fix: changing tabs to spaces
michal-gora 8a3426a
fix: remove unused TEMP_BOOTLOADERS variable and related logic from p…
michal-gora 18661cc
fix: export additional ARM IRQ functions and enable shared interrupts…
michal-gora 86dcd5f
fix and test: add additional wrapper functions W1/W2/W3/etc. for memo…
michal-gora d45cb2b
fix: add bootloader path for kit_pse84_ai configuration
michal-gora 82ef444
fix: update bootloader handling for kit_pse84_ai configuration
michal-gora 31f920e
fix: update concurrency settings to allow parallel runs in workflows
michal-gora 9415358
fix: simplify OpenOCD upload and bootloader patterns for kit_pse84_ai…
michal-gora e8d6edb
fix and test: enable flash driver and partition map for PSE84 support
michal-gora 2b26e66
fix: add bootloader path for kit_pse84_ai configuration
michal-gora a1fad7a
fix: streamline flash area handling in loader function
michal-gora 915872b
fix: update flash driver and partition map configuration for PSE84 su…
michal-gora 49b8e59
fix: add SPI1 bus configuration for external header support
michal-gora b29f6ad
fix and experiment: enable flash driver and update partition map for …
michal-gora 27bb2ad
fix: update flash0 base and user sketch offset for PSE84 secure XIP
michal-gora 77c9ef3
fix: update SPI bus configuration, disabled &spi0, only &spi1 enabled
michal-gora 79cc15e
fix: set maximum frequency for SPI1 bus configuration
michal-gora 3fc10d6
fix: update OpenOCD configuration and compiler flags for improved bui…
michal-gora 35fd3c0
fix: add machine flags for Cortex-M33 configuration
michal-gora b091a83
test: main.c, test: fix spi by adjusting spi macros in variant.h
michal-gora 73622ed
fix: add link command for KIT_PSE84_AI build configuration
michal-gora 16fc4e6
fix: clang-format
michal-gora d929e2e
fix: cleaning main.c and testing: update upload address for KIT_PSE84…
michal-gora e241036
falling back to main.c with macros
michal-gora 2aa6584
fix: update SPI configuration by removing clock-div setting for peri0…
michal-gora 6f27b75
fix: add zephyr-check-size tool and update SPI bus comment in overlay
michal-gora 7f62ad4
fix: update bootloader path in OpenOCD commands for kit_pse84_ai
michal-gora 4573554
fix: update OpenOCD bootloader pattern for kit_pse84_ai to use zephyr…
michal-gora efc7daa
fix: update SPI pin comments and add digital pin aliases in variant.h
michal-gora f1f3a27
fix: restore cancel-in-progress behavior for concurrency in CI workflows
michal-gora 3d56c66
loader: guard flash_area calls with CONFIG_FLASH_MAP for PSoC Edge PSE84
michal-gora d592b5d
variants: add KIT-PSE84-AI (PSoC Edge E84) board variant
michal-gora 341af34
boards: add Infineon KIT-PSE84-AI (PSoC Edge E84)
michal-gora 9a9789c
platform: add openocd_infineon tool for Infineon KitProg3 boards (PSo…
michal-gora dbb1b4e
cores: update llext_wrappers.c for PSoC Edge PSE84 Loader exports
michal-gora 4450fff
Creating release.yml for github workflows default infineon arduino-de…
michal-gora 985140b
added firmware
michal-gora adbc413
added write permissions to release workflow
michal-gora 5915e70
debuggin added write permissions to release workflow
michal-gora 6bdd0f4
debuggin added write permissions to release workflow
michal-gora 843dce2
added .template.json file
michal-gora d42864e
debugging
michal-gora e3c7789
debugging
michal-gora adac60b
debugging
michal-gora 3162964
debugging
michal-gora afcd7e5
debugging
michal-gora 2829a8b
Fix: register ArduinoCore-API as a proper git submodule
michal-gora 26000f7
Switch to upstream Zephyr v4.4.0, strip boards to PSE84 only
michal-gora 665ec6c
adjusted build.yml
michal-gora bfb4520
updated zephyr sdk to 1.0.1
michal-gora 3a9fb2b
fixed repo owner mistake
michal-gora 242dabb
modified kit_pse84 conf, testing
michal-gora c2ba84f
added missing toolsDependencies, i.e. compiler in .template.json file
michal-gora 2d16ff9
adjusting for arm-zephyr-eabi toolachain and adding repackaging for w…
michal-gora a25ab3d
adjusted arum-zephyr-eabi .tar.xz archive data into .template.json
michal-gora eae4c8a
removed DYNAMIC_INTERRUPTS=n from kit_pse84...conf file
michal-gora 38e5e64
fixing openocd use
michal-gora 112ad66
enabling CONFIG_DYNAMIC_INTERRUPTS=y again
michal-gora 30f167a
ci: trigger package_core workflow for diagnostics
michal-gora a321eda
more debug messages
michal-gora 2c64814
platform.txt cleanup
michal-gora d8bea95
removing CONFIG_DYNAMIC_INTERRUPTS from .conf
michal-gora ec83b08
CONFIG_DYNAMIC_INTERRUPTS=n
michal-gora 75dd147
forcing CONFIG_DYNAMIC_INTERRUPTS=n in build.sh script
michal-gora 0571258
path fix
michal-gora b38f137
-DCONFIG_DYNAMIC_INTERRUPTS=n with log instead
michal-gora 31b41ad
commentingm out CONFIG_DYNAMIC_INTERRUPTS export symbols
michal-gora e021da6
replaced imgtool with openocd in boards.txt for psoc edge
michal-gora a91cc35
changing remaining openocd_infineon to openocd
michal-gora 8728066
removing unnecessary variant folders, using prj.conf for CONFIG_BOOTL…
michal-gora 77259a4
always print .config, and always pass DCONFIG flags
michal-gora 20d4998
printing whole west build command
michal-gora 4baa294
pip install cryptography added
michal-gora c7fe9a2
installing imgloader prerequisite pip packages, and adjusting west bu…
michal-gora 208bb6f
adjusting llext_exports.c file
michal-gora 51217f7
rm -rf for removing submodule dir and broken symlink
michal-gora 60b44ab
installing arm-zephyr-eabi 1.0.1 version in package_core.yml
michal-gora b6dc5d8
ci: fix arm-zephyr-eabi 1.0.1 install in test-core job
michal-gora 3a51064
wget url fixed
michal-gora a0c016f
fixed arduino api naming in package_core.yml
michal-gora b732f7a
removing additional arduino api pipeline entirely
michal-gora 5279d14
added more debug
michal-gora 7b2e477
added more debug checkpoints for finding the missing ArduinoAPI.h mis…
michal-gora 6c68f34
reverting from gitmodules to symlink and west management
michal-gora de3272f
fix: correct symlink target to include modules/lib/ path
michal-gora b7bacba
fix: use west path to locate ArduinoCore-API for archive
michal-gora ca0bcf6
fix: use 'west list -f {abspath}' instead of nonexistent 'west path'
michal-gora 24c3f94
fix: remove archive:false from arduino-api upload to fix download-art…
michal-gora 237290f
fix: make --specs=nano.specs configurable, disable for kit_pse84_ai (…
michal-gora 7b6d2af
ci: skip unsupported library tests for kit_pse84_ai (CAN, Ethernet, R…
michal-gora b671341
ci: add publish-pse84 job to release complete CI-built tarball on tag…
michal-gora 1b6f133
fixing ci triggers
michal-gora 4be79cc
adjusting config path to openocd.cfg
michal-gora c6e0ecf
ci: consolidate release publishing into release.yml, no double build
michal-gora 79d5e99
upload: use variant openocd.cfg with explicit path in upload pattern
michal-gora f138355
fixing workflow artifact referencing
michal-gora de80b8c
fixing workflow artifact referencing again
michal-gora 32b88cf
ci: deprecate release workflow and update documentation
michal-gora d6a4da0
fix: add bootloader file handling for Zephyr variants in packaging sc…
michal-gora 22eacff
fix: update OpenOCD version to 5.16.1 and add new binaries for Linux,…
michal-gora 2a0f0c4
restoring old openocd.cfg again
michal-gora ca56cea
fix: add OpenOCD upload and program patterns for Windows
michal-gora defff1e
fix: add default programmer and bootloader upload pattern for Windows…
michal-gora 247bc4d
fix: update OpenOCD bootloader upload pattern for Windows to include …
michal-gora 92f96f2
fix: enhance firmware packaging logic to handle signed and unsigned h…
michal-gora 286cb5a
fix: removing verify -> update OpenOCD bootloader upload pattern for …
michal-gora 32e26ad
fix: add UART configuration options for improved serial communication…
michal-gora a40a11c
fix: update UART configuration to ensure reliable Serial communicatio…
michal-gora de52865
feat: add script to apply Zephyr patches and ensure they are applied …
michal-gora 11b5a5f
fix: update Zephyr module path resolution and improve error handling …
michal-gora 68968e7
fix: add new tools to package_infineon_pse84_index.template.json and …
michal-gora 469baf7
fix: remove VID and PID entries from kit_pse84_ai configuration to di…
michal-gora 78305f7
fix: update toolchain URLs and checksums in package_infineon_pse84_in…
michal-gora f1ffe6a
fix: standardize naming from PSoC Edge to PSOC Edge in configuration …
michal-gora 6573f5f
fix: synchronizing forgotten variant.h definitions
michal-gora 3d9b5e7
attempting adding USB HID support
michal-gora 941ff45
HID.h fix attempt
michal-gora b2718f9
fix attempt2: include of usbd_hid.h added in llext_export.c
michal-gora fd532c3
fix HID attempt3
michal-gora bee1268
fix HID attempt4
michal-gora 2e5975b
Revert USB HID support attempt
michal-gora 96264f7
settings.json
michal-gora e76f1b8
added original boards to boards.txt and platform.txt
michal-gora 31a020c
Add conditional checks for board compatibility with Zephyr 4.4.0 in C…
michal-gora 33a13a7
Remove conditional checks for board compatibility with Zephyr 4.4.0 i…
michal-gora 21c167b
Disabling other boards by commenting out
michal-gora 47b6efd
fixing newlib incompatibility for kit_pse84_ai
michal-gora a243fc3
Added correct pinout
michal-gora 1f8b059
fix: Enable GPIO ports for additional functionality in overlay config…
michal-gora 5f4fd10
reducing package_core.yml inconsistencies 1
michal-gora 592b513
align package_core.yml with upstream/main post-merge
michal-gora be871dd
reducing package_core.yml inconsistencies 2
michal-gora 37f322a
reducing package_core.yml inconsistencies 2 revert
michal-gora 5342311
reducing package_core.yml inconsistencies 3, refactor: simplify workf…
michal-gora 218819b
refactor: streamline API archiving process in package_core.yml
michal-gora d0f4a4f
fix: correct artifact names and disable archiving for arduino-api
michal-gora 235684a
feat: add artifact upload for input test reports and disable archiving
michal-gora 2a204c3
refactor: separate release jobs to new workflow file
michal-gora 7789827
refactor: remove HEAD_REF usage in checkout actions
michal-gora 5b7ac2d
remove .vscode
michal-gora 1065b32
remove release.yml
michal-gora 7d0c01d
feat: add .gitmodules file for submodule management
michal-gora 54feef6
fix: update pip install path for Zephyr requirements in bootstrap script
michal-gora 37340c2
fix: remove imgtool Python dependencies installation workaround for P…
michal-gora 7233b3e
fix: clean up build.sh by cleaning zephyr.signed.hex logic into patch
michal-gora 4a87637
fix: changing tabs to spaces
michal-gora 94f1468
fix: remove unused TEMP_BOOTLOADERS variable and related logic from p…
michal-gora 44790af
fix: export additional ARM IRQ functions and enable shared interrupts…
michal-gora c527e5e
fix and test: add additional wrapper functions W1/W2/W3/etc. for memo…
michal-gora 7303278
fix: add bootloader path for kit_pse84_ai configuration
michal-gora 0699b5c
fix: update bootloader handling for kit_pse84_ai configuration
michal-gora eae9f7d
fix: update concurrency settings to allow parallel runs in workflows
michal-gora 1bc37c0
fix: simplify OpenOCD upload and bootloader patterns for kit_pse84_ai…
michal-gora 2e4f402
fix and test: enable flash driver and partition map for PSE84 support
michal-gora d745884
fix: add bootloader path for kit_pse84_ai configuration
michal-gora 2f24bf2
fix: streamline flash area handling in loader function
michal-gora ee753ca
fix: update flash driver and partition map configuration for PSE84 su…
michal-gora 69af116
fix: add SPI1 bus configuration for external header support
michal-gora 68ac792
fix and experiment: enable flash driver and update partition map for …
michal-gora 552be0f
fix: update flash0 base and user sketch offset for PSE84 secure XIP
michal-gora 69e5215
fix: update SPI bus configuration, disabled &spi0, only &spi1 enabled
michal-gora 44fd476
fix: set maximum frequency for SPI1 bus configuration
michal-gora e580982
fix: update OpenOCD configuration and compiler flags for improved bui…
michal-gora b037b45
fix: add machine flags for Cortex-M33 configuration
michal-gora d7f3b8d
test: main.c, test: fix spi by adjusting spi macros in variant.h
michal-gora f2090cc
fix: add link command for KIT_PSE84_AI build configuration
michal-gora 45753c7
fix: clang-format
michal-gora 6dab509
fix: cleaning main.c and testing: update upload address for KIT_PSE84…
michal-gora dfc9947
falling back to main.c with macros
michal-gora cdd2bb0
fix: update SPI configuration by removing clock-div setting for peri0…
michal-gora d5939d8
fix: add zephyr-check-size tool and update SPI bus comment in overlay
michal-gora be1ba11
fix: update bootloader path in OpenOCD commands for kit_pse84_ai
michal-gora e54a3a3
fix: update OpenOCD bootloader pattern for kit_pse84_ai to use zephyr…
michal-gora 8cbe9a1
fix: update SPI pin comments and add digital pin aliases in variant.h
michal-gora f275ff4
fix: restore cancel-in-progress behavior for concurrency in CI workflows
michal-gora 7f3b0bd
Merge branch 'main' of https://github.com/michal-gora/ArduinoCore-zephyr
michal-gora 3af1317
fix: remove obsolete OpenOCD binary files for different platforms
michal-gora 7e09ec7
fix: move bootloader configuration to kit_pse84_ai_pse846gps2dbzc4a_m…
michal-gora 032dfed
removing zephyr.signed.hex file renaming patch
michal-gora 7be7808
fix: build.sh should use zephyr.signed.hex if available
michal-gora File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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 |
|---|---|---|
| @@ -0,0 +1,171 @@ | ||
| # Copyright (c) Arduino s.r.l. and/or its affiliated companies | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
|
|
||
| # PSE84-specific release workflow: triggered automatically when package_core.yml | ||
| # completes successfully on main. Bumps the version, tags the commit, and | ||
| # publishes the ArduinoCore-zephyr_contrib package as a GitHub Release. | ||
|
|
||
| name: Release PSE84 | ||
|
|
||
| on: | ||
| workflow_run: | ||
| workflows: ["Package, test and upload core"] | ||
| types: [completed] | ||
| branches: [main] | ||
|
|
||
| jobs: | ||
|
|
||
| bump-version-and-tag: | ||
| name: Bump version, tag, and create release | ||
| runs-on: ubuntu-latest | ||
| if: ${{ github.event.workflow_run.conclusion == 'success' && github.repository == 'michal-gora/ArduinoCore-zephyr' && github.triggering_actor != 'github-actions[bot]' }} | ||
| permissions: | ||
| contents: write | ||
| outputs: | ||
| release_tag: ${{ steps.release_tag.outputs.release_tag }} | ||
| steps: | ||
|
|
||
| - uses: actions/checkout@v6 | ||
| with: | ||
| fetch-depth: 0 | ||
| fetch-tags: true | ||
|
|
||
| - name: Compute next release tag | ||
| id: release_tag | ||
| env: | ||
| RELEASE_BUMP: patch | ||
| run: | | ||
| git fetch --tags | ||
|
|
||
| EXISTING_TAG=$(git tag --points-at "${{ github.event.workflow_run.head_sha }}" --list '[0-9]*.[0-9]*.[0-9]*' --sort=-v:refname | head -n1) | ||
| if [ -n "${EXISTING_TAG}" ]; then | ||
| echo "Using existing tag on HEAD: ${EXISTING_TAG}" | ||
| echo "release_tag=${EXISTING_TAG}" >> "$GITHUB_OUTPUT" | ||
| exit 0 | ||
| fi | ||
|
|
||
| LAST_TAG=$(git tag --list '[0-9]*.[0-9]*.[0-9]*' --sort=-v:refname | head -n1) | ||
| if [ -z "${LAST_TAG}" ]; then | ||
| LAST_TAG="0.0.0" | ||
| fi | ||
|
|
||
| IFS='.' read -r MAJOR MINOR PATCH <<< "${LAST_TAG}" | ||
| case "${RELEASE_BUMP}" in | ||
| major) | ||
| MAJOR=$((MAJOR + 1)) | ||
| MINOR=0 | ||
| PATCH=0 | ||
| ;; | ||
| minor) | ||
| MINOR=$((MINOR + 1)) | ||
| PATCH=0 | ||
| ;; | ||
| *) | ||
| PATCH=$((PATCH + 1)) | ||
| ;; | ||
| esac | ||
|
|
||
| NEW_TAG="${MAJOR}.${MINOR}.${PATCH}" | ||
| echo "release_tag=${NEW_TAG}" >> "$GITHUB_OUTPUT" | ||
|
|
||
| - name: Create release (and tag if missing) | ||
| env: | ||
| GH_TOKEN: ${{ github.token }} | ||
| TAG: ${{ steps.release_tag.outputs.release_tag }} | ||
| run: | | ||
| if gh release view "${TAG}" >/dev/null 2>&1; then | ||
| echo "Release ${TAG} already exists" | ||
| else | ||
| gh release create "${TAG}" \ | ||
| --target "${{ github.event.workflow_run.head_sha }}" \ | ||
| --title "ArduinoCore-zephyr-pse84 ${TAG}" \ | ||
| --notes "Automated release for ${{ github.event.workflow_run.head_sha }}." | ||
| fi | ||
|
|
||
|
|
||
| publish-pse84-release: | ||
| name: Publish PSE84 release assets | ||
| runs-on: ubuntu-latest | ||
| needs: | ||
| - bump-version-and-tag | ||
| if: ${{ needs.bump-version-and-tag.result == 'success' }} | ||
| permissions: | ||
| contents: write | ||
| actions: read | ||
| env: | ||
| GH_TOKEN: ${{ github.token }} | ||
| GH_REPO: ${{ github.repository }} | ||
| TAG: ${{ needs.bump-version-and-tag.outputs.release_tag }} | ||
| steps: | ||
|
|
||
| - uses: actions/checkout@v6 | ||
| with: | ||
| fetch-depth: 0 | ||
| persist-credentials: false | ||
| fetch-tags: true | ||
|
|
||
| - name: Download zephyr_contrib artifact from triggering workflow run | ||
| uses: actions/download-artifact@v8 | ||
| with: | ||
| pattern: ArduinoCore-zephyr_contrib-* | ||
| path: release-assets | ||
| merge-multiple: true | ||
| run-id: ${{ github.event.workflow_run.id }} | ||
| github-token: ${{ secrets.GITHUB_TOKEN }} | ||
|
|
||
| - name: Normalize artifact filename for release tag | ||
| run: | | ||
| if [ -z "${TAG}" ]; then | ||
| echo "Release tag is empty" >&2 | ||
| exit 1 | ||
| fi | ||
|
|
||
| TAR_FILE=$(ls release-assets/ArduinoCore-zephyr_contrib-*.tar.bz2 | head -n1) | ||
| if [ -z "${TAR_FILE}" ]; then | ||
| echo "Downloaded artifact does not contain expected tarball" >&2 | ||
| exit 1 | ||
| fi | ||
|
|
||
| OLD_BASENAME=$(basename "${TAR_FILE}") | ||
| NEW_BASENAME="ArduinoCore-zephyr_contrib-${TAG}.tar.bz2" | ||
|
|
||
| if [ "${OLD_BASENAME}" != "${NEW_BASENAME}" ]; then | ||
| mv "${TAR_FILE}" "release-assets/${NEW_BASENAME}" | ||
| echo "Renamed ${OLD_BASENAME} -> ${NEW_BASENAME}" | ||
| fi | ||
|
|
||
| echo "TAR_BASENAME=${NEW_BASENAME}" >> "$GITHUB_ENV" | ||
|
|
||
| - name: Generate package index JSON | ||
| run: | | ||
| ARTIFACT_PATH="release-assets/${TAR_BASENAME}" | ||
| SIZE=$(wc -c < "${ARTIFACT_PATH}") | ||
| SHA256=$(sha256sum "${ARTIFACT_PATH}" | cut -d' ' -f1) | ||
| URL="https://github.com/${GH_REPO}/releases/download/${TAG}/${TAR_BASENAME}" | ||
|
|
||
| python3 - <<EOF | ||
| import json | ||
|
|
||
| with open("package/package_infineon_pse84_index.template.json") as f: | ||
| idx = json.load(f) | ||
|
|
||
| p = idx["packages"][0]["platforms"][0] | ||
| p["version"] = "${TAG}" | ||
| p["archiveFileName"] = "${TAR_BASENAME}" | ||
| p["url"] = "${URL}" | ||
| p["checksum"] = "SHA-256:${SHA256}" | ||
| p["size"] = "${SIZE}" | ||
|
|
||
| with open("release-assets/package_infineon_pse84_index.json", "w") as f: | ||
| json.dump(idx, f, indent=2) | ||
| EOF | ||
|
|
||
| - name: Create or update GitHub Release assets | ||
| uses: softprops/action-gh-release@v2 | ||
| with: | ||
| tag_name: ${{ env.TAG }} | ||
| name: ArduinoCore-zephyr-pse84 ${{ env.TAG }} | ||
| overwrite_files: true | ||
| files: | | ||
| release-assets/${{ env.TAR_BASENAME }} | ||
| release-assets/package_infineon_pse84_index.json |
This file contains hidden or 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 |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| name: Repackage Windows Toolchain | ||
|
|
||
| # The Zephyr SDK only ships arm-zephyr-eabi for Windows as .7z, which Arduino | ||
| # CLI does not support. This workflow downloads the .7z, repacks it as .tar.xz, | ||
| # and uploads it to the specified GitHub release of this repo — the same | ||
| # approach Arduino uses for their own hosted toolchains. | ||
| # | ||
| # Run this once after creating a new release tag, then fill in the checksum and | ||
| # size printed at the end into the Windows entry of the package index template. | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| inputs: | ||
| sdk_version: | ||
| description: 'Zephyr SDK version (e.g. 1.0.1)' | ||
| required: true | ||
| default: '1.0.1' | ||
| release_tag: | ||
| description: 'Release tag to upload the artifact to (e.g. 0.1.6)' | ||
| required: true | ||
|
|
||
| jobs: | ||
| repackage: | ||
| runs-on: windows-latest | ||
| steps: | ||
| - name: Download arm-zephyr-eabi .7z | ||
| run: | | ||
| $version = "${{ github.event.inputs.sdk_version }}" | ||
| $url = "https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v${version}/toolchain_gnu_windows-x86_64_arm-zephyr-eabi.7z" | ||
| Write-Host "Downloading $url" | ||
| Invoke-WebRequest -Uri $url -OutFile "toolchain.7z" | ||
|
|
||
| - name: Extract .7z | ||
| run: 7z x toolchain.7z -o"toolchain_extracted" -y | ||
|
|
||
| - name: Repack as .tar.xz | ||
| run: | | ||
| $version = "${{ github.event.inputs.sdk_version }}" | ||
| $tarName = "toolchain_gnu_windows-x86_64_arm-zephyr-eabi-${version}.tar.xz" | ||
| tar -cJf $tarName -C toolchain_extracted . | ||
| echo "TAR_NAME=$tarName" >> $env:GITHUB_ENV | ||
|
|
||
| - name: Compute SHA-256 and size | ||
| run: | | ||
| $hash = (Get-FileHash -Algorithm SHA256 $env:TAR_NAME).Hash.ToLower() | ||
| $size = (Get-Item $env:TAR_NAME).Length | ||
| echo "TAR_SHA256=$hash" >> $env:GITHUB_ENV | ||
| echo "TAR_SIZE=$size" >> $env:GITHUB_ENV | ||
|
|
||
| - name: Upload to GitHub Release | ||
| uses: softprops/action-gh-release@v2 | ||
| with: | ||
| tag_name: ${{ github.event.inputs.release_tag }} | ||
| files: ${{ env.TAR_NAME }} | ||
|
|
||
| - name: Print package index values | ||
| run: | | ||
| Write-Host "" | ||
| Write-Host "=== Paste these into the Windows entry of the package index template ===" | ||
| Write-Host "archiveFileName : $env:TAR_NAME" | ||
| Write-Host "url : https://github.com/${{ github.repository }}/releases/download/${{ github.event.inputs.release_tag }}/$env:TAR_NAME" | ||
| Write-Host "checksum : SHA-256:$env:TAR_SHA256" | ||
| Write-Host "size : $env:TAR_SIZE" |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder the scope of build check for this
build.ymlworkflow. It looks like an arbitrary set of checks for boards and examples.How this should look when contributing to the official repo?