A centralized collection of reusable GitHub Actions designed to streamline and automate every stage of the analyzer release process. This repository serves as a versatile toolbox, offering modular automations to eliminate manual, repetitive steps and reduce friction across squads managing analyzer projects. Whether standardizing changelog generation, automating version bumps, handling release publishing, or coordinating cross-repository tasks, these actions help teams back away from cumbersome workflows and focus more on code quality. Pick and combine the automations best suited for your analyzer’s unique release requirements, and easily extend the toolbox to cover new scenarios as they arise.
- Check Releasability Status: Checks the releasability status and extracts the version if successful.
- Create Integration Ticket: Creates a Jira integration ticket with a custom summary and links it to another existing ticket.
- Create Jira Release Ticket: Automates the creation of an "Ask for release" ticket in Jira.
- Create Jira Version: Creates a new version in a Jira project, with the ability to automatically determine the next version number.
- Get Jira Release Notes: Fetches Jira release notes and generates the release notes URL for a given project and version.
- Get Jira Version: Extracts a Jira-compatible version number from a release version by formatting it appropriately for Jira.
- Get Release Version: Extracts the release version from the repox status on a specified branch.
- Notify Slack on Failure: Sends a Slack notification when a job fails.
- Publish GitHub Release: Publishes a GitHub Release with notes fetched from Jira or provided directly.
- Release Jira Version: Releases a Jira version and creates the next one.
- Update Analyzer: Updates an analyzer version in SonarQube or SonarCloud and creates a pull request.
- Update Release Ticket Status: Updates the status of a Jira release ticket and can change its assignee.
- Update Rule Metadata: Automates updating rule metadata across all supported languages using the rule-api tooling.
The repository includes an update-action-versions workflow that creates a pull request to update all internal action references to use a specific commit or the latest version from the master branch. This workflow scans all action.yml files in the repository and updates any references to SonarSource/release-github-actions actions to point to the specified reference, ensuring consistency across all actions when updates are made to shared components.