Provision Test Projects using GitLab Terraform Provider

Problem to solve

One needs to create a large number of test projects at the moment, which might be time consuming activity and also introduces complexities in managing and updating use cases (there will be many repositories that need to be managed individually).

There are already a few solutions proposed to mitigate this:

  • Make use of Dynamic Pipeline (#4)
  • Make use variables and rules (#3 (closed))

However there are still cases when creating a specific test project might be desirable. Some examples:

  • We need to test pipelines against specific project configurations
  • We need to test deployment jobs with pre-configured clusters / environment
  • We need to test pipelines that include use protected environment
  • We need to have some specific project content (e.g., testing changes or exists rules clauses)

One possible solution to simplify this could be using Terraform to provision projects with necessary configuration

Proposal

Allow RPTF to include references to Terraform templates that could be used to spin up a project

Further details