Mendownload dan men-deploy Terraform

Dokumen ini menjelaskan cara mendownload Terraform untuk template atau aplikasi yang Anda desain di Application Design Center. Gunakan opsi ini jika Anda ingin men-deploy aplikasi dengan alat CI/CD Anda sendiri.

Jika Anda mendownload dan men-deploy kode ini menggunakan alat Anda sendiri, file Terraform yang diekspor akan berisi logika untuk otomatis mendaftarkan aplikasi Anda di Pusat Aplikasi. Kemampuan ini memungkinkan pemantauan runtime di Security Command Center.

Namun, karena Anda men-deploy aplikasi secara eksternal, aplikasi tersebut akan diperlakukan sebagai aplikasi yang tidak dikelola. Akibatnya, Anda tidak dapat menggunakan fitur Google Cloud yang berpusat pada Aplikasi dan eksklusif untuk aplikasi yang dikelola, seperti penilaian keamanan waktu desain dan pelacakan temuan keamanan ke sumbernya untuk resolusi akar masalah.

Jika Anda ingin memanfaatkan sepenuhnya pengelolaan siklus proses aplikasi di App Design Center dan menggunakan semua fitur Google Cloud yang berpusat pada Aplikasi, deploy aplikasi menggunakan App Design Center.

Sistem akan membuat file Terraform berikut:

  • main.tf: Kode infrastruktur yang menyertakan modul untuk setiap komponen dalam template.
  • outputs.tf: Mengekspos informasi tentang komponen infrastruktur yang di- deploy.
  • variables.tf: Mendeklarasikan nama, jenis, dan deskripsi untuk variabel yang digunakan dalam file main.tf.
  • input.tfvars: Menentukan nilai untuk variabel yang digunakan dalam file main.tf.
  • providers.tf: Menentukan label yang membantu Terraform berinteraksi dengan Google Cloud API dan resource.

Untuk informasi latar belakang, lihat Ringkasan Terraform di Google Cloud.

Sebelum memulai

Untuk melakukan tugas dalam dokumen ini, minta administrator Anda untuk memberi Anda peran yang diperlukan di folder yang mendukung aplikasi atau project pengelolaan, seperti yang tercantum dalam tabel berikut:

Tugas Peran yang diperlukan
Mengekspor kode Terraform yang dibuat secara lokal atau ke repositori kontrol sumber Admin Aplikasi (roles/designcenter.applicationAdmin), atau
Editor Aplikasi (roles/designcenter.applicationEditor)

Untuk mengetahui informasi selengkapnya tentang peran, lihat Kontrol akses dengan IAM.

Mengekspor kode Terraform

Jika ingin mempertahankan template dan aplikasi Anda di luar Google Cloud, Anda dapat membuat Terraform dan mengekspornya ke mesin lokal atau ke repositori kode.

Mengekspor secara lokal

Anda dapat mengekspor kode Terraform yang dibuat dari template atau dari aplikasi.

Template

  1. Di Google Cloud konsol, buka halaman Templates.

    Buka Template

  2. Klik Template ID yang ingin Anda ekspor.

  3. Klik Get Code.

    Sistem akan mendownload file zip ke komputer lokal Anda. Anda dapat men-deploy aplikasi menggunakan alat dan alur kerja deployment Anda sendiri.

Aplikasi

  1. Di Google Cloud konsol, buka halaman Applications.

    Buka Applications

  2. Klik Application name yang ingin Anda ekspor.

  3. Klik Get Code.

    Sistem akan mendownload file zip ke komputer lokal Anda. Anda dapat men-deploy aplikasi menggunakan alat dan alur kerja deployment Anda sendiri.

Mengekspor ke repositori Anda

Untuk mempertahankan template Anda melalui repositori pengelolaan kode sumber, Anda dapat mengekspor template dan aplikasi ke GitHub. Kemudian, Anda dapat menggunakan alur kerja kontrol versi yang ada, dan memicu build, pengujian, dan deployment menggunakan pipeline CI/CD Anda sendiri.

Menghubungkan ke repositori Anda

Untuk membuat koneksi Developer Connect antara repositori GitHub Anda dan project pengelolaan, lakukan hal berikut:

  1. Ubah kebijakan organisasi Anda untuk menambahkan layanan berikut ke daftar yang diizinkan:

    1. developerconnect.googleapis.com.
    2. secretmanager.googleapis.com.

    Untuk mengetahui langkah-langkah mengubah kebijakan organisasi Anda, lihat Menggunakan batasan penggunaan layanan resource yang dibatasi.

  2. Buat koneksi Developer Connect ke repositori GitHub Anda, termasuk hal berikut:

    1. Pilih Aktifkan residensi data.
    2. Tautkan repositori tempat Anda ingin mengekspor aplikasi.

    Untuk mengetahui langkah-langkah membuat koneksi dan menautkan repositori, lihat Menghubungkan GitHub.

  3. Untuk menyalin URI repositori, lakukan hal berikut:

    1. Buka halaman Developer Connect Git repositories.
    2. Di tabel Repositories , klik More Options , lalu pilih Copy resource path.

Membuat dan mengekspor

Untuk membuat kode Terraform dan mengekspornya ke repositori GitHub Anda, lakukan hal berikut:

Template

  1. Identifikasi ID ruang Anda.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    Ganti kode berikut:

    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
  2. Identifikasi ID template untuk template yang ingin Anda ekspor.

    gcloud design-center spaces application-templates list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    Ganti kode berikut:

    • SPACE: ID ruang Anda.
    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
  3. Buat kode Terraform template Anda, lalu ekspor ke GitHub.

    gcloud design-center spaces application-templates generate APPLICATION_TEMPLATE \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    Ganti kode berikut:

    • APPLICATION_TEMPLATE: ID template yang ingin Anda ekspor.
    • SPACE: ID ruang Anda.
    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR: Direktori relatif terhadap repositori GitHub Anda.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH: Cabang di repositori GitHub Anda.

    Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces application-templates generate

  4. Lihat repositori Anda untuk memverifikasi bahwa template berhasil diekspor.

Aplikasi

  1. Identifikasi ID ruang Anda.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    Ganti kode berikut:

    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
  2. Identifikasi ID aplikasi untuk aplikasi yang ingin Anda ekspor.

    gcloud design-center spaces applications list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    Ganti kode berikut:

    • SPACE: ID ruang Anda.
    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
  3. Buat kode Terraform aplikasi Anda, lalu ekspor ke GitHub.

    gcloud design-center spaces applications generate APPLICATION \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    Ganti kode berikut:

    • APPLICATION: ID aplikasi yang ingin Anda ekspor.
    • SPACE: ID ruang Anda.
    • PROJECT: Project ID pengelolaan Anda.
    • LOCATION: ID lokasi Anda.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR: Direktori relatif terhadap repositori GitHub Anda.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH: Cabang di repositori GitHub Anda.

    Untuk mengetahui informasi selengkapnya, lihat gcloud design-center spaces applications generate

  4. Lihat repositori Anda untuk memverifikasi bahwa aplikasi berhasil diekspor.

Langkah berikutnya