Mengonfigurasi setelan kontrol versi project

Halaman ini menjelaskan cara mengonfigurasi elemen project Anda untuk berintegrasi dengan Git untuk kontrol versi.

Setelan project

Untuk melihat setelan project, buka project, lalu pilih ikon Setelan dari menu ikon Looker IDE.

Dari sini, Anda dapat mengakses tiga tab Project Settings:

Konfigurasi

Tab Configuration di halaman Project Settings akan membuka halaman Project Configuration. Di halaman Project Configuration, Anda dapat mengonfigurasi setelan berikut:

  • Nama: Nama project Anda. Anda dapat mengganti nama project dengan mengedit teks dan mengklik tombol Save Project Configuration. Lihat halaman dokumentasi Mengakses dan mengedit informasi project untuk mengetahui detail selengkapnya.
  • Nama Cabang Produksi Git: Tentukan nama cabang Git yang akan digunakan sebagai target penggabungan untuk cabang pengembangan project Anda. Cabang Git harus ada di repositori Git Anda. Lihat bagian Nama cabang produksi Git di halaman ini untuk mengetahui informasi selengkapnya.

  • Kualitas Kode: Menentukan apakah akan mewajibkan developer untuk berhasil menjalankan LookML Validator pada project sebelum melakukan perubahan apa pun pada project. Kualitas Kode memiliki opsi berikut:

    • Memerlukan perbaikan error dan peringatan sebelum melakukan commit: Developer Looker hanya dapat melakukan commit perubahan setelah berhasil menjalankan LookML Validator dan menyelesaikan semua error dan peringatan. Ini adalah setelan yang disarankan.
    • Hanya memerlukan perbaikan error sebelum melakukan commit: Developer Looker hanya dapat melakukan commit perubahan setelah berhasil menjalankan LookML Validator dan menyelesaikan semua error. Developer dapat melakukan perubahan jika ada peringatan. Meskipun tidak direkomendasikan, opsi ini dapat berguna, misalnya, jika peringatan baru diperkenalkan ke LookML yang berfungsi setelah update Looker.
    • Mengizinkan commit kode yang rusak: Developer Looker dapat melakukan commit perubahan tanpa menjalankan LookML Validator dan terlepas dari apakah ada error atau peringatan di LookML. Opsi ini tidak direkomendasikan karena dapat menyebabkan LookML yang tidak berfungsi atau menghasilkan hasil yang salah.

  • Wajibkan pengujian data lulus sebelum men-deploy project ini ke produksi: Jika project LookML memiliki satu atau beberapa parameter test, opsi ini mengharuskan developer menjalankan pengujian data sebelum men-deploy perubahan apa pun. Jika pengujian data lulus, IDE akan mengizinkan developer men-deploy perubahan ke produksi. Lihat halaman dokumentasi parameter test untuk mengetahui informasi tentang cara menyiapkan pengujian data di project LookML Anda. Lihat halaman dokumentasi Menggunakan kontrol versi dan men-deploy untuk mengetahui informasi tentang cara menjalankan pengujian data pada project Anda. Secara default, opsi Wajibkan pengujian data lulus sebelum men-deploy project ini ke produksi diaktifkan untuk project LookML baru.

  • Integrasi Git: Menentukan tingkat integrasi dengan penyedia Git Anda. Lihat Opsi integrasi Git untuk mengetahui detailnya.

  • Aktifkan Mode Deployment Lanjutan: Setelan yang, jika diaktifkan, memungkinkan pengguna men-deploy SHA, tag, atau cabang ke produksi. Lihat halaman dokumentasi Mode deploy lanjutan untuk mengetahui informasi selengkapnya tentang penggunaan kontrol versi dengan Mode Deploy Lanjutan yang diaktifkan.

  • Webhook Deploy Secret: Menyiapkan autentikasi untuk men-deploy perubahan ke produksi di instance Looker Anda. Lihat halaman dokumentasi Mengonfigurasi secret deploy webhook untuk mengetahui detailnya.

  • Reset Koneksi Git: Tombol ini akan membuka jendela Configure Git, tempat Anda dapat memperbarui setelan koneksi untuk repositori Git.

    Mereset koneksi Git akan mempertahankan histori Git untuk cabang utama. Tindakan ini juga akan mempertahankan histori cabang pribadi setiap developer Looker setelah mereka menyinkronkan mode pengembangan. Untuk mempertahankan histori untuk semua cabang, lihat halaman Praktik Terbaik Bermigrasi ke repositori Git baru.

  • Delete Project: Tombol ini menghapus project, sehingga menghapus semua LookML dari project di semua lingkungan pengembangan dan produksi di seluruh instance Looker Anda.

  • Ringkasan Git: Bagian ini menampilkan konfigurasi Git project dan informasi cabang Git pengguna saat ini.

Nama cabang produksi Git

Dengan integrasi Looker Git default, semua developer Looker menggabungkan perubahan mereka ke cabang utama yang disebut master. Anda dapat menggunakan kolom Git Production Branch Name untuk menentukan cabang dari repositori Git yang harus digunakan Looker sebagai cabang target tempat cabang developer Looker digabungkan. (Lihat halaman dokumentasi Menggunakan kontrol versi dan men-deploy untuk mengetahui alur kerja Git default dan opsi lainnya untuk implementasi Git lanjutan.)

Untuk project yang ada, pertimbangkan untuk melakukan hal berikut sebelum mengubah nama cabang produksi Git:

  • Minta semua developer di project Looker untuk melakukan perubahan dan menggabungkan cabang mereka ke cabang produksi yang ada, lalu menjeda pekerjaan mereka hingga nama cabang produksi Git diperbarui dan disimpan di konfigurasi project Looker.
  • Jika project Anda menggunakan permintaan pull terintegrasi, selesaikan dan gabungkan permintaan pull yang terbuka, sebagaimana mestinya.
  • Lakukan persiapan yang diperlukan di sisi penyedia Git, seperti membuat cabang baru di repositori, mengganti nama cabang Git default yang ada, atau tindakan apa pun yang mungkin diperlukan untuk menyiapkan cabang sehingga Looker dapat menggunakannya sebagai cabang target untuk penggabungan. Setidaknya, Anda harus memverifikasi bahwa cabang yang ingin digunakan adalah cabang yang ada di repositori Git Anda.

Untuk mengubah cabang Git yang digunakan project Anda sebagai target penggabungan untuk cabang pengembangan:

  1. Pilih ikon Settings dari menu ikon Looker IDE untuk menampilkan setelan project. Tab Konfigurasi akan terbuka secara default.
  2. Di kolom Git Production Branch Name, masukkan nama cabang Git yang ingin Anda gunakan sebagai cabang produksi untuk project Looker.
  3. Klik tombol Save Project Configuration untuk menyimpan perubahan.

Mengimpor Kredensial

Bagian Import Credentials adalah tempat Anda dapat mengelola kredensial autentikasi untuk repositori jarak jauh pribadi. Lihat halaman dokumentasi Mengimpor file dari project lain untuk mengetahui detailnya.

Pengelolaan Cabang

Di tab Pengelolaan Cabang pada halaman Setelan Project, Anda dapat melihat semua cabang Git yang terkait dengan project. Lihat halaman dokumentasi Menggunakan kontrol versi dan men-deploy untuk mengetahui detailnya.

Opsi integrasi Git

Setelah Anda menyiapkan koneksi Git, Looker akan menggunakan penyedia Git untuk mengelola file sumber LookML, seperti yang dijelaskan di halaman dokumentasi Menggunakan kontrol versi dan men-deploy.

Jika Anda adalah admin Looker, Anda dapat mengonfigurasi opsi tambahan untuk integrasi Looker dengan Git menggunakan opsi Integrasi Git di tab Konfigurasi pada panel setelan project:

  • Nonaktif: Looker tidak akan menampilkan link eksternal ke antarmuka penyedia Git Anda.
  • Tampilkan Link: Looker akan memberikan link eksternal ke antarmuka penyedia Git Anda sehingga developer dapat melihat project di antarmuka penyedia Git. Looker juga akan memberikan link untuk setiap file project sehingga developer Anda dapat melihat histori file dan informasi kesalahan Git di antarmuka penyedia Git Anda. Lihat bagian Mengintegrasikan Link Eksternal ke Penyedia Git Anda untuk mengetahui informasi tentang link tersebut.
  • Pull Request Direkomendasikan: Selain menyediakan link eksternal ke antarmuka penyedia Git Anda, Looker akan memberi developer opsi untuk mengirimkan permintaan pull sehingga developer lain dapat menyetujui perubahan sebelum menambahkannya ke project. Lihat bagian Mengintegrasikan permintaan pull untuk project Anda untuk mengetahui informasi tentang cara menyiapkannya.
  • Pull Request Wajib: Ini sama dengan Pull Request Direkomendasikan, kecuali bahwa developer LookML Anda diwajibkan untuk membuka pull request guna mengirimkan perubahan ke project. Lihat bagian Mengintegrasikan permintaan pull untuk project Anda untuk mengetahui informasi tentang cara menyiapkannya.

Untuk menyimpan setelan integrasi Git, klik Save Project Configuration di bagian Deployment.

Jika Anda telah mengaktifkan salah satu opsi integrasi Git tambahan (Tampilkan Link, Pull Request Direkomendasikan, atau Pull Request Wajib), Looker akan menyediakan link eksternal ke antarmuka penyedia Git Anda. Link eksternal ini akan membuka tab browser baru ke situs penyedia Git Anda.

Untuk melihat link eksternal ini, developer Anda harus memiliki akun dengan penyedia Git, dan harus memiliki akses ke repositori Git project.

Di menu File Options tiga titik untuk setiap file LookML, Looker menyediakan link ke situs penyedia Git Anda untuk melihat file, melihat informasi blame Git untuk file, dan melihat histori commit untuk file.

Di panel Tindakan Git, Anda juga dapat menggunakan opsi Lihat Project di <Git provider> untuk membuka file project di situs penyedia Git.

Mengintegrasikan permintaan pull untuk project Anda

Dengan integrasi Looker Git default, developer Looker melakukan commit perubahan ke cabang pengembangan, lalu menggabungkan cabang pengembangan ke cabang produksi. Kemudian, saat Anda men-deploy ke lingkungan Looker, Looker akan menggunakan commit terbaru di cabang produksi. (Lihat halaman dokumentasi Menggunakan kontrol versi dan men-deploy untuk mengetahui alur kerja Git default dan opsi lainnya untuk implementasi Git lanjutan.)

Daripada mengizinkan developer Looker menggabungkan cabang pengembangan mereka ke cabang produksi Looker, Anda dapat menyiapkan project dengan opsi Pull Request Direkomendasikan atau Pull Request Wajib:

  • Pull Request Direkomendasikan: Setelah developer melakukan commit perubahan pada cabang pengembangannya, tombol Git di IDE Looker akan meminta developer untuk membuka permintaan pull guna menggabungkan cabang pengembangannya ke dalam cabang produksi. Kemudian, developer dapat membuka permintaan pull untuk developer Looker lain guna meninjau dan menyetujui dari antarmuka web penyedia Git. Atau, developer dapat menggunakan opsi Deploy to Production dari panel Tindakan Git untuk melewati pembuatan permintaan pull dan men-deploy perubahan mereka ke produksi. (Opsi Deploy to Production tidak tersedia jika project diaktifkan dengan mode deployment lanjutan.)
  • Permintaan Pull Diperlukan: Setelah developer melakukan commit perubahan ke cabang pengembangannya, tombol Git di IDE Looker akan meminta developer untuk membuka permintaan pull. Developer harus membuka permintaan pull untuk menggabungkan cabang pengembangan mereka ke dalam cabang produksi. Kemudian, developer Looker lainnya dapat meninjau dan menyetujui permintaan pull dari antarmuka web penyedia Git.

Looker mendukung integrasi permintaan pull untuk penyedia Git berikut:

  • GitHub
  • GitLab
  • Bitbucket Cloud
  • Bitbucket Server (sebelumnya "Stash")

Berikut beberapa catatan tambahan tentang penggunaan permintaan pull dengan Looker:

  • Untuk membuka permintaan pull, developer Anda harus memiliki akun dengan penyedia Git dan harus memiliki akses ke repositori Git project.

  • Jika fitur Daftar yang Diizinkan IP diaktifkan di instance Anda, untuk mengintegrasikan permintaan pull dengan project LookML, Anda harus menambahkan rentang alamat IP tempat penyedia Git Anda membuat permintaan keluar ke daftar yang diizinkan. Misalnya, alamat IP GitHub saat ini tercantum dalam log perubahan GitHub. IP dapat berubah dan akan berbeda untuk penyedia Git lainnya.

  • Jika Anda telah mengaktifkan mode deployment lanjutan, Anda tidak perlu mengonfigurasi webhook di bagian Menyiapkan Project dengan Permintaan Pull Terintegrasi, karena mode deployment lanjutan memisahkan fungsi penggabungan dan deployment.

  • Jika developer Looker telah mengeluarkan permintaan pull yang ingin Anda kembalikan, lihat postingan Komunitas Cara mengembalikan permintaan pull dari Looker melalui GitHub untuk mengetahui informasi selengkapnya.

  • Permintaan pull Git dapat memungkinkan penggunaan instance staging untuk Looker, sehingga Anda dapat memiliki instance staging dan instance produksi, dengan permintaan pull yang diaktifkan di instance staging. Semua pengembangan dan peninjauan kode dapat dilakukan di lingkungan staging, dan kode yang ditinjau kemudian dapat di-deploy ke instance produksi. Untuk menyiapkannya, lihat postingan Komunitas Alur Kerja Git Menggunakan Satu Repositori di Beberapa Instance — Pengembangan, Staging, dan Produksi.

  • Looker menggabungkan perubahan dari cabang developer Looker ke cabang produksi menggunakan metode penggabungan merge commit. Saat menggunakan antarmuka penyedia Git, pastikan developer Anda tidak menggunakan penggabungan gabungan, atau penggabungan rebase. Lihat bagian Opsi Penggabungan di Antarmuka Penyedia Git untuk mengetahui informasi selengkapnya.

Menyiapkan project dengan permintaan pull terintegrasi

Untuk menyiapkan project Looker dengan permintaan pull Git:

  1. Dari project Anda, pilih Settings dari menu ikon Looker IDE.
  2. Di bagian Git Integration pada tab Configuration, pilih Pull Requests Recommended atau Pull Requests Required.
  3. Atau, jika Anda ingin menyiapkan webhook deployment otomatis di antarmuka penyedia Git, salin informasi webhook dan tempelkan ke dalam file teks. Jika project Anda dikonfigurasi untuk menggunakan mode deployment lanjutan, Anda dapat melewati langkah ini. Anda juga dapat memutuskan nanti dan kembali ke setelan project untuk mendapatkan informasi webhook.
  4. Jika ingin, Anda dapat menyiapkan rahasia deployment webhook untuk mengautentikasi webhook deployment otomatis dari penyedia Git atau webhook mode deployment lanjutan. Untuk membuat secret webhook, klik Setel Secret Webhook. Salin secret deployment dan tempelkan ke file teks untuk digunakan saat Anda menambahkan webhook ke antarmuka penyedia Git. Anda juga dapat memutuskan nanti dan kembali ke setelan project untuk menambahkan secret deployment. Lihat halaman dokumentasi Mengonfigurasi secret deployment webhook untuk mengetahui informasi selengkapnya.
  5. Klik Save Project Configuration.

Sekarang, setiap kali developer Looker melakukan commit perubahan pada project Anda, IDE Looker akan menampilkan tombol Open Pull Request. Tombol ini akan membuka tab browser baru langsung ke halaman permintaan pull baru di situs penyedia Git Anda.

Setelah menyiapkan project Looker untuk menggunakan permintaan pull, lakukan salah satu tindakan berikut untuk menyiapkan cara deployment commit ke lingkungan produksi:

  • Untuk men-deploy commit terbaru yang digabungkan ke cabang produksi secara otomatis, gunakan antarmuka penyedia Git Anda untuk menambahkan webhook, seperti yang dijelaskan di bagian berikutnya di halaman ini.
  • Untuk menentukan cabang atau commit yang di-deploy secara manual, aktifkan mode deployment lanjutan. Lihat halaman dokumentasi Mode deploy lanjutan untuk mengetahui informasi tentang cara mengaktifkan dan mengelola mode deploy lanjutan.

Menambahkan webhook ke penyedia Git Anda

Untuk project Looker yang diaktifkan untuk permintaan pull, Anda dapat menyiapkan webhook deployment di antarmuka penyedia Git. Webhook ini akan memicu Looker untuk men-deploy commit terbaru dari cabang produksi setiap kali Anda menggabungkan permintaan pull di antarmuka penyedia Git.

Pada umumnya, Anda tidak perlu menyiapkan webhook deployment otomatis jika project dikonfigurasi untuk menggunakan mode deployment lanjutan. Mode deployment lanjutan memungkinkan Anda memilih commit dan cabang yang ingin di-deploy, sehingga dalam sebagian besar kasus, menyiapkan webhook deployment otomatis akan membatalkan fitur mode deployment lanjutan.

Untuk menambahkan webhook deployment otomatis di antarmuka penyedia Git, buka setelan project di Looker terlebih dahulu dengan mengklik ikon Settings dari menu ikon Looker IDE project. Selanjutnya, salin webhook dari bagian Git Integration.

Webhook memiliki bentuk <instance_url>/webhooks/projects/<project_name>/deploy.

Ganti <instance_url> dengan URL untuk instance Looker Anda. Misalnya, jika URL instance Looker Anda adalah example.looker.com dan nama project Anda adalah e_faa, webhook akan terlihat seperti ini:

https://example.looker.com/webhooks/projects/e_faa/deploy

Dari setelan project Looker, Anda juga bisa mendapatkan secret deployment webhook untuk mengautentikasi integrasi Git project dengan penyedia Git. Lihat halaman dokumentasi Mengonfigurasi secret deployment webhook untuk mengetahui informasi selengkapnya.

Setelah memiliki URL webhook dan secret webhook deployment, Anda dapat memasukkannya ke antarmuka penyedia Git. Jika penyedia Git Anda adalah GitHub, ikuti langkah-langkah berikut:

  1. Buka setelan repositori project di repositori GitHub Anda.
  2. Di setelan repositori, klik Webhook. Klik Tambahkan Webhook untuk membuka jendela Tambahkan Webhook.
  3. Di kolom Payload URL, tempel informasi webhook yang Anda salin dari bagian Integrasi Git di Looker.
  4. Secara opsional, Anda dapat menambahkan secret deployment webhook yang mengautentikasi integrasi Git project dengan penyedia Git Anda. Salin secret deployment dari setelan project project LookML Anda dan tempel secret ke kolom Secret di antarmuka penyedia Git. Lihat halaman dokumentasi Mengonfigurasi secret deployment webhook untuk mengetahui informasi selengkapnya.
  5. Pilih opsi Hanya peristiwa push di kolom Peristiwa mana yang ingin Anda gunakan untuk memicu webhook ini?.
  6. Klik Tambahkan webhook.

Menggunakan webhook deployment untuk mengambil dari repositori Git jarak jauh

Jika permintaan pull diaktifkan untuk project LookML Anda — dan webhook deployment tidak otomatis — Anda mungkin terkadang mendapati bahwa LookML yang Anda lihat di Mode Produksi Looker tidak cocok dengan LookML di cabang utama repositori Git Anda. Hal ini dapat terjadi dalam situasi berikut:

  • Saat permintaan pull diaktifkan untuk repositori
  • Saat LookML telah diedit di luar lingkungan pengembangan Looker, seperti:
    • Di repositori Git itu sendiri
    • Di instance Looker lain, seperti instance staging

Anda dapat menyinkronkan cabang produksi Looker ke cabang utama repositori menggunakan webhook deployment:

  1. Buka tab browser baru dan ketik URL berikut, dengan mengganti <instance_url> dengan URL instance Looker Anda, dan <project_name> dengan nama project LookML Anda:

    <instance_url>/webhooks/projects/<project name>/deploy
    
  2. Setelah Anda menjalankan URL webhook deployment, halaman web kosong akan menampilkan pesan berhasil yang mirip dengan berikut ini:

    {"operations":[{"error":false,"error_code":0,"command":"Checkout Branch #\u003cLooker::GitBranch:0x5798672b\u003e","node_id":728,"results":["Success"]},{"error":false,"error_code":0,"command":"jgit revert_repo","node_id":728,"results":["Success"]}],"new_head":"05f772af48709fc2799fefe408e3fdd895a63284","old_head":"77412cad9fd7ed3eed1627afa201fdf7dcb97dd1"}
    

Sekarang Mode Produksi di Looker telah diperbarui untuk mencerminkan cabang utama Git jarak jauh Anda. Cabang developer pribadi dan cabang bersama Anda tidak terpengaruh.

Menarik dari repositori Git jarak jauh untuk webhook dengan secret deployment

Jika project LookML Anda juga memerlukan rahasia deployment webhook untuk mendorong perubahan dari cabang utama ke cabang produksi, Anda akan menerima salah satu error berikut saat menyinkronkan cabang produksi dengan cabang utama repositori menggunakan metode yang dijelaskan di bagian sebelumnya, Menggunakan webhook deployment untuk menarik dari repositori Git jarak jauh:

{"error":"Uh oh! Something went wrong."}

Atau:

{"error":"Not found."}

Daripada menggunakan webhook deployment, Anda dapat menjalankan perintah cURL berikut di terminal dengan secret webhook. Pastikan untuk mengganti kolom berikut:

  • Ganti <instance_URL> dengan URL instance Looker Anda.
  • Ganti <deploy_secret> dengan secret deployment project Anda.
  • Ganti<project_name> dengan nama project LookML Anda.
curl -i -X POST -H "X-Looker-Deploy-Secret:<deploy_secret>" https://<instance_url>/webhooks/projects/<project_name>/deploy

Misalnya, jika Anda ingin menyinkronkan cabang produksi untuk ecommerce_project di instance Brettcase dengan cabang utama repositori:

curl -i -X POST -H "X-Looker-Deploy-Secret:123123123secretgoeshere123123123" https://brettcase.looker.com/webhooks/projects/ecommerce_project/deploy

Opsi penggabungan di antarmuka penyedia Git

Jika project Looker Anda terintegrasi dengan permintaan pull, developer Anda akan menggunakan antarmuka penyedia Git untuk mengirimkan permintaan pull dan menggabungkan perubahan ke cabang produksi.

Looker mendukung metode merge commit untuk menggabungkan perubahan dari cabang pengembangan ke cabang produksi Anda. Namun, antarmuka penyedia Git Anda mungkin menampilkan opsi tambahan untuk penggabungan, seperti Squash and merge atau Rebase and merge.

Looker tidak mendukung penggabungan gabungan atau penggabungan rebase, sehingga developer Anda harus menghindari penggunaan opsi ini. Jika memungkinkan, praktik terbaiknya adalah menonaktifkan opsi ini untuk repositori Anda. Untuk menonaktifkan opsi ini di repositori GitHub, ikuti langkah-langkah berikut:

  1. Buka tab Settings untuk mengakses setelan repositori project Anda di GitHub.

    TIPS: Untuk project yang dikonfigurasi dengan integrasi Git, Anda dapat menggunakan opsi View Project on Git dari menu Git project di Looker.

  2. Di setelan repositori, klik Opsi dari menu navigasi.

  3. Buka bagian Tombol penggabungan dan hanya centang opsi Izinkan commit penggabungan. Nonaktifkan opsi Izinkan penggabungan gabungan dan Izinkan penggabungan rebase.

Setelah Anda menonaktifkan opsi penggabungan, opsi tersebut tidak akan tersedia di GitHub saat developer menggabungkan cabang di repositori.