Allow specifying one-time script for new templates
Problem to solve
Some templates would benefit from the ability to run a CI job once as part of the template creation. This job could do any number of creative things, but as an example there are many frameworks out there, such as .NET Core, for which you can create a template by running a command like dotnet new console -o myApp
. The way to handle this in a template at the moment is to run that command and then check in the result. This is less than ideal for a couple reasons:
- The command may generate a lot of boilerplate with the app name or other details that would then need to be edited
- The state of the boilerplate will track what's checked in rather than whatever the latest command generates
This would be even nicer in combination with https://gitlab.com/gitlab-org/gitlab-ce/issues/58197 so that you can prompt for environment variables that will then be available on the one-time job run.
Target audience
- Sasha, Software Developer, https://design.gitlab.com/research/personas#persona-sasha
Further details
More powerful and easier to use templates
Proposal
To be determined
Documentation
What does success look like, and how can we measure that?
To be determined