Service Connection mengelola secara terpusat kredensial dan konfigurasi yang diperlukan oleh pipeline untuk mengakses layanan eksternal. Pipeline mengambil kunci, sertifikat, dan rahasia lainnya melalui koneksi tersebut, sehingga menghilangkan kebutuhan konfigurasi manual dan mengurangi risiko keamanan.
Kasus penggunaan
Skenario pipeline umum yang menggunakan service connection:
-
Repositori kode: Hubungkan ke Codeup untuk menyelesaikan otorisasi RAM secara otomatis, tanpa menyematkan kredensial atau memerlukan izin tambahan.
-
Paket: Hubungkan ke Packages untuk menyelesaikan otorisasi RAM secara otomatis.
-
Repositori gambar: Hubungkan ke repositori gambar pribadi untuk menangani
docker loginsecara otomatis. -
Kluster Kubernetes: Hubungkan kredensial kluster agar pipeline dapat memanggil
kubectluntuk melakukan pembaruan bergulir (rolling updates).
Jenis koneksi layanan
Flow mendukung jenis koneksi layanan berikut:
|
Kategori |
Produk |
|
Layanan Alibaba Cloud |
|
|
Layanan kode |
|
|
Layanan lainnya |
|
Membuat koneksi layanan
-
Di konsol Flow, klik Global Settings, lalu klik Service Connection Management.
-
Pada halaman Service Connection Management, klik Create atau New Service Connection.
CatatanTombol Create muncul jika belum ada koneksi layanan. Jika sudah ada, tombol New Service Connection akan muncul di pojok kanan atas.
-
Pilih jenis Service Connection. Contoh ini menggunakan Codeup. Klik Next.
-
Pada kotak dialog New Service Connection, konfigurasikan parameter berikut:
-
Service Connection name: Masukkan nama untuk koneksi layanan.
-
Service Connection ID: Opsional. Gunakan nilai default kecuali Anda memerlukan ID kustom.
-
Service authorization/certificate: Pilih kredensial yang sudah ada dari dropdown Service authorization/certificate, atau klik + New untuk membuat kredensial otorisasi baru.
Catatan-
Untuk layanan non-Alibaba Cloud, masukkan secara manual username serta token atau kata sandi untuk membuat sertifikat.
-
Jika koneksi layanan menjadi tidak valid (misalnya, setelah karyawan keluar), perbarui otorisasi/sertifikatnya alih-alih memodifikasi setiap pipeline yang terkait satu per satu.
-
-
Usage Scope: Atur siapa yang dapat menggunakan koneksi layanan ini:
-
Private: Hanya terlihat oleh Anda.
-
Public: Terlihat oleh semua orang.
-
Custom: Hanya terlihat oleh anggota tertentu.
-
-
-
Setelah mengonfirmasi pengaturan, klik Create.
Koneksi layanan GitHub (Situs Region)
Bagian ini hanya berlaku untuk situs Region Flow, bukan situs Flow pusat.
Flow terhubung ke repositori GitHub melalui GitHub App. Buat dan instal GitHub App di GitHub, lalu gunakan untuk membuat koneksi layanan di Flow:
-
Di GitHub, buka dan klik New GitHub App.
Di panel navigasi kiri Developer settings, pilih GitHub Apps.
-
Pada halaman Register new GitHub App, konfigurasikan hal berikut:
-
GitHub App name: Masukkan nama untuk GitHub App Anda.
-
Homepage URL: Masukkan URL kustom.
-
Permissions: Di bawah izin Repository, berikan izin Contents - Read and write. Ini memungkinkan Flow membaca dari dan menulis ke cabang repositori Anda.
-
Klik Create GitHub App.
-
-
Pada halaman General aplikasi, salin
Client ID. Klik Generate a private key untuk mengunduh file.pem. Simpan dengan aman — Anda memerlukannya nanti untuk membuat sertifikat.Isi file kunci privat dalam format PEM. Contoh:
-----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAgiCCYTPSvYLq0w5pC7tH2gXnR++kcoB1DjY6XDCRZ1yhqZZY nSpLFfusXUtb1gu64V1igLcWy24yiV7aIM3yLw3tcCXGx5HjFXRdNUulJ1LuPeFm E/WHs+Ifew0NprKUB1Dlxxx/TvVxxx8PNY6cP6OF6YUKHRxylYIxQ6lh D8DfRQZcnOkfHDjWxxx...xxx4RqtlIGHkIWI ZJXzdMVPJ11CfcA01pTYbfD/1zepeDj0i0SPRSkcvOp6ggynSmiK6sEnAp34Cxr5 uuctk1biJ4AVs/fb+8gam2FYEYCcj5Il177LHQIDAQABAoIBAERES00p+Hl4GTab 37cfbZ0lLsuE9B4mOdJ0HDMGIjKxzwU4GVLnt72Yge/l33IivtjUGqt5zKHRFGJf N3RWb8pF8nNAFWXbup3PVd+e/SSseIFIOyfbLJsYL7223TV5D0FoOFMgeZks0Jn4 ep6N0x6u4xF6RTNvAFGcWxSXZ7tqHPO3u8UNCgxVhT42/MhuixNz2SkfWbNc134y 2k791mxCxDrJ2TUA3pmhmGwx4LZpxZqls4LU5/visx4LVEnHQBkJltNcGJl2sa4Z zzIFUBOubEasxVAVPxxx...xxxK/rcDzFm0Qrlu PQbmbkECqYEA3wJg+5AJ+pSB+GIE/SuqkZltmblxxxtokMzMmXR6AJrGvFm /Bsh9NkJlivUFA35+VN9/WwTDaF7Mp+d8aT9BaGePTmuR4q8ySEWMVYiZ0MJAaJA 5GK5fvjb6EAqozE3KuuGN0/XTKsnw3mNZc/QUK9Cs6AnBv0fSPu0KPUCqYEAw0tk a/pX9NNaYI8MPXzc0B3amrR7/p7SYgiwONESj3q090od3I7sGNCPyE0yqDy2ImC7 5jSe6dGwdHxqrIF8DiIkKJHtIbAFDxkerm0KibD0PzrMdTBMLMrR/VNsij9w7Aov +LiGi4dr40s33UkxFNsoYFxGv0BIHiG7em6zYIkCqYEApo0ea5a61vcCwHuli9nt APuWDLm4GaWcqkm0HK1Mvv3mIS4FGWYdNqtvzGpuzRHG1n6lI3UjOvH6jBqCbIdg oPlH8HeAN0klh8xxx...xxxCtQ4LtC400gldcEC Qn5MlaJ21LcFzSMdxBoJSS0CgYASErsTZxKWvKyDfRmD4zdIJ0sgwA0tjiMoIW2h xG90ScXPWI805yEgVsTHos043413dv5MmpgOSXKMBSuWFVGWursv6flJAdImCIwX VXjIL03GXDmpqr0R/Z8bU4oa7S4VGghAe0swozavzTk5SFm7dWCyMif2/Vbv0u3v saj2CQKBqOCcMokki1iJK2SrhTa3LT/KFRjylAMkyYmTU6gyz0GCWXKUkHVNOBvE lkPq17iIRA2pG5kDOSlNnkLkFic04m/tIsyfPQpdHNcd1WFEn18Zjb+on/mqTwED nPhnrk0LV4MAx200qCvNiZ8tNpw7f3pZqF90krvkZ1hzURqnBmAGnA== -----END RSA PRIVATE KEY-----
-
Buka halaman Install App. Pilih akun atau organisasi target, pilih repositori yang akan diberi akses, lalu klik Install. Setelah instalasi, temukan
Installation IDdi URL atau pada halaman konfigurasi aplikasi yang telah diinstal.Untuk menemukan
Installation ID, periksa angka di akhir URL bilah alamat browser setelah instalasi. Format URL-nya adalah:https://github.com/organizations/{org-name}/settings/installations/{INSTALLATION_ID}
-
Di Flow, buka dan klik New Service Connection. Pilih tipe GitHub. Buat sertifikat GitHub dengan memasukkan
Client ID, isi filePrivate key, danInstallation IDdari langkah-langkah sebelumnya. Buat sertifikat tersebut, lalu buat koneksi layanan.Masukkan Service connection name dan atur Usage Scope (opsi: Private: hanya terlihat oleh Anda, Public: terlihat oleh semua orang, Custom: terlihat oleh anggota tertentu; default-nya Private).
-
Buat pipeline dan tambahkan sumber kode. Pilih koneksi layanan GitHub yang telah Anda buat. Anda kini dapat memilih repositori dan cabangnya. Pipeline dapat mengkloning kode, menggabungkan cabang, dan menghapus cabang.
Terhubung ke GitLab self-hosted internal
Jika GitLab self-hosted Anda hanya dapat diakses melalui jaringan internal, gunakan situs Region Flow untuk terhubung. Situs Flow pusat tidak mendukung fitur ini.
-
Di konsol Flow, aktifkan domain VPC dan tambahkan alamat IP akses balik untuk situs GitLab Anda. Pengaturan jaringan.
-
Saat membuat Service Connection, pilih Self-hosted GitLab (API v4 and later) sebagai jenisnya.
-
Buat service authorization/certificate baru. Pilih The GitLab domain can be accessed only through an internal network. Lalu pilih VPC, masukkan alamat IP internal, serta berikan nama domain dan kredensial GitLab Anda.
-
Klik Test Connection untuk memverifikasi konektivitas. Jika pengujian gagal, koneksi tidak dapat digunakan. Gunakan pesan error untuk pemecahan masalah.