The development strategy required to use a "monorepo" in order to deploy all services using CI/CD pipeline. The repository contains multiple packages (microservices) that can but do not have to be related.
The file structure for the monorepo should look like:
my-monorepo├── packages| ├── package 1| | ├── .cxcloud.yaml| | └── ...| ├── package 2| | ├── .cxcloud.yaml| | └── ...| └── package n| ├── .cxcloud.yaml| └── ...├── .cxcloud.yaml└── ...
Every microservice folder should include
.cxcloud.yaml file with the configuration for Kubernetes.
There is no naming convention for the packages, but it is recommended to add a prefix to the microservice such as
In order to simplify and optimize the workflow around development with the multi-package repository, the managing tool such as Lerna can be in use.