Mengotomatiskan deployment App Engine dengan Cloud Build

Panduan memulai ini menunjukkan cara men-deploy aplikasi yang disimpan di Cloud Source Repositories ke App Engine secara otomatis setelah commit baru.

Sebelum memulai

  1. Selesaikan langkah-langkah dari Membuat repositori kode di Cloud Source Repositories.

    Setelah menyelesaikan panduan memulai tersebut, Anda memiliki aplikasi yang dapat di-deploy ke App Engine.

  2. Enable the App Engine Admin, Cloud Build APIs.

    Enable the APIs

Memberi App Engine akses ke akun layanan Cloud Build

Cloud Build menggunakan akun layanan untuk men-deploy kode Anda. Izin default untuk akun ini tidak mengizinkan tindakan tertentu, seperti men-deploy ke App Engine.

Aktifkan akun layanan Anda untuk melakukan deployment ke App Engine dengan memberikan peran Identity and Access Management (IAM) tambahan ke akun tersebut:

  1. Di Konsol Google Cloud, buka halaman Cloud Build Settings:

    Buka halaman Cloud Build Settings

    Anda akan melihat halaman Izin akun layanan:

    Halaman izin Akun layanan.

  2. Tetapkan status peran App Engine Admin ke Aktifkan.

Men-deploy aplikasi

  1. Di jendela terminal, buka direktori yang berisi repositori:

    cd hello-world
    
  2. Deploy aplikasi contoh:

    gcloud app deploy app.yaml
    
  3. Pastikan aplikasi Anda berjalan:

    gcloud app browse
    

    Jika aplikasi sedang berjalan, browser akan menampilkan pesan Hello, World!.

Membuat file cloudbuild.yaml

  1. Di jendela terminal, buka direktori yang berisi repositori:

    cd hello-world
    
  2. Dengan menggunakan editor teks, buat file bernama cloudbuild.yaml, lalu tempel informasi konfigurasi berikut:

    steps:
    - name: "gcr.io/cloud-builders/gcloud"
      args: ["app", "deploy"]
    timeout: "1600s"
    

Menambahkan file cloudbuild.yaml ke repositori Anda

  1. Tambahkan cloudbuild.yaml ke repositori:

    git add .
    
  2. Commit file dengan komentar yang menjelaskan histori tindakan ini:

    git commit -m "Add cloudbuild.yaml file"
    
  3. Dengan menggunakan perintah git push, tambahkan konten repositori Git lokal ke Cloud Source Repositories:

    git push origin master
    

Membuat pemicu build

  1. Di GCP Console, buka halaman Pemicu Cloud Build.

    Buka halaman Pemicu

  2. Jika project Google Cloud Anda tidak dipilih, klik Select a project, lalu klik nama project Google Cloud Anda.

  3. Klik Buat trigger.

    Halaman Buat pemicu akan terbuka.

  4. Isi opsi berikut:

    • Di kolom Nama, ketik app-engine-test.
    • Di bagian Peristiwa, pilih Kirim ke cabang.
    • Di bagian Source, pilih hello-world sebagai Repository dan ^master$ sebagai Branch.
    • Di bagian Konfigurasi, pilih File konfigurasi Cloud Build (yaml atau json).
    • Di kolom Lokasi file konfigurasi Cloud Build, ketik cloudbuild.yaml setelah /.
  5. Klik Buat untuk menyimpan pemicu build Anda.

Menerapkan perubahan ke aplikasi Anda

  1. Di jendela terminal, gunakan editor teks untuk mengupdate file main.py dengan menempel kode berikut:

    #!/usr/bin/env python
    
    import webapp2
    
    class MainHandler(webapp2.RequestHandler):
        def get(self):
            self.response.write('I update automatically!')
    
    app = webapp2.WSGIApplication([
        ('/', MainHandler)
    ], debug=True)
    
  2. Tambahkan file ke Git:

    git add .
    
  3. Commit file dengan komentar yang menjelaskan histori tindakan ini:

    git commit -m "Update app to demonstrate build triggers"
    
  4. Dengan menggunakan perintah git push, tambahkan konten repositori Git lokal ke Cloud Source Repositories:

    git push origin master
    

Melihat build yang sedang berlangsung

  1. Di GCP Console, buka halaman Pemicu Cloud Build.

    Buka halaman Pemicu

  2. Jika project Google Cloud Anda tidak dipilih, klik Select a project, lalu klik nama project Google Cloud Anda.

  3. Klik Histori.

    Daftar semua build akan terbuka. Di bagian atas terdapat entri baru yang mewakili build yang dimulai setelah Anda mengirim perubahan ke Cloud Source Repositories. Jika build sudah siap, tanda centang hijau akan muncul di samping entri build.

Menguji ulang aplikasi

Di jendela terminal, buka aplikasi Anda:

gcloud app browse

Browser sekarang menampilkan pesan I update automatically!.

Pembersihan

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

Menghapus pemicu build

  1. Di GCP Console, buka halaman Pemicu Cloud Build.

    Buka halaman Pemicu

  2. Jika project Google Cloud Anda tidak dipilih, klik Select a project, lalu klik nama project Google Cloud Anda.

  3. Pada baris yang sama dengan pemicu yang ingin Anda hapus, klik More , lalu klik Delete.

Menghapus repositori

  1. Di GCP Console, buka halaman All repository untuk Cloud Source Repositories.

    Open Cloud Source Repositories

  2. Arahkan kursor ke repositori yang ingin Anda hapus, lalu klik Settings .

    Halaman Setelan umum akan terbuka.

  3. Klik Delete this repository .

    Dialog Remove repository akan terbuka.

  4. Ketik nama repositori yang ingin Anda hapus.

  5. Klik Delete.

Langkah selanjutnya