Skip to content

ci: add GitHub Pages PPA and rename release workflow#128

Merged
rtibbles merged 4 commits into
mainfrom
trixie_little_hobbitses
Apr 2, 2026
Merged

ci: add GitHub Pages PPA and rename release workflow#128
rtibbles merged 4 commits into
mainfrom
trixie_little_hobbitses

Conversation

@rtibbles

@rtibbles rtibbles commented Apr 2, 2026

Copy link
Copy Markdown
Member

Summary

Rename the release workflow from build_debian.yml to release.yml and add GitHub Pages PPA publishing alongside the existing Launchpad PPA. This lets Debian users install kolibri-server without relying on Launchpad's SHA-1 signed keys.

Two new jobs: build_binary_package builds a .deb in parallel with the Launchpad source upload, and publish_github_pages_ppa uses reprepro + actions/deploy-pages to publish an APT repository after the release approval gate.

References

Related to the same fix applied in kolibri-installer-debian. That repo uses a gh-pages branch approach because the publish workflow is reusable across repos. Since this workflow only ever runs in this repository, we can use actions/deploy-pages directly, avoiding storing PPA state in git.

Reviewer guidance

  • This can be validated by re-running the release workflow via workflow_dispatch after configuring the required secrets/variable:
    • Secret: DEBIAN_REPO_SIGNING_KEY (shared from kolibri-installer-debian)
    • Variable: DEBIAN_REPO_SIGNING_KEY_ID (shared from kolibri-installer-debian)
    • GitHub Pages source set to "GitHub Actions" in repo settings
  • The Launchpad jobs are unchanged — the new jobs run in parallel after the approval gate
  • publish_github_pages_ppa at .github/workflows/release.yml:231 is the main new job to review

AI usage

This PR was authored collaboratively with Claude Code. The design was brainstormed iteratively, then implemented following a written plan. The workflow structure was modeled on kolibri-installer-debian's publish_debian_repo.yml, adapted to use actions/deploy-pages. All changes were validated with the repo's pre-commit hooks (yamlfmt, actionlint).

rtibbles and others added 4 commits April 2, 2026 10:18
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds two new jobs to the release workflow:
- build_binary_package: builds a binary .deb for the GH Pages PPA
- publish_github_pages_ppa: uses reprepro to build an APT repo and
  deploys it via actions/deploy-pages

Requires DEBIAN_REPO_SIGNING_KEY secret and DEBIAN_REPO_SIGNING_KEY_ID
variable to be configured (shared from kolibri-installer-debian).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update all actions across workflows to current major versions:
- checkout v4 → v6
- upload-artifact v4 → v7
- download-artifact v4 → v8
- setup-python v5 → v6
- upload-pages-artifact v3 → v4
- deploy-pages v4 → v5
- skip-duplicate-actions master → v5

Add dependabot configuration for weekly GitHub Actions updates.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@rtibbles rtibbles force-pushed the trixie_little_hobbitses branch from 8461ef1 to ab1294d Compare April 2, 2026 20:08
@rtibbles rtibbles marked this pull request as ready for review April 2, 2026 20:10
@rtibbles rtibbles merged commit 527dfa5 into main Apr 2, 2026
15 checks passed
@rtibbles rtibbles deleted the trixie_little_hobbitses branch April 2, 2026 20:28
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