Skip to content

Staging, Versioning & CI

Reproducible builds are the foundation of reliable IG delivery. These patterns ensure that what works on your laptop works in CI, that consumers can trust version numbers, and that every pull request produces a previewable site. The goal is to eliminate 'works on my machine' problems and give reviewers confidence in what they're approving.

CI and versioning patterns address build reliability and release management:

  • Local builds differ from CI results
  • Consumers don't know which versions are stable
  • No preview for pull request reviews
  • Tracking upstream changes during co-development is manual and error-prone
  • Release builds need more validation than feature builds

The Staging, Versioning & CI provide essential capabilities:

SemVer and Release Channels

Publish predictable versions and previews so consumers know what to expect. CI builds provide instant feedback, snapshots let integrators test against latest, and releases provide stable baselines for production use.

Key Benefits: - Discoverable artifacts


Local Build Parity

Ensure the same toolchain runs locally and in CI

Key Benefits: - Fewer "works on my machine" issues


GitHub Actions Pipeline

Establish standard CI for GitHub-hosted IG repositories that builds, validates, and deploys on every push. Reviewers can see rendered output before merging, and releases are automated from tags.

Key Benefits: - Rapid reviews


GitLab CI Pipeline

Establish standard CI for GitLab-hosted IG repositories, providing equivalent capabilities to the GitHub Actions pipeline. Essential for organisations using GitLab for private hosting or enterprise features.

Key Benefits: - Parity with GitHub workflows - Works with self-hosted GitLab


Current Version Dependency

Use the special current version symbol to depend on the latest CI build of an upstream IG, enabling rapid integration testing during active co-development phases.

Key Benefits: - Faster feedback on integration issues - No manual version bumping during co-development - Early detection of breaking changes


Auto-Builder vs Local Builds

Use the HL7 IG Auto-Builder for rapid feedback during feature development, reserving local builds for release preparation and downstream integration testing.

Key Benefits: - Fast iteration during development - Thorough validation before release - Catches integration issues early