https://github.com/buildit/lerna-travis-semantic-release-sample
An experiment to see how Lerna 3+ works with Semantic Release and Travis CI
https://github.com/buildit/lerna-travis-semantic-release-sample
Last synced: about 1 month ago
JSON representation
An experiment to see how Lerna 3+ works with Semantic Release and Travis CI
- Host: GitHub
- URL: https://github.com/buildit/lerna-travis-semantic-release-sample
- Owner: buildit
- Created: 2019-03-20T16:54:22.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-30T17:22:29.000Z (over 2 years ago)
- Last Synced: 2025-02-04T23:31:22.282Z (3 months ago)
- Language: JavaScript
- Size: 1.55 MB
- Stars: 1
- Watchers: 8
- Forks: 0
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# lerna-travis-semantic-release
An experiment to see how Lerna 3+ works with Semantic Release and Travis CI## Making Commits
This repo uses Commitizen and Commit Lint to enforce proper commit syntax. You'll need to use the following command to
checkin your commits.```bash
npm run commit
```## Running a deploy
Deploys can only safely be run in a CI environment since they make use of Semantic Release to automatically update
repos. When a deploy is run it will trigger the `deploy` script on every package.json file.```bash
npm run deploy
```### Postmortem
* Consider bundling the lerna semantic release packages into individual NPM repos. These are rewrites of popular packages that are now deprecated but in demand (and they're very re-usable)
* Important to be very careful when marking affected packages (with commitizen usage) to make sure packages release properly## TODOs
Some additional lifting still needed for stability and LTS.
* Convert Lerna analyzer and Lerna changelog package to TypeScript
* Lerna changelog test coverage (untested)
* Bundle all semantic release packages into a single folder with a package namespace such as `@buildit/semantic-release/lerna/commit-analyzer`. Currently creating a mess in the `/packages` folder
* GitHub release notes needs to indicate what package the release is for (currently prints an anonymous version number for an unknown package). Write a wrapper around the github plugin that prints the package name in the title
* Full documentation of all Lerna local `npm run` commands for CI/CD and CLI usage
* Full documentation on checking in commits with notes for potential pitfalls