-
Notifications
You must be signed in to change notification settings - Fork 37
Creating a Release of the SAF CLI
George M. Dias edited this page Jan 3, 2024
·
49 revisions
NOTE: If there aren't any Dependency Updates
when viewing the draft release, check the Actions and ensure that all dependabot
actions have executed successfully.
- Make sure you're on the most recent commit on the SAF CLI by running
git pull
. - Bump the SAF CLI version number in the
VERSION
file andpackage.json
- It is a good idea to manually check and update the version of any
@mitre
dependencies in thepackage.json
file.
- It is a good idea to manually check and update the version of any
- Run
npm install
- Validate the build and unit tests
- Run
npm pack
- Does a fresh build, checks for type issues, etc.
- Run
npm run test
- Run
- Add these changes, commit this change, associate a version tag with the commit (for example, "1.0.0"), and push them up
-
git add
the relevant files (Do not add the .tgz file that may have been created by thenpm run prepack
step) git commit --signoff -m "[version]"
git tag -a -m "brief description of change" [version]
git push --atomic origin main [version]
-
- Github actions will fire to produce executable versions of the SAF CLI for several OSes. Wait for the workflows for the Windows/Linux builds and for the macOS builds to finish. Download, unzip, and rename the artifacts:
- Mac OS (zip file containing the following)
saf-v[version]-x64.pkg
saf-v[version]-arm64.pkg
- Windows (individual downloads - not zipped)
saf-v[version]-x64.exe
saf-v[version]-x86.exe
- Debian (zip file containing the following)
saf-v[version]-amd64.deb
saf-v[version]-arm64.deb
saf-v[version]-armel.deb
- Associate the tags with the drafted release (replace"## New Features", with "## What's New" in the description)
- Attach the aforementioned, renamed artifacts to the draft release
- Make sure that the
Set as the latest release
checkbox is selected - Publish release
- Wait for push-to-npm on release to complete
- Update the SAF Github Action Dependency
- Validate that the Homebrew Formula at https://github.com/mitre/homebrew-saf was automatically updated
Streamline security automation for systems and DevOps pipelines with the SAF CLI
- Home
- How to create a release
- Splunk Configuration
- Supplement HDF Configuration
- Validation with Thresholds
- SAF CLI Delta Process
- Mapper Creation Guide for HDF Converters
- How to create a SAF CLI
- How to recommend development of a mapper
- Use unreleased version of a package from the Heimdall monorepo in the SAF CLI
- Troubleshooting