HI Chad,
To piggyback off Kelly's inquiry, we leverage the config repo and GitHub is where all of our pipeline configs are stored. We also use the Pluggable SCM plugin to define our materials along with Kubernetes elastic agents. What we have noticed is that when we revert from using the pluggable SCM plugin to the Native GIT Materials Plugin (Core to GoCD), there is a unique identifier that is generated for that material (e.g. materials: git-9d3fba6:) just as there is a unique identifier with the pluggable SCM (e.g. scm: 59323383-d746-443d-8c36-xxxxxxxxxxx).
Issue:
Since we already have config yamls in our repo that define our pipelines, how is that unique identifier generated? When we create a manual pipeline, define the native GIT Material, and download the yaml, a unique identifier is created.
We copy that unique identifier, paste it into a config yaml, and upload it to our repo. As soon as GOCD Config repo plugin polls and finds the latest updated yaml, GOCD dies (becomes nonfunctional).
We can't get to the login page, GoCD times out. When logging into the server, the service is running but nothing in the logs indicates what the issue is. Even reverting the change in the yaml does not fix the issue. We end up having to restore from a snapshot. We were thinking that perhaps in the GoCD database, that unique identifier is tied to a pipeline name or some reference that once we copy it to another yaml, even though the settings are the same, it causes a problem
We want to use the core GIT Materials but we don't know how to generate that unique materials identifier, use it in the config repo without GoCD dying.
I've attached some screenshots of the yaml files as a reference.