I'm currently part of a team that trains multiple pods of new hires. Each pod creates a client simulated project that involves the following steps:
- Creating kubernetes namespaces for each pod for deployment
- Using spring initializer to create a Java project for each microservice (each pod's project has the same dependencies/configs but the only difference is each pod has a different name)
- Initializing each project in GitLab with repositories for each microservice
- Setting up webhooks for Jenkins integration (adding a Jenkinsfile, Dockerfile, gradle.properties and build.gradle with the appropriate project K8 namespace)
Since we go through the entire microservice spin-up process manually each time a new pod comes through, we're looking to automate as much of this as possible.
Right now our approach is to create scripts that will automate kubernetes namespace creation and customization for the Dockerfile and build.gradle. However, does anyone have experience working with the GitLab API to automate webhook configuration and Jenkins pipeline config? Any advice is welcome!