Rework scripts/clone_projects.go
What does this MR do and why?
This MR takes the fantastic work at Add script to fetch Docs content projects (!4 - merged) and enhances with the following:
- Adds a
.gitlab-ci.yml
to run tests automatically - Encapsulates
Product
logic as methods, attached to theProduct
struct - Uses
runGitCommand()
for allgit
related commands. - Reduces data leaks in tests
- Updates
go.mod
to support being tested by multiple Go versions
Edited by Ash McKenzie