Przejdź do treści

Epic 1 - Zarządzenie przestrzenią pl.rachuna-net w gitlab za pomocą terraform

Manualne tworzenie repozytoriów i grup

  • Utworzenie manualne grupy pl.rachuna-net
  • Utworzenie manualne grupy pl.rachuna-net/infrastructure
  • Utworzenie manualne grupy pl.rachuna-net/infrastructure/terraform
  • Utworzenie manualne grupy pl.rachuna-net/infrastructure/terraform/modules
  • Utworzenie manualne repozytorium pl.rachuna-net/infrastructure/terraform/gitlab
  • Utworzenie manualne repozytorium pl.rachuna-net/infrastructure/terraform/modules/gitlab-group
  • Utworzenie manualne repozytorium pl.rachuna-net/infrastructure/terraform/modules/gitlab-project

Terraform

Utworzenie obrazu z terraform

  • Utworzenie lokalnie obrazu z terraform

    Example
    podman run -it -v $PWD:/terraform -v ~/.ssh:/root/.ssh -u root terraform:0.0.1 bash
    
    cd /terraform
    
    CI_SERVER_URL="https://gitlab.com"
    CI_PROJECT_ID="68613727"
    CI_USERNAME="mrachuna"
    CI_JOB_TOKEN="***"
    TF_STATE_NAME="default"
    
    terraform init \
      -backend-config="address=${CI_SERVER_URL}/api/v4/projects/${CI_PROJECT_ID}/terraform/state/${TF_STATE_NAME}" \
      -backend-config="lock_address=${CI_SERVER_URL}/api/v4/projects/${CI_PROJECT_ID}/terraform/state/${TF_STATE_NAME}/lock" \
      -backend-config="unlock_address=${CI_SERVER_URL}/api/v4/projects/${CI_PROJECT_ID}/terraform/state/${TF_STATE_NAME}/lock" \
      -backend-config="username=${CI_USERNAME}" \
      -backend-config="password=${CI_JOB_TOKEN}" \
      -backend-config="lock_method=POST" \
      -backend-config="unlock_method=DELETE" \
      -backend-config="retry_wait_min=5" \
      -lock=false \
      -migrate-state
    terraform import module.group_pl_rachuna-net.gitlab_group.group 105046057
    terraform plan
    terraform apply
    

Pierwsze uruchomienie procesu terraform

Pierwsze uruchomienie procesu terraform