Menjalankan build dalam kumpulan pribadi

Dokumen ini menjelaskan cara menjalankan build di kumpulan pribadi. Jika Anda baru mengenal kumpulan pribadi, baca Ringkasan kumpulan pribadi.

Sebelum memulai

  • Pastikan Anda telah membuat kumpulan pribadi menggunakan langkah-langkah dalam Membuat dan mengelola kumpulan pribadi.

  • Untuk menggunakan contoh command line dalam panduan ini, instal dan konfigurasi Google Cloud CLI.

  • Anda dapat menggunakan project Google Cloud yang sama untuk membuat kumpulan pribadi dan build Cloud Build atau menggunakan project yang berbeda. Jika build Anda berada di project yang berbeda dari kumpulan pribadi Anda, tetapkan project default di gcloud CLI ke project tempat build Anda berasal:

    gcloud config set project BUILD_ORIGIN_PROJECT_ID
    

Izin IAM

  • Untuk menjalankan build melalui gcloud CLI atau Cloud Build API, berikan peran WorkerPool User dalam project kumpulan pribadi kepada pengguna atau akun layanan yang meminta build.

  • Untuk menjalankan build otomatis menggunakan pemicu:

    • Jika project tempat Anda memulai build sama dengan project yang berisi kumpulan pribadi Anda, Anda tidak perlu memberikan izin apa pun.
    • Jika project tempat Anda memulai build berbeda dengan project tempat kumpulan pribadi Anda berada, berikan peran WorkerPool User ke akun layanan Cloud Build project pemicu pada project workerpool tempat build Anda dibuat:

    Konsol

    1. Buka halaman IAM di Konsol Google Cloud.

      Buka halaman Izin IAM

    2. Di menu drop-down pemilih project di bagian atas halaman, pilih project yang berisi kumpulan pribadi Anda.

    3. Klik Berikan akses.

    4. Masukkan setelan utama dan peran berikut:

      • Tambahkan akun utama: Masukkan alamat email akun layanan Cloud Build default project yang berisi pemicu build Anda. Anda bisa mendapatkan alamat email ini menggunakan langkah-langkah berikut:

        1. Buka halaman IAM.
        2. Pilih project yang berisi pemicu build Anda.
        3. Pada tabel izin, cari alamat email yang diakhiri dengan @cloudbuild.gserviceaccount.com. Ini adalah akun layanan Cloud Build Anda.
      • Tetapkan peran: Pilih peran Cloud Build WorkerPool User.

    5. Klik Save untuk menyimpan izin IAM baru Anda.

    gcloud

    Untuk menambahkan Akun Layanan Cloud Build default dari project pemicu ke project workerpool dengan peran cloudbuild.workerPoolUser:

      gcloud projects add-iam-policy-binding PRIVATEPOOL_PROJECT_ID \
          --member=serviceAccount:TRIGGER_PROJECT_NUMBER@cloudbuild.gserviceaccount.com \
          --role=roles/cloudbuild.workerPoolUser
    

    Ganti nilai placeholder dalam perintah di atas dengan yang berikut ini:

    • PRIVATEPOOL_PROJECT_ID adalah ID project dengan kumpulan pribadi yang menjalankan build.
    • TRIGGER_PROJECT_NUMBER adalah nomor project dari project dengan pemicu yang menjalankan build.

Build yang berjalan

Anda dapat mengirimkan build dari project Google Cloud yang sama tempat Anda membuat kumpulan pribadi atau dari project Google Cloud lain. Anda dapat menentukan kumpulan pribadi di file konfigurasi build atau secara langsung dengan perintah gcloud:

Menentukan kumpulan pribadi dalam file konfigurasi build:

  1. Di file konfigurasi Cloud Build, tambahkan opsi pool dan tentukan nama lengkap resource kumpulan pribadi untuk menjalankan build:

    YAML

    steps:
    - name: 'bash'
      args: ['echo', 'I am running in a private pool!']
    options:
      pool:
        name: 'projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID'
    

    JSON

    {
      "steps": [
      {
        "name": "bash",
        "args": [
          "echo",
          "I am running in a private pool!"
        ]
      }
      ],
      "options": {
        "pool" : {
          "name" : "projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID"
        }
      }
    }
    

    Ganti nilai placeholder dalam file konfigurasi di atas dengan yang berikut ini:

    • PRIVATEPOOL_PROJECT_ID: project Google Cloud tempat kumpulan data pribadi Anda berada.
    • REGION: wilayah tempat Anda membuat kumpulan pribadi.
    • PRIVATEPOOL_ID: ID kumpulan pribadi unik yang Anda tentukan saat membuat kumpulan pribadi.
  2. Gunakan file konfigurasi build yang dibuat di atas untuk menjalankan build melalui gcloud atau API atau menggunakan pemicu. Jika instance Anda dihosting secara lokal, Cloud Build juga menyediakan dukungan fungsi pemicu untuk beberapa sistem pengelolaan kode sumber eksternal seperti GitHub Enterprise atau Bitbucket Server.

Menentukan kumpulan pribadi di perintah gcloud:

Anda dapat menentukan kumpulan pribadi dalam perintah gcloud, bukan dalam file konfigurasi build. Misalnya, anggap Anda memiliki file konfigurasi build berikut:

YAML

  steps:
  - name: 'bash'
    args: ['echo', 'I am running in a private pool!']

JSON

  {
    "steps": [
    {
      "name": "bash",
      "args": [
        "echo",
        "I am running in a private pool!"
      ]
    }
    ],
  }

Perintah berikut dibuat menggunakan file konfigurasi build dan menentukan kumpulan pekerja dalam perintah ini:

gcloud builds submit --config=CONFIG_FILE
  --worker-pool=projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID

Ganti nilai placeholder dalam perintah di atas dengan perintah berikut:

  • CONFIG_FILE: jalur ke file konfigurasi build Anda.
  • PRIVATEPOOL_ID: ID kumpulan pribadi unik yang Anda tentukan saat membuat kumpulan pribadi.
  • PRIVATEPOOL_PROJECT_ID: project Google Cloud tempat kumpulan data pribadi Anda berada.
  • REGION: wilayah tempat Anda membuat kolam renang pribadi.

Apa langkah selanjutnya?