this repository goal is to maintain a Cake approaches reference. The apllication example is not important, but it represents a microservice solution implementation, where each microservice source code is grouped in a folder inside the source folder.
-Src
--AppServc2
--AppServc
--Libs
-Tests
--AppServc2
--AppServc
AppServc and AppServc2 represent two microservices that define the solution being developed.
the Libs folder represents all the Libs that this solution export as package nugets
The tests folder groups all the tests in the solution per microservice host application
The folder structure of this solution helped in many ways.
- Build source projects
- Running tests
- set version on the services dlls per microservice using the Directory.Build.Props file per microservice
- parameterized build per host. this allows saving time and resources when building large codebase
To a full list of the parameters see inside the script build.cake
the command to execute the build for only one service is:
.\build.ps1 -t build --buildNumber=123123 --appName="AppSrvc"