We have a single repo for our angular application, with 4 different teams working on their respective modules. The problem is that the master branch is used to deploy the application on different environments. For example dev , qa, and uat all use the master branch to deploy the application onto a S3 bucket for the respective env. For prod, we cut off a release branch and deploy that. This posses some challenges, mainly all the teams have to follow the same release schedule.
I am doing some research on how to break this dependency and have been looking at monorepos. Additionally, an idea that I had is if we could use a local registry to publish private packages and in turn create different versions of our modules and create different builds.
for example , if we had 4 modules: module 1, module 2, module 3, module 4 Is it possible to create different angular builds using a config file like so :
dev
- module 1 : 1.2.1
- module 2 : 1.2.1
- module 3 : 1.4.1
- module 4 : 2.1.1
qa
- module 1 : 1.2.0
- module 2 : 1.1.1
- module 3 : 1.2.1
- module 4 : 1.5.7
uat
- module 1 : 1.0.0
- module 2 : 1.0.0
- module 3 : 1.0.0
- module 4 : 1.0.0