terraformでgithubリポジトリを管理する

初めに

terraformは基本的にはクラウドリソースを管理するのに使われるが
実はgithub用のproviderも用意されている。
https://registry.terraform.io/providers/integrations/github/latest/docs

これを使う事でgithubで使うPRリポジトリ等をコードで管理することが出来る
またクラウドリソースと違い無料でterraformを触る事が出来るので初学者にもオススメ

準備

Githubアカウントの作成

https://github.co.jp/ で作りましょう

terraformのインストール

  1. 各OS ここからダウンロード出来る
  2. ダウンロードしたterraform.exe“C:\Windows” などパスが通っているフォルダに配置する
    ※Macであれば brew コマンドでインストール可能
  3. 以下のコマンド結果の様にVersionが返ってくればOK
C:\Users\asaka>terraform -v
Terraform v1.4.6
on windows_amd64

C:\Users\asaka>

accsess token の取得

  1. https://github.com/ にアクセス
  2. アイコンクリック → settings → Developer settings → Personal access tokens (classic)
    → Generate new token → Generate new token(classic)
  3. Note と Select scorps(今回はめんどくさいので全部チェック)を入力
  4. コードが表示されるのでコピーし保管(ページを閉じると二度と表示されないので注意)

リポジトリ作成用のtfファイルを作る

backend.tf

terraform {
  required_version = ">= 1.4.0"
  required_providers {
    github = {
      source  = "integrations/github"
      version = "~> 5.0"
    }
  }
}

provider "github" {
  owner    = "git のorg名を記載"
  token    = "取得したトークンを入力"
}

repo.tf

resource "github_repository" "youtube_test" {
  name        = "youtube_test"
  description = "youtube_test"
  visibility = "private"
}

github_repositoryの詳細についてはここを参照

tfファイルの適用

すべてのコマンドはtfファイルがあるフォルダで実施します

ワークスペースの初期化

terraform init

変更内容の確認

terraform plan

※業務ではここで意図しない差分が出たら調査を実施する
 terraform providerのupdateとかで結構意図しない差分が出る事はあります(笑)

tfファイルの適用

terraform apply

コメント

タイトルとURLをコピーしました