|
| 1 | + |
| 2 | +## Eclipse Plugin Release Steps |
| 3 | + |
| 4 | +**Protocol Version Verification** |
| 5 | + |
| 6 | +- Ensure the Snyk Language Server Protocol version is correct in the plugin. |
| 7 | + - `REQUIRED_LS_PROTOCOL_VERSION` in `/io.snyk.eclipse.plugin/src/main/java/io/snyk/languageserver/download/LsBinaries.java` |
| 8 | + |
| 9 | +**Update Version Numbers** |
| 10 | + |
| 11 | +- Update the release version in all files that specify the Eclipse plugin version. |
| 12 | + |
| 13 | +- Do not change values that do not represent the plugin version. |
| 14 | + |
| 15 | + |
| 16 | +**Update Changelog** |
| 17 | + |
| 18 | +- In the plugin/extension repo, make sure the the Changelog is updated with the correct version to be released and the correct changes in the release. |
| 19 | + - Make sure Early Access are specified correctly for new feature. |
| 20 | + |
| 21 | + |
| 22 | + |
| 23 | +**Build Artifacts** |
| 24 | + |
| 25 | +- Use `mvnw clean package` or `mvnw clean verify` to build the project and ensure artifacts are created with the correct versions. |
| 26 | + |
| 27 | +- Verify the plugin JAR file in the `target/repository/plugins` folder to confirm the version is correct. |
| 28 | + |
| 29 | + |
| 30 | +**Testing** |
| 31 | + |
| 32 | +- Ensure all tests for the latest commit have passed before proceeding with the release. |
| 33 | + |
| 34 | + |
| 35 | +**Release via GitHub Actions** |
| 36 | + |
| 37 | +- If you want to do a hotfix with a subset of commits from main, create a hotfix branch off the previous release tag. |
| 38 | + - For the hotfix release, cherry pick the commits you want to go into the hotfix release. |
| 39 | + |
| 40 | +- Trigger the release workflow in GitHub Actions. |
| 41 | + - If this is a hotfix, select the hotfix branch. |
| 42 | + |
| 43 | + |
| 44 | +**Release Notes** |
| 45 | + |
| 46 | +- Edit or generate the release notes on GitHub for this release. |
| 47 | + - Its okay to include all items from any intermediate hotfix releases in the release notes. |
| 48 | + |
| 49 | +**Install and Verify Snyk Plugin in Eclipse** |
| 50 | + |
| 51 | +- Open Eclipse, navigate to `Help` → `Eclipse Marketplace`. |
| 52 | + |
| 53 | +- Search for "Snyk" and install the latest version of the plugin. |
| 54 | + |
| 55 | +- Go to `Eclipse` → `About Eclipse`, click `Installation Details`. |
| 56 | + |
| 57 | +- Search for "Snyk" and verify that the installed version matches the intended release[6](https://www.clear.rice.edu/comp310/Eclipse/installation.html)[12](https://vaadin.com/docs/v8/framework/installing/installing-eclipse). |
| 58 | + |
| 59 | + |
| 60 | +**Verify Snyk CLI** |
| 61 | + |
| 62 | +- Ensure the Snyk CLI is installed, set to the `stable` release channel, and automatic updates are enabled. |
| 63 | + |
| 64 | +- Execute the CLI binary in the terminal and verify that the version matches the intended release. |
| 65 | + - The correct version can be found in the `#hammerhead-releases` channel in Slack or in the github cli repo. |
| 66 | + https://github.com/snyk/cli/releases |
| 67 | + |
| 68 | + |
| 69 | +**Manual Scan** |
| 70 | + |
| 71 | +- Run a manual scan using the latest version of the Eclipse plugin. |
| 72 | + |
| 73 | + |
| 74 | +**Publish on Marketplace** |
| 75 | + |
| 76 | + |
| 77 | +- Login with 1Password |
| 78 | + |
| 79 | +- Go to Edit: https://marketplace.eclipse.org/content/snyk-security/edit |
| 80 | + |
| 81 | +- Scroll to "Solution Version(s)". |
| 82 | + |
| 83 | +- Edit the previous release version. |
| 84 | + |
| 85 | +- Change the version number to the new version number. |
| 86 | + |
| 87 | +- Scroll to the bottom of the page and press "Update". |
| 88 | + |
| 89 | +- Confirm the update took place in Eclipse Marketplace in the IDE. |
0 commit comments