#git | #CI

8. Ноя 2020, 23:05

Создание репозитория в GitLab с помощью Terraform

Часто при выполнении каких либо заданий или тестов, или просто в обычной работе бывает необходимо что-либо сделать, а результат выложить в виде отдельного репозитория на GitLab.

Репозиторий, конечно, можно создать разными способами: в веб-интерфейсе, через API или еще как-нибудь.

Ниже приведен сценарий Terraform, создающий пустой репозиторий на GitLab:

variable "gitlab_token" {
  type = string
  default = "SECRET"
}

variable "base_url" {
  type = string
  default = "https://gitlab.yourdomain.com/api/v4/"
}

#variable "namespace_id" {
#  type = number
#  default = 1111
#}

terraform {
  required_providers {
    gitlab = {
      source = "gitlabhq/gitlab"
    }
  }
  required_version = ">= 0.13"
}

provider "gitlab" {
    token = var.gitlab_token
    base_url = var.base_url
}

resource "gitlab_project" "new-repo" {
  name         = "new-repo"
  description  = "New repo"
#  namespace_id = var.namespace_id
}

Примечания:

  1. Сценарий актуален для версии Terraform 13 и выше
  2. Token предварительно создается в профиле: Settings->Access Tokens
  3. В переменной base_url указать актуальное значение
  4. Переменная namespace_id используется при необходимости создать репозиторий в определенной группе
comments powered by Disqus

© andrdi.com 2020