Merged
Conversation
…rations - Added a new script `generateChangelog.sh` to automate changelog generation for plugins based on git logs. - Updated `build.gradle` files across multiple modules to disable specific tasks related to plugin verification and building searchable options. - Modified GitHub Actions workflows to improve version tagging and release management, including new inputs for release type and versioning. - Enhanced the `release.yml` workflow to resolve versions and tags dynamically based on input parameters.
- Changed the test command in the release.yml workflow to explicitly run tests for the Checkmarx plugin using the `:plugin-checkmarx-ast:test` task instead of the generic test command.
- Modified the test command in the release.yml workflow to target the correct test class path for the Checkmarx plugin integration tests.
- Updated the `generateChangelog.sh` script to use `awk` for extracting the commit hash, enhancing readability and maintainability of the code.
- Modified `generateChangelog.sh` to improve markdown formatting and streamline the output process for changelogs. - Updated `release.yml` to write the release body to a temporary file, enhancing clarity and organization of the release notes.
…et points from commit messages in `generateChangelog.sh`
- Updated `generateChangelog.sh` to include emojis in section headers for better visual distinction. - Modified `release.yml` to dynamically build the release name based on the tag and timestamp, improving clarity in release identification.
…ugins - Updated `release.yml` to generate changelogs only for plugins being released as NEW, based on the specified release type. - Improved organization of the changelog sections by adding conditional checks and formatting adjustments.
…dev flag - Updated `generateChangelog.sh` to simplify usage by removing the `--dev` argument from the usage instructions and argument parsing. - Modified `release.yml` to eliminate the conditional `--dev` flag when generating changelogs for both Checkmarx and devassist plugins, streamlining the workflow.
…ase type - Modified `release.yml` to conditionally set the `product_name` based on the `releaseType` input, allowing for more flexible naming for Checkmarx and DevAssist plugins.
…t execution - Updated `release.yml` to include a new `skip_tests` input, allowing users to optionally skip integration tests during the release process. - Adjusted conditions in the `testIntegration` and `release` jobs to accommodate the new input, enhancing workflow flexibility.
…ests before proceeding - Modified the `release.yml` file to enhance the conditional logic for the `release` job, ensuring it only runs if integration tests are successful or skipped, in addition to checking for valid `rchannels` input. This improves the reliability of the release process.
…plugins - Updated `nightly.yml` to generate and output `ast_version` and `devassist_version` alongside `tag_version`, improving version tracking for plugin releases. - Modified `release.yml` to require `ast_version` and `devassist_version` as inputs, ensuring that versioning is explicitly defined for the Checkmarx and DevAssist plugins during the release process.
- Changed the nightly job in `nightly.yml` to reference the `feature/release-pipeline-v2` branch of the release workflow, ensuring alignment with the latest development efforts for the Checkmarx plugin.
- Changed the nightly job in `nightly.yml` to reference the `main` branch of the release workflow, aligning with the latest stable version for the Checkmarx plugin.
|
Great job! No new security vulnerabilities introduced in this pull request |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This branch introduces automations and enhancements related to the release pipeline for the JetBrains plugin, focusing primarily on CI/CD workflow improvements, scripting for changelog automation, and more flexible release configuration.
🔧 Key Improvements / Changes
Automated Changelog Generation
Added a new script (generateChangelog.sh) to produce formatted plugin changelogs from Git history.
Script refinements: improved commit hash extraction, formatting clean-up, whitespace trimming, emoji headings for readability, and simplified usage flags.
Release Workflow Enhancements (GitHub Actions)
Updated release.yml workflow to:
Support dynamic version tagging and version inputs (ast_version, devassist_version) for plugin releases.
Output version metadata during nightly and release runs for better traceability.
Conditionally generate changelogs only for plugins marked as NEW releases.
Introduce a skip_tests option to optionally skip integration tests during release.
Strengthened conditional logic so the release will only run once tests pass (or are intentionally skipped).
More flexible workflow logic for naming releases and handling product type differences.
Test Task Fixes
Adjusted test commands to ensure the correct test tasks run for the Checkmarx plugin within the CI workflow.
Nightly Workflow Alignment
Changes to the nightly pipeline reference this feature branch appropriately, ensuring that releases are coordinated with the latest development iteration.