Menyediakan resource Artifact Registry dengan Terraform

HashiCorp Terraform adalah alat infrastruktur sebagai kode (IaC) yang memungkinkan Anda menyediakan dan mengelola infrastruktur cloud. Terraform menyediakan plugin yang disebut penyedia yang memungkinkan Anda berinteraksi dengan penyedia cloud dan API lainnya. Anda dapat menggunakan penyedia Terraform untuk Google Cloud untuk menyediakan dan mengelola resource Google Cloud , termasuk Artifact Registry.

Halaman ini memperkenalkan penggunaan Terraform dengan Artifact Registry, termasuk pengantar tentang cara kerja Terraform dan beberapa referensi untuk membantu Anda mulai menggunakan Terraform dengan Google Cloud. Anda juga akan menemukan link ke dokumen referensi Terraform untuk Artifact Registry, contoh kode, dan panduan untuk menggunakan Terraform guna menyediakan resource Artifact Registry.

Untuk petunjuk cara memulai Terraform untuk Google Cloud, lihat Menginstal dan mengonfigurasi Terraform atau panduan memulai Terraform untuk Google Cloud .

Cara kerja Terraform

Terraform memiliki sintaksis deklaratif dan berorientasi konfigurasi, yang dapat Anda gunakan untuk mendeskripsikan infrastruktur yang ingin Anda sediakan di project Google Cloud . Setelah menulis konfigurasi ini di satu atau beberapa file konfigurasi Terraform, Anda dapat menggunakan Terraform CLI untuk menerapkan konfigurasi ini ke resource Artifact Registry Anda.

Langkah-langkah berikut menjelaskan cara kerja Terraform:

  1. Anda mendeskripsikan infrastruktur yang ingin disediakan dalam file konfigurasi Terraform. Anda tidak perlu menulis kode yang menjelaskan cara menyediakan infrastruktur. Terraform menyediakan infrastruktur untuk Anda.
  2. Anda menjalankan perintah terraform plan, yang mengevaluasi konfigurasi dan membuat rencana eksekusi. Anda dapat meninjau rencana dan melakukan perubahan sesuai kebutuhan.
  3. Anda menjalankan perintah terraform apply, yang melakukan tindakan berikut:

    1. Alat ini menyediakan infrastruktur Anda berdasarkan rencana eksekusi dengan memanggil Artifact Registry API yang sesuai di latar belakang.
    2. Tindakan ini akan membuat file status Terraform, yang merupakan file JSON yang memetakan resource dalam file konfigurasi Anda ke resource di infrastruktur dunia nyata. Terraform menggunakan file ini untuk menyimpan catatan status terbaru infrastruktur Anda, dan untuk menentukan waktu membuat, memperbarui, dan menghancurkan resource.
    3. Saat Anda menjalankan terraform apply, Terraform akan menggunakan pemetaan dalam file status untuk membandingkan infrastruktur yang ada dengan kode, dan melakukan update sesuai kebutuhan:

      • Jika objek resource ditentukan dalam file konfigurasi, tetapi tidak ada dalam file status, Terraform akan membuatnya.
      • Jika objek resource ada dalam file status, tetapi memiliki konfigurasi yang berbeda dari file konfigurasi Anda, Terraform akan memperbarui resource agar cocok dengan file konfigurasi Anda.
      • Jika objek resource dalam file status cocok dengan file konfigurasi Anda, Terraform tidak akan mengubah resource.

Resource Terraform untuk Artifact Registry

Resource adalah elemen dasar dalam bahasa Terraform. Setiap blok resource menjelaskan satu atau beberapa objek infrastruktur, seperti jaringan virtual atau instance komputasi.

Tabel berikut mencantumkan resource Terraform yang tersedia untuk Artifact Registry:

Layanan Resource Terraform Sumber data
Artifact Registry
  • google_artifact_registry_docker_image
  • google_artifact_registry_repository
  • google_artifact_registry_repository_iam_policy
  • Panduan berbasis Terraform untuk Artifact Registry

    Tabel berikut mencantumkan panduan dan tutorial cara berbasis Terraform untuk Artifact Registry:

    Panduan Detail
    Membuat repositori standar menggunakan Terraform Panduan ini menjelaskan cara membuat repositori mode standar dengan Terraform.
    Membuat repositori jarak jauh menggunakan Terraform Panduan ini menjelaskan cara membuat repositori mode jarak jauh dengan Terraform.
    Membuat repositori mode virtual menggunakan Terraform Panduan ini menjelaskan cara membuat repositori mode virtual dengan Terraform.

    Modul dan blueprint Terraform untuk Artifact Registry

    Modul dan blueprint membantu Anda mengotomatiskan penyediaan dan pengelolaan resource Google Cloud dalam skala besar. Modul adalah kumpulan file konfigurasi Terraform yang dapat digunakan kembali dan membuat abstraksi logis resource Terraform. Blueprint adalah paket modul yang dapat di-deploy dan digunakan kembali, serta kebijakan yang mengimplementasikan dan mendokumentasikan solusi tertentu.

    Tabel berikut mencantumkan modul dan blueprint yang terkait dengan Artifact Registry:

    Modul atau blueprint Detail
    artifact-registry Membuat dan mengelola repositori Artifact Registry
    secure-cicd Membangun pipeline CI/CD yang aman di Google Cloud
    gcloud Menjalankan perintah CLI Google Cloud dalam Terraform

    Langkah selanjutnya