This adds a GitLab integration for the scaffolder backend.
We're introduceing a preparer and a publisher for GitLab so that we can
read templates from GitLab and publish them to a configured GitLab
instance. The two instances don't need to be the same. For instance,
templates could be public on gitlab.com, but the created repos will live
in a hosted GitLab somewhere else.
The publisher gets its own config object in `app-config.yaml` where the
target instance and token can be specified.
The service catalogue defines both `gitlab` and `gitlab/api` as
processors. They are both handled by the same preparer.
Closes#2372
* fix(template tags): fixes issues with tags specified with uppercase
* adds new validator for metadata tags
* fix(template tags): change tags to be lowercase
* fix(template tags docs): update docs to include lowercased tags
* fix(validator): change back to using isValidDnsLabel for tags
* fix(software catalog docs): use lowercase tags in docs
* docs(scaffolder): Added some reference for the Template kind in the service catalog
* docs(scaffolder): adding a basic readme for the scaffolder
* docs(scaffolder): more small fixes
* chore(scaffolder): removing unused routes in the scaffolder
* docs(scaffolder): fixing linking to the template entity
* docs(scaffolder): fixing indentation
* docs(scaffolder): rewrite a little
* chore(scaffolder): Added some more documentation sections
* docs(scaffolder): added some documentation about loading your own templates
* docs(scaffolder): created some great documentation. make docs great again
* docs(scaffolder): added some more info about creating your own templater
* chore(scaffolder): finshing of create your own templater docs
* docs(scaffolder): updating the last of the preparr
* docs(scaffolder): think docs are great for scaffolder again
* docs(scaffolder): more user docs for the scaffolder
* docs(scaffolder): fix header
* docs(scaffolder): shuffle around the documenation
* chore(scaffolder): fixing again
* docs(scaffolder): fixing some docs again
* docs(scaffolder): Added some reference for the Template kind in the service catalog
* docs(scaffolder): adding a basic readme for the scaffolder
* docs(scaffolder): more small fixes
* chore(scaffolder): removing unused routes in the scaffolder
* docs(scaffolder): fixing linking to the template entity
* docs(scaffolder): fixing indentation
* docs(scaffolder): rewrite a little
* chore(scaffolder): Added some more documentation sections
* docs(scaffolder): added some documentation about loading your own templates
* docs(scaffolder): created some great documentation. make docs great again
* docs(scaffolder): added some more info about creating your own templater
* chore(scaffolder): finshing of create your own templater docs
* docs(scaffolder): updating the last of the preparr
* docs(scaffolder): think docs are great for scaffolder again
* chore(scaffolder): fixing issue with publisher base mistyping
* docs(scaffolder): creating some how to use documentation
* docs(scaffolder): more user docs for the scaffolder
* docs(scaffolder): fix header
* docs(scaffolder): fixing
* docs(scaffolder): shuffle around the documenation