3 ms·
The CI story has been my biggest gripe with monorepos. I'm surprised that no separate tool has emerged, like the "custom Jenkins scripts" mentioned in the artic
by mikewhy 7y ago
The CI story has been my biggest gripe with monorepos. I'm surprised that no separate tool has emerged, like the "custom Jenkins scripts" mentioned in the article.
Maybe I'm missing something, but couldn't you get pretty far with something like:
# This tells the tool where to look for changes
packages_folder: ./packages
# List dependencies. In this instance, if any files in `shared_api` change, frontend and backend need to build.
dependencies:
- frontend:
- shared_api
- backend:
- shared_api
# Definite build order
build_order:
- shared_api
- backend
- frontend
# Somehow find these scripts in each package subfolder and try to run them.
scripts:
- build
- test
- deploy
The tool itself would see which files have changed between two git revisions, figure out what packages need to be built, and run the scripts. But I'm probably missing a million and one things.