10
votes
Accepted
Multi-language Monorepo
Monorepos have been getting a lot of attention in recent years since google popularized them. If you aren't on a similar scale as google it might not work out as well for you. I've been in a startup ...
8
votes
Accepted
How to version control shared database?
I personally made the unwise choice of cramming five different apps into a single database about 20 years ago. I then had to deal with the repercussions of that. The bad news is, this is really hard. ...
6
votes
Accepted
What are best practices for creating and triggering various pipelines regards monorepos?
If this is translated to a monorepo that means that 1 change results
in 3 pipeline triggers, while in some cases only 1 pipeline should be
triggered.
I would definitely take this point into ...
5
votes
Multi-language Monorepo
You can put two or more projects into the same repository without opting in to a "monorepo" where every project goes into the same repository by default.
If you have multiple products that ...
4
votes
Accepted
CI/CD for microservices in monorepo on Gitlab
Monorepos are nice because it eliminates the technical constraints between multiple projects. This does however open the door to other complications within your repository (naming conventions, cross-...
4
votes
What do you need for a monorepo for a large codebase?
Git works for monorepos, but it has a few problems:
You have to check out the entire repo.
You have to fetch the entire history (generally - shallow clones are an option, but usually not useful in ...
4
votes
What do you need for a monorepo for a large codebase?
The answer is: a bit of both. To satisfy the constraints of "use git" and "manage a vast codebase" Microsoft developed a new filesystem (previously they were using a variant of Perforce called ...
3
votes
Accepted
Separation of CI and CD processes
You're basically describing GitOps. Here's how I've followed that for a containerized microservices build and deploy pipeline:
Each service repo includes it's own Dockerfile, Kubernetes manifests, ...
3
votes
Accepted
What are Pros and Cons of various VCS and CI/CD tools to store, change and deploy configuration snippets of more than 1000 customers in a VCS?
Personally I'd keep them in separate repositories, for clear customer isolation:
minimal/no risk of unwanted interference between customers
different access control for different customers is ...
3
votes
Condition CircleCI build on what part of monorepo changed?
This discussion gives a pretty good suggestion on how to accomplish what I want.
https://discuss.circleci.com/t/does-circleci-2-0-work-with-monorepos/10378/11
3
votes
What are best practices for creating and triggering various pipelines regards monorepos?
You need to narrow down your scope and deal with tooling for monorepos. There are various awesome-monorepo lists on Github (this is a recent one) to actually find out, what kind of tooling fits your ...
2
votes
How to integrate multiple "feature" react apps into monolithic PHP repo?
What approaches are there to manage multiple package.json files that live in each feature directory
One could leave the package.json in every feature directory and let the CI read the package.json ...
2
votes
Condition CircleCI build on what part of monorepo changed?
We're using CircleCI with Go monorepo.
Here’s how it’s done:
Define a job for each service in circle config yaml.
A git push triggers CircleCI job that finds which services are part of the change.
...
2
votes
How to version control shared database?
Disclaimer: I'm not a RDBMS DBA and I have zero experience with MSSQL. Everything below is a hypothesis.
Each app should have it's own stored procedures in migrations, and shared procedures should be ...
1
vote
What do you need for a monorepo for a large codebase?
Opinions differ on what a large code base is. If you are speaking about a company with 100 engineers, I would argue that Git should still be able to handle it. It has been developed for the needs of ...
1
vote
How should we organize VSTS repositories?
From the perspective of build automation, I find that it is better to have multiple repositories. This allows for smaller configurations and more granular control of your build/release process. You ...
1
vote
Accepted
How to build all projects in a monorepo by starting a build in Jenkins?
Build tools like maven or gradle could benefit you greatly here. It would do exactly what you have in mind as long as you have child project definition (with a build.gradle in gradle or pom.xml in ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
monorepo × 13continuous-integration × 4
git × 3
azure-devops × 2
continuous-delivery × 2
configuration × 2
versioning × 2
docker × 1
jenkins × 1
docker-compose × 1
gitlab × 1
deployment × 1
continuous-deployment × 1
cicd × 1
configuration-management × 1
build-pipeline × 1
microservices × 1
databases × 1
methodology × 1
process × 1
project-management × 1
circleci-2.0 × 1
gradle × 1
vcs × 1