You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CXX-3008 Add post-release instructions for Silk, Snyk, and patch release tags (#1148)
* CXX-3008 Add instructions to create new Silk/Snyk target reference post-release
* Add new post-patch-release merge commit to release instructions
* Move Silk credentials to .secrets in instructions
The new branch should be continuously tested on Evergreen. Update the "Display Name" and "Branch Name" of the [mongo-cxx-driver-latest-release Evergreen project](https://spruce.mongodb.com/project/mongo-cxx-driver-latest-release/settings/general) to refer to the new release branch.
312
313
314
+
## Update Silk and Snyk with new branch if necessary
315
+
316
+
After creating the new minor release branch in the prior step, update Silk and Snyk to trach the new release branch.
317
+
318
+
For Silk, use the [create-silk-asset-group.py script](https://github.com/mongodb/mongo-c-driver/blob/master/tools/create-silk-asset-group.py) in the C Driver to create a new Silk asset group. Use `mongo-cxx-driver` as the name and prefix in place of `mongo-c-driver` accordingly.
319
+
320
+
For Snyk, configure and build the CXX Driver with `BSONCXX_POLY_USE_MNMLSTC=ON` (force download of mnmlstc/core sources) and no `CMAKE_PREFIX_PATH` entry to a C Driver installation (force download of C Driver sources), then run:
321
+
322
+
```bash
323
+
# Snyk credentials. Ask for these from a team member.
324
+
.~/.secrets/snyk-creds.txt
325
+
326
+
# Name of the new minor release branch. Ensure this is correct!
327
+
branch="rX.Y"
328
+
329
+
# Authenticate with Snyk dev-prod organization.
330
+
snyk auth "${SNYK_API_TOKEN:?}"
331
+
332
+
# Verify third party dependency sources listed in etc/purls.txt are detected by Snyk.
333
+
# If not, see: https://support.snyk.io/hc/en-us/requests/new
# Create a new Snyk target reference for the new release branch.
346
+
snyk monitor "${snyk_args[@]:?}"
347
+
```
348
+
313
349
## Create Documentation Tickets
314
350
315
351
Documentation generation must be run after the release tag has been made and
@@ -362,6 +398,17 @@ pushed.
362
398
- Switch back to the branch with documentation updates: `git checkout post-release-changes`.
363
399
- Wait a few minutes and verify mongocxx.org has updated.
364
400
401
+
## Merge the release branch back into `master` if necessary
402
+
403
+
If this is a patch release on a minor release branch, create a pull request on GitHub to merge the latest state of the `releases/rX.Y` branch containing the new release tag `rX.Y.Z` into the `master` branch. Use the "Create a merge commit" option when merging this pull request.
404
+
405
+
> [IMPORTANT]
406
+
> Use the "Create a merge commit" option when merging this pull request!
407
+
408
+
Do **NOT** delete the release branch after merge.
409
+
410
+
Verify correct repo state by running `git describe --tags --abbrev=0` on the post-merge `master` branch, which should return the patch release tag `rX.Y.Z`. Adding the `--first-parent` flag should return the last minor release tag `rX.Y.0`.
411
+
365
412
## Update CHANGELOG.md post-release ...
366
413
367
414
CHANGELOG.md on the `master` branch contains sections for every release. This is intended to ease searching for changes among all releases.
@@ -407,7 +454,9 @@ Ensure there are `[Unreleased]` sections for the next minor and patch releases.
407
454
<!-- Contains published release notes -->
408
455
```
409
456
410
-
Commit the change. Create a PR from the `post-release-changes` branch to merge to `master`.
457
+
Commit the change.
458
+
459
+
Create a PR from the `post-release-changes` branch to merge to `master`.
0 commit comments