New Development Workflow
In contrast to the Current Development Workflow, there are more categories contained in the lifecycle,
corresponding to the more fine-grained model of the development process. While not as easy as running a single command
like mvn clean install, splitting up different types of development tasks into separate modes allows a faster dev/build
loop and allows more flexibility about when to execute particular tasks (instead of defaulting to executing all of them
for each and every build).
It results in a faster development process and a more maintainable, less brittle toolset.
Project Initialization
Run once upon project creation or occasional migration to updated starter files.
Update Runtime Dependencies
This happens during development to add any required services to the Kubernetes configuration.
The new Dependency Resolver Script will be an automated transitive dependency manager which can, given correct Git branch/tag naming and versioning convention, automatically find the newest referenced version of each runtime dependency in the entire graph.
The result is output to the service-dependencies.yaml file which contains the Git URLs to be copied to either the
skaffold.yaml or the dev-with-deps overlay kustomization.yaml (TBD).