Skip to content

Releases: camaraproject/tooling

v0.3.0

27 Mar 13:25
1a9eb0e

Choose a tag to compare

CAMARA Release Automation

v0.3.0 adds the CAMARA Release Automation system to the tooling repository. This system provides end-to-end release workflow automation for CAMARA API repositories, handling release planning, snapshot creation, review PR generation, changelog updates, and publication — driven by a single reusable GitHub Actions workflow.

The release automation was developed on the release-automation branch across 30+ PRs and validated on multiple API repositories (ReleaseTest, QualityOnDemand, ConsentInfo, ClickToDial) via the ra-v1-rc tag before merging to main.

Key Components

  • Reusable workflow: .github/workflows/release-automation-reusable.yml
  • 7 shared actions: create-snapshot, derive-release-state, post-bot-comment, sync-release-issue, update-issue-section, update-readme-release-info, validate-release-plan
  • Python automation modules: 17 modules in release_automation/scripts/
  • Mustache templates: Bot messages, issue/PR bodies, README and changelog templates
  • Documentation: Repository setup, technical architecture, branching model
  • Test suite: 565 unit tests
  • Caller workflow template: release_automation/workflows/release-automation-caller.yml

Changes since v0.2.3

Core Release Automation

GitHub App Identity

  • Use GitHub App token for protected branch operations by @hdamker in #74
  • Use GitHub App identity for bot commits by @hdamker in #77
  • Derive bot identity from token instead of hardcoding by @hdamker in #78
  • Resolve bot identity via /users/ lookup instead of /user by @hdamker in #79
  • Consistent App bot identity for all workflow activities by @hdamker in #81

Release Issue and PR Enhancements

  • Pre-RC fixes: body marker lookup, bot comment tokens, README template by @hdamker in #83
  • Harmonize "base commit" to "source commit" terminology by @hdamker in #86
  • Always refresh Release Issue body in PLANNED state by @hdamker in #87
  • Add API readiness checklist to Release Issue and Review PR by @hdamker in #90
  • Redesign candidate changes section for codeowner triage by @hdamker in #91
  • Surface non-critical post-publish warnings in Release Issue by @hdamker in #94
  • Guard config drift comment and keep issue open on sync anomalies by @hdamker in #96

Features

  • Add pointer branches for published releases by @hdamker in #93
  • Use api_name for CHANGELOG section headings by @hdamker in #97
  • Rename post-release sync branch by @hdamker in #98
  • Auto-strip candidate changes block from CHANGELOG on PR merge by @hdamker in #102
  • Use api_name in CHANGELOG release summary by @hdamker in #107
  • Add pre-snapshot wip version check by @hdamker in #109
  • CHANGELOG compare base depends on release type by @hdamker in #130

Workflow Improvements

  • Switch SHA-pinned official actions to floating major tags by @hdamker in #104
  • Update caller workflow template to reference @ra-v1-rc by @hdamker in #106
  • Resolve tooling checkout ref from called workflow sha by @hdamker in #111
  • Sync release issue from post-action state by @hdamker in #115
  • Reuse legacy release metadata fallback for version calculation by @hdamker in #117
  • Resolve dependency versions from VERSION.yaml by @hdamker in #119
  • Pre-GA workflow cleanup by @hdamker in #122
  • Copy README release info from tag in post-release sync PR by @hdamker in #124
  • Skip redundant label update on newly created Release Issues by @hdamker in #132

Bug Fixes

  • Guard empty PR link in issue_created bot message by @hdamker in #105

Documentation

  • Repository setup for 3-ruleset branch protection design by @hdamker in #75
  • Update branching model for sequential merge strategy by @hdamker in #133

Repository Management

Full Changelog: v0.2.3...v0.3.0

v0.2.3

24 Mar 15:56
92ab6d6

Choose a tag to compare

What's Changed

  • Add workflow to update floating tag by @hdamker in #92
  • chore(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #100
  • fix(pr-validation): simplify release-plan.yaml result reporting by @hdamker in #127
  • docs: update README for v0.2.3 release by @hdamker in #129

Full Changelog: v0.2.2...v0.2.3

v0.2.2

22 Feb 14:59

Choose a tag to compare

What's Changed

  • pr_validation: API file existence check + SignalYY/SyncYY meta-release names by @hdamker in #85

Full Changelog: v0.2.1...v0.2.2

v0.2.1

19 Feb 08:11
d2c98b9

Choose a tag to compare

What's Changed

  • Raise requests version floor to >=2.32.4 by @hdamker in #62
  • Remove 'none' option from release_track in validation schema by @hdamker in #66
  • Add release-automation-reusable.yml placeholder by @hdamker in #68
  • chore(deps): bump tj-actions/changed-files from 47.0.0 to 47.0.2 by @dependabot[bot] in #64
  • Fix: handle 403 gracefully on fork PRs in pr_validation by @hdamker in #80

Full Changelog: v0.2.0...v0.2.1

v0.2.0

27 Jan 15:49
72698f8

Choose a tag to compare

What's Changed

  • Add release-plan validation support by @hdamker in #48
  • Linting rules synchronisation with Commonalities by @rartych in #59
  • chore(deps): bump actions/upload-artifact from 4 to 6 by @dependabot[bot] in #56
  • chore(deps): bump actions/setup-python from 4 to 6 by @dependabot[bot] in #54
  • chore(deps): bump actions/github-script from 7.0.1 to 8.0.0 by @dependabot[bot] in #58
  • chore(deps): bump actions/checkout from 4 to 6 by @dependabot[bot] in #55

New Contributors

Full Changelog: v0.1.1...v0.2.0