Mengelola dependensi build

Halaman ini menjelaskan cara menentukan dependensi build. Cloud Build memungkinkan Anda mengelola dependensi kode sumber secara terpisah dari proses build.

Dalam file konfigurasi build, Anda dapat mencantumkan satu atau beberapa repositori Git yang akan di-clone untuk build, dan urutan pengambilan repositori tersebut. Menentukan dependensi dengan cara ini memisahkan pengambilan dependensi dari proses build itu sendiri.

Jika Anda tidak menyertakan dependensi apa pun dalam file konfigurasi build, Cloud Build akan meng-clone repositori kode sumber yang berisi file konfigurasi build Anda (untuk build yang dipicu) atau repositori yang berisi kode sumber Anda (untuk build yang Anda panggil dari command line). Jika Anda menyertakan dependensi dalam file konfigurasi build, Cloud Build tidak akan meng-clone repositori yang tidak ditentukan di kolom dependencies.

Repositori kode sumber yang Anda tentukan di kolom dependencies harus terhubung ke Cloud Build menggunakan Developer Connect, atau berupa repositori publik

Dependensi di-clone dalam urutan yang Anda tentukan dalam konfigurasi ini. Selain itu, pengambilan dependensi terjadi sebelum logika yang ditentukan pengguna dieksekusi. Dengan demikian, pengambilan dependensi dapat dipercaya.

Dependensi ditampilkan di tab Build dependencies di halaman Build details.

Sebelum memulai

Petunjuk di halaman ini mengasumsikan bahwa Anda memiliki satu atau beberapa repositori Git yang merupakan repositori publik atau ditautkan menggunakan Developer Connect.

Untuk mendapatkan izin yang diperlukan untuk menambahkan repositori Developer Connect sebagai dependensi, minta administrator untuk memberi Anda Peran IAM Pengakses Token Baca Developer Connect (developerconnect.readTokenAccessor) di akun layanan Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Menentukan dependensi

Anda menentukan dependensi dengan menambahkan stanza dependencies ke file konfigurasi build. dependencies adalah properti tingkat teratas dalam konfigurasi build, tetapi Anda dapat menempatkannya di mana saja dalam file.

Berikut adalah sintaksis untuk stanza dependencies:

YAML

 dependencies:
 - gitSource:
     repository:
       url: 'URL'
       developerConnect: 'RESOURCE_PATH'
     revision: 'REVISION'
     recurseSubmodules: 'true|false'
     depth: DEPTH'
     destPath: 'DEST_PATH'

JSON

 {
     "dependencies": {
         "gitSource": {
             "repository": {
                 "url": "URL"
                 "developerConnect": "RESOURCE_PATH"
             },
             "revision": "REVISION",
             "recurseSubmodules": true|false,
             "depth": "DEPTH",
             "destPath": "DEST_PATH",
         },
     },
 }

Ganti nilai berikut:

  • URL: Opsional. URL HTTPS repositori yang akan diambil. Anda harus menentukan URL atau jalur resource Developer Connect.

  • RESOURCE_PATH: Opsional. Jalur Google Cloud resource ke repositori Developer Connect tersebut. Contohnya, projects/my-project/locations/us-central1/connections/my-connection/gitRepositoryLinks/my-repo. Anda harus menentukan URL atau jalur resource Developer Connect. Tentukan kolom ini jika repositori yang akan diambil terhubung ke Cloud Build menggunakan Developer Connect.

  • REVISION: Wajib diisi. Versi, hash commit, tag, atau nama cabang yang akan diambil dari repositori.

  • recurseSubmodules: 'true|false': Apakah akan mengambil submodul.

  • DEPTH: Opsional, seberapa dalam histori repositori yang akan diambil. Jika tidak ditentukan, commit terbaru akan diambil.

    • 1: commit terbaru
    • 2: dua commit terakhir
    • 3: tiga commit terakhir
    • -1: semua commit
  • DEST_PATH: Wajib diisi. Jalur ke direktori tempat repositori di-clone. Contoh, my/repo.

    Saat Anda menetapkan dest_path, repositori akan diambil di /workspace/<dest_path>. Nilai dest_path harus berupa jalur relatif ke direktori kerja build.

Menentukan repositori Developer Connect sebagai dependensi

  • Jika Anda menentukan repositori Developer Connect sebagai dependensi, Anda harus memberikan peran Developer Connect Read Token Accessor ke akun layanan Cloud Build. Untuk mengetahui informasi selengkapnya, lihat Memberikan akses Cloud Build ke repositori Developer Connect.

  • Build Anda harus berada di region yang sama dengan koneksi Developer Connect.

Langkah berikutnya