Skip to content

ci(release): converge on the shared release.yml - #136

Merged
rubenvdlinde merged 1 commit into
developmentfrom
ci/converge-release-yml
Aug 18, 2026
Merged

ci(release): converge on the shared release.yml#136
rubenvdlinde merged 1 commit into
developmentfrom
ci/converge-release-yml

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

What

One .github/workflows/release.yml replaces this repo's per-channel release callers. It calls the shared ConductionNL/.github/.github/workflows/release.yml@main for all three channels:

job fires on release-type
unstable push to development unstable
beta push to beta beta
stable push to main stable

Deleted: release-beta.yml, release-stable.yml

Why

The old release-beta.yml / release-stable.yml pair edits appinfo/info.xml in the working tree only and never commits it, so the tag it cuts names a commit that still shows the previous version. Nextcloud's own release template asserts

[ "$APP_VERSION" = "v$(xpath appinfo/info.xml //version)" ]

which is simply wrong for a stable release, and harmless only for timestamped dev builds.

The shared release.yml commits the bump to a release/v<version> branch, tags that commit, and opens a pull request to bring the integration branch up — so the tag and the packaged tarball agree, without anything pushing at a protected branch. That PR routing is what ConductionNL/.github#502 added.

Behaviour change

⚠️ This repo gains a channel it does not have today. It has no release-development.yml, so it has never published an unstable build. The converged workflow adds an unstable job that fires on every push to development, publishing a GitHub prerelease with a .tar.gz (never uploaded to the Nextcloud app store — the shared workflow skips that step for this channel). Beta and stable are unchanged in when they fire. This is an addition of behaviour, not a conversion — flagging it rather than letting it hide in the diff.

Verified on this branch

  • release.yml parses as YAML; exactly three jobs, unstable / beta / stable, all pointing at ConductionNL/.github/.github/workflows/release.yml@main
  • app-name matches <id> in appinfo/info.xml
  • every old caller returns 404 on this branch
  • compare development... touches only .github/workflows/release*.yml

Replaces the per-channel release callers with a single release.yml that
calls ConductionNL/.github/.github/workflows/release.yml@main for all
three channels.

Removed: release-beta.yml release-stable.yml
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/launchpad @ f416120

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
format
composer ✅ 104/104
npm ✅ 525/525
app:check-code ⏭️
info.xml
REUSE
PHPUnit
Newman
Playwright
Hydra gates

Quality workflow — 2026-08-18 15:38 UTC

Download the full PDF report from the workflow artifacts.

@rubenvdlinde
rubenvdlinde merged commit 4c9deba into development Aug 18, 2026
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant