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
Copy file name to clipboardExpand all lines: CLAUDE.md
+26Lines changed: 26 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,10 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
6
6
7
7
This is a collection of reusable GitHub Actions for automating SonarSource analyzer releases. Actions handle Jira integration (tickets, versions, release notes), GitHub releases, cross-repository updates, and Slack notifications.
8
8
9
+
## Jira Project
10
+
11
+
Related Jira tickets for this project are tracked in the **GHA** (GitHub Automation) project. When available, use the Jira MCP to access ticket details (e.g., `GHA-123`).
12
+
9
13
## Branching
10
14
11
15
**Important:** Changes must always be made on a feature branch, never directly on `master`.
@@ -14,6 +18,14 @@ This is a collection of reusable GitHub Actions for automating SonarSource analy
14
18
- Adapt `<feature-name>` based on the task/prompt (use lowercase, hyphen-separated)
15
19
- If already on a feature branch, do not create a new branch—continue working on the current branch
16
20
21
+
## Documentation
22
+
23
+
**Important:** When making any code changes, check if the related README or documentation needs to be updated. Each action has its own `README.md`, and workflow documentation is in `docs/`. Keep documentation in sync with code changes.
24
+
25
+
When creating a new action:
26
+
- Add a `README.md` to the action's directory documenting inputs, outputs, and usage
27
+
- Update the main `README.md` at the repository root to link to the new action
28
+
17
29
## Testing
18
30
19
31
**Important:** When making any code changes, always check if there are related tests that need to be updated. Always run the tests after making changes to ensure nothing is broken.
@@ -95,3 +107,17 @@ env:
95
107
INPUT_BRANCH: ${{ inputs.branch }}
96
108
run: echo "$INPUT_BRANCH"
97
109
```
110
+
111
+
### Pinning External Actions
112
+
113
+
**Important:** All GitHub Actions from outside the SonarSource organization must be pinned to a full commit SHA (not a tag). Add a comment with the version number for readability.
114
+
115
+
```yaml
116
+
# Bad - using tag
117
+
- uses: actions/checkout@v4
118
+
119
+
# Good - pinned to commit SHA with version comment
Copy file name to clipboardExpand all lines: docs/SETUP_AUTOMATED_RELEASE.md
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,10 @@ For detailed workflow documentation (inputs, outputs, behavior), see [AUTOMATED_
8
8
9
9
Before the workflow will work, complete these steps:
10
10
11
+
### Releasability Status
12
+
13
+
-[ ]**Ensure releasability checks are configured** for your repository. The workflow verifies releasability status on the branch before proceeding with the release. This prevents creating REL tickets and other artifacts if the build is not releasable.
14
+
11
15
### Jira Configuration
12
16
13
17
-[ ]**Add `Jira Tech User GitHub` as Administrator** on your Jira project (required to create/release versions)
@@ -296,3 +300,15 @@ Specify a different runner:
296
300
```yaml
297
301
runner-environment: "sonar-s"
298
302
```
303
+
304
+
### Releasability Check
305
+
306
+
The workflow checks releasability status by default. To disable or customize:
307
+
```yaml
308
+
# Disable releasability check entirely
309
+
check-releasability: false
310
+
311
+
# Check releasability but allow failed optional checks
0 commit comments