Mengotomatiskan build menggunakan Cloud Build

Halaman ini menjelaskan cara menggunakan Cloud Build untuk mengotomatiskan build.

Cloud Build menggunakan pemicu build untuk mengaktifkan otomatisasi CI/CD. Anda dapat mengonfigurasi pemicu untuk memproses peristiwa masuk, seperti saat commit baru didorong ke repositori atau saat permintaan pull dimulai, lalu otomatis memanggil build saat ada peristiwa baru.

Anda akan membuat pemicu dan mengonfigurasi pemicu tersebut untuk memanggil build setiap kali mengirim perubahan ke repositori GitHub.


Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Cloud Shell Editor, klik Pandu saya:

Pandu saya


Sebelum memulai

  1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  3. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  4. Enable the Cloud Build API.

    Enable the API

  5. Menginstal Google Cloud CLI.
  6. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  7. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  8. Pastikan penagihan telah diaktifkan untuk project Google Cloud Anda.

  9. Enable the Cloud Build API.

    Enable the API

  10. Menginstal Google Cloud CLI.
  11. Untuk initialize gcloud CLI, jalankan perintah berikut:

    gcloud init
  12. Jika Anda belum memilikinya, buat akun di GitHub.

  13. Jika Anda telah menyiapkan autentikasi 2 langkah di GitHub, buat token akses pribadi untuk digunakan sebagai pengganti sandi GitHub dengan command line.

Melakukan fork dan meng-clone repositori GitHub contoh

Anda memerlukan beberapa kode sumber contoh untuk membangun. Di bagian ini, Anda akan meng-clone repositori sumber yang ada yang berisi contoh Hello World di Go ke akun pengguna GitHub Anda sendiri.
  1. Jika Anda belum memilikinya, buat akun di GitHub.

  2. Jika Anda telah menyiapkan autentikasi 2 langkah di GitHub, buat token akses pribadi untuk digunakan sebagai pengganti sandi GitHub dengan command line.

  3. Lakukan fork repositori cloud-build-samples ke akun GitHub Anda sendiri:

    1. Buka Cloud Build cloud-build-samples repository.

    2. Klik ikon Fork di sudut kanan atas halaman.

    3. Klik akun pengguna GitHub tempat Anda ingin melakukan fork repositori.

      Anda akan otomatis dialihkan ke halaman yang berisi repositori cloud-build-samples versi fork Anda.

  4. Buka terminal di lingkungan lokal Anda.

  5. Clone repositori yang bercabang dengan menjalankan perintah berikut, dengan GITHUB_USERNAME adalah nama pengguna untuk akun GitHub Anda:

    git clone https://github.com/GITHUB_USERNAME/cloud-build-samples.git

Menghubungkan Cloud Build ke repositori Anda

Untuk mem-build kode sumber di GitHub menggunakan pemicu, Anda harus menghubungkan Cloud Build ke repositori GitHub Anda terlebih dahulu. Di bagian ini, Anda akan menghubungkan repositori cloud-build-samples ke Cloud Build.
  1. Di menu navigasi Konsol Google Cloud, klik Cloud Build > Triggers.

    Buka halaman Pemicu

  2. Pilih project Anda lalu klik Buka.

  3. Klik Connect repository.

  4. Di bagian Select source, pilih GitHub (Cloud Build GitHub App).

  5. Klik Lanjutkan.

  6. Autentikasi akun GitHub Anda.

  7. Di bagian Select repository, pilih nama pengguna akun GitHub. Jika nama pengguna tidak muncul dalam daftar:

    1. Dalam daftar GitHub account, klik +Add.

      Anda akan melihat pop-up untuk menginstal aplikasi Cloud Build GitHub.

    2. Klik nama pengguna GitHub Anda.

    3. Klik Hanya repositori tertentu untuk menginstal aplikasi GitHub Cloud Build di repositori tertentu.

    4. Di menu drop-down, pilih GITHUB_USERNAME/cloud-build-samples, dengan GITHUB_USERNAME adalah nama pengguna untuk akun GitHub Anda.

    5. Klik Install (Instal).

      Anda mungkin akan diminta untuk memasukkan sandi yang terkait dengan akun GitHub Anda sebelum melanjutkan.

    6. Setelah penginstalan aplikasi Cloud Build GitHub, Anda akan dapat melihat nama pengguna di menu drop-down pada kolom akun GitHub. Pilih nama pengguna Anda.

  8. Di bagian Repository, pilih GITHUB_USERNAME/cloud-build-samples sebagai repositori Anda.

  9. Klik tanda centang untuk menyetujui persyaratan dan ketentuan koneksi pemicu.

  10. Klik Hubungkan.

  11. Klik Selesai.

Anda akan membuat pemicu di bagian berikutnya.

Buat pemicu

  1. Buka halaman Pemicu di Konsol Google Cloud:

    Buka halaman Pemicu

  2. Pilih project Anda dari menu drop-down pemilih project di bagian atas halaman.

  3. Klik Buka.

  4. Di halaman Pemicu, klik Buat pemicu.

  5. Di halaman Create trigger, masukkan setelan berikut:

    • Name: Masukkan hello-world-trigger sebagai nama pemicu Anda.

    • Peristiwa: Pilih Push to a branch sebagai peristiwa repositori untuk memanggil pemicu Anda.

    • Source: Pilih repositori cloud-build-samples sebagai sumber, yang berisi kode sumber dan file konfigurasi build Anda.

    • Build Configuration: Pilih Cloud Build configuration file sebagai file konfigurasi build Anda.

    • Lokasi file konfigurasi Cloud Build: Tentukan jalur ke file konfigurasi Cloud Build Anda sebagai quickstart-automate/cloudbuild.yaml.

  6. Klik Create untuk menyimpan pemicu build.

Commit perubahan

Di bagian ini, Anda akan meng-commit perubahan pada repositori cloud-build-samples yang di-clone di akun GitHub Anda sendiri.

  1. Di terminal Anda, buka direktori quickstart-automate:

    cd cloud-build-samples/quickstart-automate
  2. Buka file main.go dan perbarui baris yang berisi "Hello, world!" ke "Halo, semesta!"

      package main
    
      import (
          "fmt"
      )
    
      func main() {
          fmt.Println("Hello, universe!")
      }
      
  3. Tinjau cloudbuild.yaml, yang merupakan file konfigurasi build yang digunakan oleh Cloud Build. Saat build dipanggil dengan pemicu, langkah build dalam file ini menginstruksikan Cloud Build untuk menggunakan image golang dari Docker Hub guna membangun dan menjalankan file main.go.

       steps:
       - name: golang
         script: go run quickstart-automate/main.go
       
  4. Kembali ke direktori utama repositori Anda:

       cd ..
  5. Commit perubahan Anda ke GitHub dengan menjalankan perintah berikut:

        
        git add quickstart-automate/main.go
        git commit -m "update text"
        git push

    Anda mungkin akan diminta untuk memasukkan kredensial saat mengirim kode ke repositori Anda. Jika diminta, masukkan nama pengguna dan sandi atau token autentikasi.

Anda sekarang telah menerapkan perubahan ke repositori Anda. Push Anda akan menghasilkan build otomatis oleh pemicu Anda.

Lihat detail build

Di bagian ini, Anda akan melihat detail build yang terkait dengan build yang dipanggil setelah melakukan perubahan.
  1. Di menu navigasi Konsol Google Cloud, klik Cloud Build > History.

    Buka halaman Cloud Build

  2. Pilih project Anda lalu klik Buka.

    Anda akan melihat halaman Build history:

    Screenshot halaman histori build untuk otomatisasi

  3. Di kolom Build, klik nama build.

  4. Di halaman Build details, klik Build Artifacts.

    Anda akan melihat output yang mirip dengan berikut ini:

    Screenshot artefak build

  5. Untuk melihat log build, klik ikon download dan lihat file yang didownload.

Anda telah berhasil memanggil build Cloud Build menggunakan pemicu dan melihat detail build.

Pembersihan

Agar akun Google Cloud Anda tidak dikenakan biaya untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

  1. Di menu navigasi Konsol Google Cloud, klik Cloud Build > Triggers.

    Buka halaman Pemicu

  2. Pilih project Anda lalu klik Buka.

  3. Di baris hello-world-trigger, klik Menu tindakan (elipsis vertikal) yang terletak di ujung kanan baris.

  4. Pilih Hapus.

Anda kini telah menghapus pemicu yang terkait dengan repositori yang di-clone.

Langkah selanjutnya