build: set up CI
- Dominant language
- Vue
- Stars
- 126
- Forks
- 22
- PR merge metrics
- No merged PRs in 30d
Description
develop on `dev` branch -- make `dev` the "main" branch
### wishes for CI
1. opening a PR to `production` (or even to `dev`) to run automated tests
2. can only merge into `production` if automated tests passed
3. automatic version increase (maybe like lerna a choice...? need to discuss)
4. automatic release notes (based on commit messages)
5. automatic deploy of documentation (firebase hosting, see https://firebase.googleblog.com/2020/10/preview-channels-firebase-hosting.html)
6. automatic publish to npm
7. automatic version added to Github releases with release notes (or link to changelog.md)
8. automatic update of changelog.md
### related
- npm workspaces just landed in the npm 7.0 release!
- might need to look into this first _but_ I somehow cannot find good information/documentation on this...?
- I found documentation on this but, WTF I have no idea where this documentation is rendered. I just found it in commits:
- [workspaces overview](https://github.com/npm/cli/commit/03fca6a3b227f71562863bec7a1de1732bd719f1?short_path=077a5a8#diff-077a5a857178409e241a2b40c68325bedd8d4d3e1aa1944716ba93df06fb2131) and [workspaces page](https://github.com/npm/cli/commit/03fca6a3b227f71562863bec7a1de1732bd719f1?short_path=68cb418#diff-68cb4181b93cb699500ae836dfc1c9506eee9e9158a8ed6d65224a9a2b8240e8)
- also look into: https://github.com/semantic-release/semantic-release
- also look into https://github.blog/2020-10-22-devops-best-practices-qa-automated-deployments-at-github/
### open questions
1. Does npm workspaces help or bring more issues with package scopes?
With lerna I always have issues with package scoping. Adding dev dependencies at root means you can't execute them in the package folder etc. Quasar project dependencies at root also caused a loot of issues when trying to build the quasar projects. Does npm workspaces bring new issues or will the fact that all packages are in a single node_modules folder at root be helpful.
2. does npm workspaces replace lerna?
Besides symlinking local packages to each other, lerna has the benefit of `lerna deploy`, which automatically increments all package versions throughout the local versions and dependencies, and automatically adds a "tag" with that version number on Github.
Is NPM Workspaces to be used WITH lerna, or maybe we don't need lerna anymore since we're changing the whole CI pipeline anyway?
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.