fleet/docs/development/release.md
Zach Wasserman d89523c830
Add fleetctl installer for NPM (#52)
This PR adds all the necessary configuration to install fleetctl via NPM.

Binaries are downloaded from the GitHub release page.
2020-11-18 13:20:08 -08:00

2.1 KiB

Releasing Fleet

  1. Update the CHANGELOG with the changes that have been made since the last Fleet release.

  2. Tag and push the new release in Git:

git tag <VERSION>
git push origin <VERSION>
  1. Build the new binary bundle (ensure working tree is clean because this will effect the version string built into the binary):
make binary-bundle

Make note of the SHA256 checksum output at the end of this build command to paste into the release documentation on GitHub.

  1. Create a new release on the GitHub releases page. Select the newly pushed tag (GitHub should say "Existing tag"). Use the version number as the release title. Use the below template for the release description (replace items in <> with the appropriate values):
### Changes

<COPY FROM CHANGELOG>

### Upgrading

Please visit our [update guide](https://github.com/fleetdm/fleet/blob/master/docs/infrastructure/updating-fleet.md) for upgrade instructions.

### Documentation

Documentation for this release can be found at https://github.com/fleetdm/fleet/blob/<VERSION>/docs/README.md

### Binary Checksum

**SHA256**
```
<HASH VALUE>  fleet.zip
<HASH VALUE>  fleetctl-linux.tar.gz
<HASH VALUE>  fleetctl-macos.tar.gz
<HASH VALUE>  fleetctl-windows.tar.gz
```

Upload the fleet.zip binary bundle along with the fleetctl-*.tar.gz for each platform and click "Publish Release".

  1. Push the new version to Docker Hub (ensure working tree is clean because this will effect the version string built into the binary):
make docker-push-release
  1. Publish the new version of fleetctl on NPM. Update the version in the package.json and publish with npm publish. Note that NPM does not allow replacing a package without creating a new version number. Take care to get things correct before running npm publish!

  2. Announce the release in the #fleet channel of osquery Slack.