Menghubungkan ke GitLab Enterprise

Halaman ini menjelaskan cara membuat koneksi ke GitLab Enterprise dan membuat link ke repositori GitLab Enterprise. Anda dapat menyelesaikan tugas ini menggunakan konsol, atau Google Cloud CLI. Google Cloud

Petunjuk ini ditujukan untuk developer aplikasi, administrator platform, dan pengelola keamanan yang ingin menggunakan repositori kode sumber GitLab Enterprise dengan Google. Secara khusus, Anda dapat menggunakan repositori GitLab Enterprise dengan Gemini Code Assist.

Untuk mempelajari Developer Connect lebih lanjut, lihat Ringkasan Developer Connect.

Sebelum memulai

  1. Login ke Akun Google Anda.

    Jika Anda belum memilikinya, Daftar untuk membuat akun baru.

  2. 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

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

  4. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. 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

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

  7. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. Mengaktifkan Developer Connect juga mengaktifkan Secret Manager API.

  9. Pastikan Anda memiliki akses ke akun di GitLab Enterprise.

    Untuk membantu menjaga keamanan pekerjaan tim Anda, sebaiknya selesaikan tugas dalam panduan ini menggunakan akun layanan atau akun yang dibagikan oleh tim Anda, bukan akun pribadi.

  10. Pastikan Anda memiliki repositori GitLab Enterprise, atau memiliki izin tingkat admin di repositori bersama.
  11. Opsional: Buat kunci enkripsi yang dikelola pelanggan (CMEK) untuk mengenkripsi secret autentikasi yang dibuat Developer Connect.
  12. Opsional: Untuk menggunakan petunjuk command line dalam panduan ini, selesaikan langkah-langkah berikut:
    1. Instal Google Cloud CLI. Jika Anda telah menginstal gcloud CLI sebelumnya, pastikan Anda memiliki versi terbaru yang tersedia dengan menjalankan gcloud components update.
    2. Buat akun layanan Developer Connect dengan menjalankan perintah berikut, dengan PROJECT_ID adalah Google Cloud project ID Anda:
              gcloud beta services identity create \
                  --service=developerconnect.googleapis.com \
                  --project=PROJECT_ID
              

Persyaratan host

Jika Anda belum menginstal instance Server GitLab Enterprise Edition, lihat panduan penginstalan dari GitLab Enterprise Edition untuk mengetahui petunjuknya.

Saat mengikuti petunjuk untuk menginstal instance Server GitLab Enterprise Edition, perhatikan hal berikut:

  • Anda harus mengonfigurasi host untuk menangani protokol HTTPS. Host yang dikonfigurasi dengan protokol HTTP tidak didukung.

  • Anda harus mengonfigurasi host dengan URL yang sama yang digunakan untuk menjangkau host Anda dari Google Cloud. Untuk mempelajari lebih lanjut, lihat dokumentasi GitLab tentang mengonfigurasi URL eksternal.

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk membuat koneksi dan link, minta administrator Anda untuk memberi Anda peran IAM berikut:

  • Jika Anda bukan pemilik project: Admin Developer Connect (roles/developerconnect.admin) di akun pengguna Anda.
  • Jika Anda berencana menggunakan CMEK untuk mengenkripsi secret yang dibuat Developer Connect: Pengenkripsi/Pendekripsi CryptoKey Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) di Akun Layanan Secret Manager.
  • Jika Anda berencana menggunakan gcloud CLI untuk menyelesaikan langkah-langkah dalam panduan ini: Peran Admin Secret Manager (roles/secretmanager.admin) di Akun Layanan Developer Connect.
  • Jika Anda berencana menggunakan Google Cloud konsol untuk menyelesaikan langkah-langkah dalam panduan ini: Admin IAM Project (roles/resourcemanager.projectIamAdmin) di akun pengguna Anda.

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.

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

Membuat token akses

Untuk membuat token akses di GitLab, selesaikan langkah-langkah berikut:

  1. Login ke GitLab.

  2. Ikuti petunjuk dalam dokumentasi GitLab untuk membuat token akses pribadi, token akses grup, atau token akses project dengan izin berikut:

    • Satu token dengan cakupan api untuk menghubungkan dan memutuskan koneksi repositori.
    • Satu token dengan cakupan read_api untuk mengizinkan Developer Connect membaca kode sumber di repositori Anda.
    • Untuk token akses grup dan token akses project, token harus memiliki peran Pengelola atau yang lebih tinggi.

Membuat koneksi

Bagian ini menjelaskan cara membuat koneksi antara Developer Connect dan GitLab Enterprise. Jika menggunakan konsol Google Cloud , Anda juga dapat mulai menambahkan link ke repositori saat Anda selesai menyiapkan koneksi.

Untuk membuat koneksi GitLab Enterprise baru, pilih salah satu opsi berikut:

Konsol

Mulai koneksi dengan menyelesaikan langkah-langkah berikut:

  1. Di Google Cloud konsol, buka Developer Connect.

    Buka Developer Connect

    Developer Connect menampilkan halaman Repositori Git.

    • Jika Anda melihat daftar penyedia pengelolaan kode sumber: Mulai konfigurasi koneksi pertama Anda dengan memilih penyedia pengelolaan kode sumber. Klik Connect di kartu GitLab Enterprise.
    • Jika Anda melihat tabel yang mencantumkan koneksi yang ada: Tetapkan penyedia pengelolaan kode sumber dengan mengklik Create connection > GitLab Enterprise.

      Halaman Create Connection akan terbuka.

  2. Untuk Region, pilih region untuk resource koneksi Anda.

    1. Untuk Name, masukkan nama untuk koneksi baru Anda.
  3. Untuk Host URL, masukkan URL host yang ingin Anda hubungkan.

  4. Di bagian Access Tokens, masukkan token untuk akun Anda:

    • Token akses API: Masukkan token akses dengan cakupan api.
    • Read API access token: Masukkan token akses dengan read_api cakupan.

    Anda bertanggung jawab untuk memastikan token GitLab Anda tetap valid. Token GitLab memiliki masa berlaku maksimum 365 hari, kecuali jika ditentukan lain oleh pembuat token atau administrator. Untuk mempelajari cara mengelola setelan dan notifikasi masa berlaku token, lihat dokumentasi GitLab tentang token akses pribadi, token akses grup, dan token akses project.

  5. Klik Show more untuk melihat setelan konfigurasi opsional.

    1. Opsional: Secara default, Developer Connect dapat bertindak sebagai proxy untuk panggilan Git ke GitLab Enterprise. Untuk menonaktifkan opsi ini, hapus centang pada kotak Enable Developer Connect proxy.

    2. Untuk Network type, pilih Public internet.

      Jika Anda ingin menggunakan jaringan pribadi, lihat Menghubungkan ke repositori GitLab Enterprise yang dihosting di jaringan pribadi.

    3. Opsional: Di bagian Encryption, pilih kunci CMEK untuk mengenkripsi secret Secret Manager yang dibuat Developer Connect.

  6. Klik Continue.

Setelah koneksi dibuat, halaman Link repositories akan muncul.

Selesaikan langkah-langkah berikut untuk menautkan repositori ke koneksi Anda:

  1. Dalam daftar repositori yang tersedia, pilih repositori yang ingin Anda gunakan.

  2. Klik OK.

  3. Klik Link.

Koneksi Anda ditambahkan ke halaman Connections dan link repositori Anda ditambahkan ke halaman Repositories di Google Cloud konsol. Anda dapat menambahkan lebih banyak link ke koneksi yang ada kapan saja.

Jika Anda menyiapkan Gemini Code Assist, lanjutkan prosesnya dengan mengikuti langkah-langkah di Mengonfigurasi dan menggunakan penyesuaian kode Gemini Code Assist.

gcloud

  1. Buat secret webhook di Secret Manager dengan menjalankan perintah berikut, dengan WEBHOOK_SECRET_NAME adalah nama untuk secret webhook Anda:

         cat /proc/sys/kernel/random/uuid | tr -d '\n' | gcloud secrets create WEBHOOK_SECRET_NAME
    
  2. Simpan token akses Anda di Secret Manager dengan menjalankan perintah berikut:

    gcloud secrets create API_SECRET_NAME
    
    echo -n API_SECRET_DATA | gcloud secrets versions add API_SECRET_NAME --data-file=-
    
    gcloud secrets create READ_SECRET_NAME
    
    echo -n READ_SECRET_DATA | gcloud secrets versions add READ_SECRET_NAME --data-file=-
    

    Ganti kode berikut:

    • API_SECRET_NAME: nama untuk secret yang menyimpan token dengan api cakupan.
    • API_SECRET_DATA: token dengan api cakupan, mirip dengan glpat-XXXXXXXXXXXXXXXX.
    • READ_SECRET_NAME: nama untuk secret yang menyimpan token dengan read_api cakupan.
    • READ_SECRET_DATA: token dengan read_api cakupan, mirip dengan glpat-XXXXXXXXXXXXXXXX.
  3. Mulai koneksi ke akun GitLab Enterprise Anda dengan menjalankan developer-connect connections create perintah:

    gcloud developer-connect connections create CONNECTION_NAME \
        --location=REGION \
        --gitlab-config-read-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/READ_SECRET_NAME/versions/VERSION \
        --gitlab-config-authorizer-credential-user-token-secret-version=projects/PROJECT_ID/secrets/API_SECRET_NAME/versions/VERSION \
        --gitlab-enterprise-config-host-uri=HOST_URI
        --gitlab-enterprise-config-webhook-secret-version=projects/PROJECT_ID/secrets/WEBHOOK_SECRET_NAME/versions/VERSION
        --git-proxy-config-enabled
    

    Ganti kode berikut:

    • CONNECTION_NAME: nama koneksi Anda.
    • REGION: region untuk koneksi Anda.
    • PROJECT_ID: project ID Anda. Google Cloud
    • READ_SECRET_NAME: nama secret Secret Manager yang berisi token dengan cakupan read_api.
    • API_SECRET_NAME: nama secret Secret Manager yang berisi token dengan cakupan api
    • VERSION: nomor versi setiap secret. Nilai ini dapat berupa latest untuk menggunakan nomor versi terbaru.
    • HOST_URI: URI untuk host yang ingin Anda hubungkan.
    • WEBHOOK_SECRET_NAME: nama secret Secret Manager yang berisi webhook Anda
    • --git-proxy-config-enabled: flag opsional yang memungkinkan Developer Connect bertindak sebagai proxy untuk panggilan Git ke GitLab Enterprise. Kemampuan ini berada dalam Pratinjau.

    Developer Connect menyelesaikan koneksi ke GitLab. Selanjutnya, tautkan ke repositori.

Setelah membuat koneksi ke GitLab Enterprise, Anda dapat menautkan ke repositori. Anda dapat mengulangi langkah-langkah ini nanti untuk menautkan repositori tambahan jika diperlukan.

Untuk membuat link repositori di koneksi GitLab Enterprise yang ada, pilih salah satu opsi berikut:

Konsol

Buat link ke repositori dengan menyelesaikan langkah-langkah berikut:

  1. Buka halaman Repositories di Google Cloud konsol.

    Buka halaman Repositories

  2. Klik Link repository.

    Panel Link Git repositories akan terbuka.

  3. Dalam daftar koneksi, pilih koneksi.

  4. Klik Continue.

  5. Dalam daftar repositori, pilih repositori yang ingin Anda tautkan.

    Developer Connect menampilkan nama yang disarankan untuk resource repositori Anda.

  6. Pilih opsi penamaan resource repositori:

    • Generated: Gunakan nama resource repositori yang dibuat.
    • Manual: Masukkan nama Anda sendiri.
  7. Klik Create.

Developer Connect membuat link repositori dan menampilkannya di konsol Google Cloud .

gcloud

Tautkan ke repositori GitLab dengan menjalankan perintah berikut:

gcloud developer-connect connections git-repository-links create REPO_NAME \
    --clone-uri=REPO_URI \
    --connection=CONNECTION_NAME \
    --location=REGION

Ganti kode berikut:

  • REPO_NAME: nama untuk link repositori Anda.
  • REPO_URI: link ke repositori Anda, mirip dengan https://gitlab.com/my-project/test-repo.git.
  • CONNECTION_NAME: nama koneksi Anda.
  • REGION: region koneksi Anda.

Developer Connect membuat link repositori.

Untuk mencantumkan repositori tertaut, jalankan perintah developer-connect connections git-repository-links list.

Jika Anda menyiapkan Gemini Code Assist, lanjutkan prosesnya dengan mengikuti langkah-langkah di Mengonfigurasi dan menggunakan penyesuaian kode Gemini Code Assist.

Langkah berikutnya