You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This directory contains GitHub Actions workflows for automated building, testing, security scanning, and publishing of the FHIR Converter library.
5
+
This directory contains GitHub Actions workflows for automated versioning, building, testing, security scanning, and publishing of the FHIR Converter library.
6
6
7
7
## Workflows
8
8
9
-
### `build-and-publish.yml` - Main CI/CD Pipeline
9
+
### `auto-version.yml` - Automatic Versioning on PR Merge
10
10
11
-
**Purpose**: Complete DevSecOps pipeline for building, testing, securing, and optionally publishing versioned releases.
11
+
**Purpose**: Automatically versions and tags every PR merged to `main`, then triggers the build-and-publish pipeline.
12
12
13
-
**Trigger**: Manual (`workflow_dispatch`)
13
+
**Trigger**: Automatic on PR merge to `main` (`pull_request: types: [closed]`)
14
+
15
+
**Behavior**:
16
+
17
+
-**Default (no tag on PR branch)**: Bumps the patch version of the latest semver tag on `main` (e.g., v1.2.3 -> v1.2.4)
18
+
-**Custom version (tag on PR branch)**: If the PR author created a semver git tag on their branch (e.g., `v2.0.0`), that version is used instead
19
+
-**CHANGELOG**: When a PR has a version tag, the CHANGELOG is updated with the PR title and body
20
+
-**Build trigger**: After tagging, dispatches `build-and-publish.yml` with `publish=true`
21
+
22
+
**How to use as a contributor**:
23
+
24
+
For most PRs, nothing special is needed. The patch version bumps automatically.
25
+
26
+
For new features or breaking changes, tag your branch before merging:
27
+
28
+
```bash
29
+
git tag v1.3.0
30
+
git push origin v1.3.0
31
+
```
32
+
33
+
See [CONTRIBUTING.md](../../CONTRIBUTING.md) for details.
34
+
35
+
**Secrets required**:
36
+
37
+
-`RELEASE_TOKEN`: Classic PAT with `repo` + `workflow` scopes. Used to push to the protected `main` branch and trigger downstream workflows.
**Purpose**: Complete DevSecOps pipeline for building, testing, securing, and optionally publishing versioned releases. Typically triggered automatically by `auto-version.yml`, but can also be run manually.
69
+
70
+
**Trigger**: Manual (`workflow_dispatch`) or dispatched by `auto-version.yml`
14
71
15
72
**Inputs**:
16
73
@@ -21,48 +78,48 @@ This directory contains GitHub Actions workflows for automated building, testing
0 commit comments