From e71d8edfde83dac4bf34cfd450b60615b47ca70b Mon Sep 17 00:00:00 2001 From: jschneck Date: Tue, 9 Jun 2026 18:47:25 -0400 Subject: [PATCH 1/6] ci: add reusable CI (build on PR, publish on tag) Calls avocado-linux/actions/.github/workflows/extension.yml@v1: install + ext build against the 2024 SDK on PRs; package + keyless publish to connect on tags. Build target auto-derived from avocado.yaml. --- .github/workflows/ci.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..deaeb06 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,19 @@ +name: CI + +# Thin caller — all logic lives in the shared reusable workflow. +# See https://github.com/avocado-linux/actions +on: + pull_request: + push: + tags: + - '[0-9]+.[0-9]+.[0-9]+' + - '[0-9]+.[0-9]+.[0-9]+-*' + +permissions: + contents: read + id-token: write # keyless publish to connect on tags (GitHub OIDC) + +jobs: + ci: + uses: avocado-linux/actions/.github/workflows/extension.yml@v1 + # All inputs optional; the build target is auto-derived from avocado.yaml. From 7e0124295e25b6c3a9af65096a22ccf98aa039ec Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Sun, 14 Jun 2026 16:24:37 -0400 Subject: [PATCH 2/6] chore: set extension version to 0.1.0 --- avocado.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avocado.yaml b/avocado.yaml index 2f4004b..98bff8f 100644 --- a/avocado.yaml +++ b/avocado.yaml @@ -9,7 +9,7 @@ supported_targets: extensions: avocado-ext-webkit: - version: 2024.1.0 + version: 0.1.0 release: r0 summary: WPE WebKit browser and display utilities description: WPE WebKit browser and display utilities From c41c81f99e5ac57c215ff9ef095e34c8da169de1 Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Sun, 14 Jun 2026 16:42:19 -0400 Subject: [PATCH 3/6] ci: adopt avocado-linux/actions v1 reusable workflows + changelog - test.yml: PR build check (target raspberrypi4 @ 2026/edge) - release.yml: tag/dispatch package + publish (PAT auth) - CHANGELOG.md: 0.1.0 initial release --- .github/workflows/ci.yml | 19 ------------------- .github/workflows/release.yml | 27 +++++++++++++++++++++++++++ .github/workflows/test.yml | 21 +++++++++++++++++++++ CHANGELOG.md | 12 ++++++++++++ 4 files changed, 60 insertions(+), 19 deletions(-) delete mode 100644 .github/workflows/ci.yml create mode 100644 .github/workflows/release.yml create mode 100644 .github/workflows/test.yml create mode 100644 CHANGELOG.md diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index deaeb06..0000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: CI - -# Thin caller — all logic lives in the shared reusable workflow. -# See https://github.com/avocado-linux/actions -on: - pull_request: - push: - tags: - - '[0-9]+.[0-9]+.[0-9]+' - - '[0-9]+.[0-9]+.[0-9]+-*' - -permissions: - contents: read - id-token: write # keyless publish to connect on tags (GitHub OIDC) - -jobs: - ci: - uses: avocado-linux/actions/.github/workflows/extension.yml@v1 - # All inputs optional; the build target is auto-derived from avocado.yaml. diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..12b1aae --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,27 @@ +name: Release + +# Package + publish on a version tag. The matrix lives here (the caller owns it); +# each leg calls the single-combo reusable helper. The publish feed is derived from +# distro-release/distro-channel. The tag must equal the avocado.yaml version. +on: + push: + tags: + - '[0-9]+.[0-9]+.[0-9]+' + - '[0-9]+.[0-9]+.[0-9]+-*' + workflow_dispatch: + +jobs: + publish: + strategy: + fail-fast: false + matrix: + include: + - { target: raspberrypi4, distro-release: "2026", distro-channel: edge } + uses: avocado-linux/actions/.github/workflows/extension-release.yml@v1 + with: + target: ${{ matrix.target }} + distro-release: ${{ matrix.distro-release }} + distro-channel: ${{ matrix.distro-channel }} + secrets: + connect-token: ${{ secrets.AVOCADO_CONNECT_TOKEN }} + connect-org: ${{ secrets.AVOCADO_CONNECT_ORG }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..08767ea --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,21 @@ +name: Test + +# "Does it build" check on PRs. The matrix lives here (the caller owns it); each leg +# calls the single-combo reusable helper. Add rows for more targets/feeds as needed. +on: + pull_request: + workflow_dispatch: + +jobs: + build: + strategy: + fail-fast: false + matrix: + include: + - { target: raspberrypi4, distro-release: "2026", distro-channel: edge } + uses: avocado-linux/actions/.github/workflows/extension-test.yml@v1 + with: + target: ${{ matrix.target }} + distro-release: ${{ matrix.distro-release }} + distro-channel: ${{ matrix.distro-channel }} + repo-url: ${{ matrix.repo-url }} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..4e080a3 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,12 @@ +# Changelog + +All notable changes to avocado-ext-webkit are documented in this file. +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [0.1.0] + +### Added +- Initial release: WPE WebKit browser and display utilities. +- CI via the shared `avocado-linux/actions` reusable workflows: PR build check + (`test.yml`) and tag-driven package + publish to the Avocado feed (`release.yml`). From 2730a601141ba2c0d91817ab0f9df1f2a4fa5482 Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Tue, 23 Jun 2026 07:37:42 -0400 Subject: [PATCH 4/6] ci(release): also publish to 2024/edge-next Add a 2024/edge-next matrix row alongside 2026/edge so this extension also publishes into the 2024 pre-release test channel (edge-next), leaving 2024/edge served from its previous build. Renderers + the 854 bucket policy now permit writes to 2024/edge-next/*. --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 12b1aae..3320477 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,6 +17,7 @@ jobs: matrix: include: - { target: raspberrypi4, distro-release: "2026", distro-channel: edge } + - { target: raspberrypi4, distro-release: "2024", distro-channel: edge-next } uses: avocado-linux/actions/.github/workflows/extension-release.yml@v1 with: target: ${{ matrix.target }} From a230ec56a706573c9ee62c73e4510b2f79918c29 Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Tue, 23 Jun 2026 14:35:10 -0400 Subject: [PATCH 5/6] ci(test): default CI to test against 2024/edge-next Point the test workflow's matrix at 2024/edge-next (was 2026/edge) so PRs validate each extension against the 2024 pre-release channel we now build/render. release.yml still publishes to both 2026/edge and 2024/edge-next. --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 08767ea..06c3cec 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: include: - - { target: raspberrypi4, distro-release: "2026", distro-channel: edge } + - { target: raspberrypi4, distro-release: "2024", distro-channel: edge-next } uses: avocado-linux/actions/.github/workflows/extension-test.yml@v1 with: target: ${{ matrix.target }} From d7a592fc1f5c0ad25c17efdfaf1836d48c93aac4 Mon Sep 17 00:00:00 2001 From: Justin Schneck Date: Tue, 23 Jun 2026 14:56:48 -0400 Subject: [PATCH 6/6] ext: SDK image is release-scoped, not channel-scoped Use docker.io/avocadolinux/sdk:{{ env.AVOCADO_DISTRO_RELEASE }} (drop the -{{ env.AVOCADO_DISTRO_CHANNEL }} suffix). The SDK container is published per release, not per channel, so a channel like edge-next has no matching image tag; the release tag resolves for any channel (incl. edge-next test legs). --- avocado.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/avocado.yaml b/avocado.yaml index 98bff8f..6672d33 100644 --- a/avocado.yaml +++ b/avocado.yaml @@ -42,4 +42,4 @@ extensions: overlay: overlays/reterminal-dm sdk: - image: docker.io/avocadolinux/sdk:{{ env.AVOCADO_DISTRO_RELEASE }}-{{ env.AVOCADO_DISTRO_CHANNEL }} + image: docker.io/avocadolinux/sdk:{{ env.AVOCADO_DISTRO_RELEASE }}