Expand source support in ToolConfig
Bug: T402764
Currently, we have source_url support (fetching the ToolConfig from a http(s) url.
This change expands that feature to support fetching the ToolConfig from a git repository.
Example usage:
source:
repository: https://gitlab.wikimedia.org/toolforge-repos/sample-complex-app-backend.git # Required
path: deployment/toolforge.yaml # Required
ref: main # Required
Relevant changes:
-
source_url: https://exampleis deprecated in favour ofsource: { url: https://example } - Warning is added in API response when
source_urlis specified -
gitbased logic is refactored intogit.RemoteGitRepository -
tests.gitadded to testRemoteGitRepository, ref resolution is now tested - Internal messages referencing
source_urlhave been generified