Membangun CICD untuk integrasi Anda

Tutorial ini menjelaskan cara mengotomatiskan promosi integrasi antara berbagai lingkungan di berbagai project Google Cloud menggunakan variabel konfigurasi.

Ringkasan

Dalam tutorial ini, Anda akan mengotomatiskan deployment Application Integration menggunakan variabel konfigurasi untuk contoh integrasi. Alur integrasi contoh ini memanggil API dan memublikasikan respons dari API ke topik Pub/Sub. Contoh ini dimaksudkan untuk mengilustrasikan penggunaan tugas Call REST Endpoint dan Connectors. Anda dapat menyimpan contoh integrasi di repositori GitHub yang sesuai dengan berbagai lingkungan dan project Google Cloud .

Tujuan

Tutorial ini menunjukkan cara menyelesaikan tugas berikut dalam integrasi Anda:

  • Membuat integrasi.
  • Buat variabel konfigurasi dan gunakan dalam integrasi Anda.
  • Mempromosikan integrasi Anda ke lingkungan lain.

Biaya

Dalam tutorial ini, Anda akan menggunakan komponen Google Cloud yang dapat ditagih berikut:

Petunjuk dalam tutorial ini dirancang untuk menjaga penggunaan resource Anda tetap sesuai batas-batas Google Cloud Penawaran uji coba dan fitur cloud gratis.

Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, baca bagian Pembersihan.

Sebelum memulai

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Secret Manager API, Connectors API APIs, if any are not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  4. Create a service account:

    1. Ensure that you have the Create Service Accounts IAM role (roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles.
    2. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    3. Select your project.
    4. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    5. Click Create and continue.
    6. Grant the Pub/Sub Publisher (roles/pubsub.publisher) role to the service account.

      To grant the role, find the Select a role list, then select Pub/Sub Publisher (roles/pubsub.publisher).

    7. Click Continue.
    8. Click Done to finish creating the service account.

Membuat topik Pub/Sub

  1. Di konsol Google Cloud , buka halaman Topics Pub/Sub.

    Buka Topik

  2. Klik Create topic.

  3. Di kolom Topic ID, masukkan ID untuk topik Anda. Untuk mengetahui informasi selengkapnya tentang penamaan topik, lihat Panduan untuk memberi nama topik, langganan, skema, atau snapshot.

  4. Pertahankan opsi Add a default subscription.

  5. Jangan pilih opsi lainnya.

  6. Klik Create topic.

Mengonfigurasi konektor Pub/Sub

  1. Di Google Cloud konsol, buka halaman Integration Connectors > Connections, lalu pilih atau buat project Google Cloud .

    Buka halaman Connections

  2. Klik + Create New untuk membuka halaman Create Connection.
  3. Di bagian Location, pilih lokasi untuk koneksi.
    1. Region: Pilih lokasi dari menu drop-down.

      Untuk mengetahui daftar semua wilayah yang didukung, lihat Lokasi.

    2. Klik NEXT.
  4. Di bagian Connection Details, selesaikan langkah-langkah berikut:
    1. Connector: Pilih Pub/Sub dari menu drop-down Connector yang tersedia.
    2. Connector version: Pilih Connector version dari menu drop-down versi yang tersedia.
    3. Di kolom Connection Name, masukkan pub-sub-connector.
    4. Service Account: Pilih akun layanan yang memiliki peran yang diperlukan.
    5. Project ID: Google Cloud project ID tempat instance Pub/Sub berada.
    6. Topic ID: Masukkan nama topik Pub/Sub Anda.
    7. Klik Berikutnya.
  5. Di bagian Authentication, klik NEXT.
  6. Tinjau: Tinjau detail koneksi dan autentikasi Anda.
  7. Klik Create.

Membuat integrasi baru

Setelah Menyiapkan Application Integration, Anda dapat membuat integrasi baru:

  1. Di konsol Google Cloud, buka halaman Application Integration.

    Buka Application Integration

  2. Klik Integrations dari menu navigasi kiri untuk membuka halaman Integrations.
  3. Klik Create integration dan berikan detail berikut di halaman Create Integration:
    1. Nama integrasi: Masukkan nama untuk integrasi Anda. Contoh, build-cicd.
    2. Description: Masukkan deskripsi untuk integrasi Anda (opsional). Contoh, Demo integration created for CICD tutorial.
    3. Region: Pilih region us-central1 dari daftar region yang disediakan. Jika region yang ingin Anda pilih tidak disediakan, lihat Menyediakan region baru. Untuk melihat daftar wilayah yang didukung, lihat Lokasi Application Integration.
    4. Service account: Kolom ini muncul jika Anda telah mengaktifkan tata kelola untuk region Anda. Pilih akun layanan untuk integrasi Anda. Untuk mempelajari cara mengaktifkan tata kelola untuk wilayah Anda, lihat Mengedit wilayah.
    5. Klik Create. Tindakan ini akan membuka halaman editor integrasi tempat Anda dapat menambahkan tugas dan pemicu untuk membangun integrasi.

Membuat alur integrasi

Tambahkan pemicu API dan tugas Call REST Endpoint

Untuk menambahkan pemicu API trigger, lakukan langkah-langkah berikut:
  1. Di konsol Google Cloud , buka halaman Application Integration.

    Buka Application Integration

  2. Di menu navigasi, klik Integrations

    Halaman Integrations List akan muncul dan mencantumkan semua integrasi yang tersedia di project Google Cloud.

  3. Pilih integrasi build-cicd.

    Tindakan ini akan membuka integrasi di editor integrasi.

  4. Di menu navigasi editor integrasi, klik Triggers > API Trigger untuk menambahkan pemicu.
  5. Di menu navigasi integration editor, klik Tasks > Call REST Endpoint untuk menambahkan tugas.
  6. Tambahkan koneksi edge dari elemen API trigger ke elemen Call REST Endpoint dengan mengarahkan kursor ke titik kontrol pada elemen API trigger, lalu mengklik dan menarik garis ke titik kontrol pada elemen tugas Call REST Endpoint.

Membuat variabel konfigurasi

Untuk membuat variabel konfigurasi, ikuti langkah-langkah berikut:
  1. Di menu navigasi editor integrasi, klik (Toggle panel) untuk menampilkan panel Variables.
  2. Klik +Create.
  3. Lakukan hal berikut di panel Create Variable:
    1. Untuk Name, masukkan url.

      Application Integration menambahkan awalan `CONFIG_ ke variabel konfigurasi. Jika Anda ingin menambahkan variabel konfigurasi ke integrasi menggunakan API, gunakan format berikut untuk variabel konfigurasi: `CONFIG_CONFIG_VARIABLE_NAME`. Untuk mengetahui informasi tentang cara mendownload dan mengupload integrasi, lihat Mengupload dan mendownload integrasi.

    2. Untuk Jenis variabel, pilih Variabel Konfigurasi.
    3. Untuk Data type, pilih String.
    4. Klik Create.

      Variabel konfigurasi akan muncul di panel Variables.

  4. Ulangi Langkah 2 dan 3 untuk menambahkan variabel konfigurasi berikut:
    • Nama: connection_name
    • Jenis variabel: Config Variable
    • Jenis data: String

Menambahkan dan mengonfigurasi Call REST Endpoint

Untuk membuat variabel konfigurasi, ikuti langkah-langkah berikut:
  1. Di integration editor, klik tugas Call REST Endpoint untuk membuka panel konfigurasi tugas. Kemudian, lakukan hal berikut:
    1. Luaskan bagian Task input.
    2. Di URL dasar endpoint, klik Variabel, lalu tambahkan $`CONFIG_url`$.

Menambahkan dan mengonfigurasi tugas Connectors

  1. Di menu navigasi editor integrasi, klik Task > Connectors.
  2. Klik Configure Connectors.
  3. Dari daftar Region, pilih region tempat Anda membuat konektor Pub/Sub.
  4. Di kolom Connection, pilih Pub/Sub connector yang Anda buat di langkah sebelumnya.
  5. Di bagian Type, pilih Actions.
  6. Di bagian Set entities/actions, untuk Actions, pilih publishMessage.
  7. Di Nilai default, tambahkan nilai default untuk variabel konfigurasi.
  8. Klik Create.
  9. Di panel konfigurasi tugas Connectors, luaskan bagian Connection details untuk memperbarui kolom berikut:
    1. Di kolom Connection name, klik Variable, lalu pilih $`CONFIG_connection_name`$.

Menambahkan tugas Pemetaan Data

  1. Di menu navigasi integration editor, klik Task > pemetaan data.
  2. Tambahkan koneksi edge dari elemen Call REST Endpoint ke elemen Pemetaan Data dengan mengarahkan kursor ke titik kontrol pada elemen Call REST Endpoint, lalu mengklik dan menarik garis ke titik kontrol pada elemen tugas Pemetaan Data.
  3. Tambahkan koneksi edge lain dari elemen Pemetaan Data ke elemen Konektor dengan mengarahkan kursor ke titik kontrol pada elemen Pemetaan Data, lalu mengklik dan menarik garis ke titik kontrol pada elemen tugas Konektor.
  4. Di panel konfigurasi tugas Data Mapping, klik Open Data Mapping Editor.
  5. Petakan variabel output tugas Call REST Endpoint ke variabel input tugas Connectors.

Memublikasikan integrasi

Untuk memublikasikan integrasi, ikuti langkah-langkah berikut:
  1. Untuk memublikasikan integrasi, klik Publish di toolbar editor integrasi.

    Dialog Publish integration akan muncul.

  2. Dalam dialog Publish integration, masukkan nilai untuk variabel konfigurasi berikut:
    1. url: Masukkan nama URL endpoint.
    2. connection_name: Masukkan nama konektor Pub/Sub yang Anda buat di langkah sebelumnya.
  3. Klik Publikasikan.
  4. Setelah berhasil memublikasikan integrasi, Anda dapat melihat dan memeriksa log eksekusi integrasi yang dipublikasikan. Untuk melihat log, klik Logs di toolbar editor integrasi.

Mempromosikan integrasi di berbagai lingkungan

Untuk mempromosikan integrasi Anda di berbagai lingkungan, Anda dapat menggunakan alat integrationcli, yang merupakan alat open source yang memungkinkan Anda berinteraksi dengan Application Integration API dan Integration Connectors API. Alat ini memungkinkan Anda mengelola entity integrasi seperti integrasi, konfigurasi autentikasi, dan sebagainya. Untuk mengetahui informasi tentang cara membuat scaffold untuk integrasi dan menerapkan perubahan yang dihasilkan oleh scaffold, lihat Pengantar integrationcli di blog komunitas.

Anda juga dapat mempromosikan perubahan di seluruh lingkungan dengan menyiapkan pipeline DevOps, misalnya, menggunakan Jenkins, GitLab, Cloud Build, dan sebagainya. Untuk mengetahui informasi selengkapnya, lihat Integrasi dengan Cloud Build.

Jika tidak ingin menggunakan integrationcli, Anda dapat mendownload dan mengupload integrasi secara manual ke project baru. Anda harus membuat konektor di project baru secara manual karena saat ini konektor tidak dapat didownload. Saat Anda memublikasikan integrasi di lingkungan baru, Application Integration memungkinkan Anda memasukkan nilai untuk variabel konfigurasi.

Langkah berikutnya