Mengonfigurasi setelan kontrol versi project

Halaman ini menjelaskan cara mengonfigurasi elemen project Anda agar dapat diintegrasikan dengan Git untuk kontrol versi.

Setelan project

Anda harus menjadi admin Looker untuk mengubah opsi di halaman Setelan Project. Developer Looker yang bukan admin dapat melihat halaman Setelan Project, tetapi tidak dapat mengubah opsi di sana.

Halaman Project Settings menampilkan opsi konfigurasi untuk project Anda. Untuk melihat halaman ini, buka project Anda dan pilih ikon Setelan dari menu ikon di sebelah kiri.

Dari sini Anda dapat mengakses tiga bagian:

Konfigurasi

Pada tab Configuration di halaman Project Settings, Anda dapat mengonfigurasi setelan berikut:

  • Name: 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 detail selengkapnya.
  • Git Production Branch Name: Tentukan nama cabang Git yang akan digunakan sebagai target penggabungan untuk cabang pengembangan bagi 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 developer harus berhasil menjalankan Validator LookML di project sebelum melakukan perubahan pada project. Kualitas Kode memiliki opsi berikut:

    • Perlu memperbaiki error dan peringatan sebelum melakukan commit: Developer Looker dapat melakukan perubahan hanya setelah berhasil menjalankan Validator LookML dan menyelesaikan semua error dan peringatan. Ini adalah setelan yang disarankan.
    • Hanya perlu memperbaiki error sebelum melakukan commit: Developer Looker dapat melakukan perubahan hanya setelah berhasil menjalankan Validator LookML dan menyelesaikan semua error. Developer dapat melakukan perubahan saat ada peringatan. Meskipun tidak direkomendasikan, opsi ini dapat berguna, misalnya, jika peringatan baru diperkenalkan ke LookML yang berfungsi setelah update Looker.
    • Izinkan commit untuk kode yang rusak: Developer Looker dapat melakukan perubahan tanpa menjalankan Validator LookML dan terlepas dari apakah ada error atau peringatan di LookML. Opsi ini tidak direkomendasikan karena dapat mengakibatkan LookML tidak berfungsi atau memberikan hasil yang salah.

  • Wajibkan pengujian data untuk diteruskan sebelum men-deploy project ini ke produksi: Jika project LookML memiliki satu atau beberapa parameter test, opsi ini mengharuskan developer untuk 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 informasi tentang menjalankan pengujian data pada project Anda. Secara default, opsi Require data testing to pass before 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 Penerapan Lanjutan: Setelan yang, jika diaktifkan, memungkinkan pengguna men-deploy SHA, tag, atau cabang apa pun ke produksi. Lihat halaman dokumentasi Mode deploy lanjutan untuk informasi selengkapnya tentang penggunaan kontrol versi dengan Mode Deployment Lanjutan yang diaktifkan.

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

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

    Mereset koneksi Git akan mempertahankan histori Git untuk cabang master. Opsi ini juga akan menyimpan histori setiap cabang pribadi developer Looker setelah mereka menyinkronkan mode developer mereka. Agar dapat menyimpan histori untuk semua cabang, lihat halaman Praktik Terbaik Bermigrasi ke repositori Git baru.

  • Hapus 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 dalam cabang bernama master. Anda dapat menggunakan kolom Git Production Branch Name untuk menentukan cabang mana dari repositori Git yang harus digunakan Looker sebagai cabang target tempat cabang developer Looker Anda digabungkan. (Lihat halaman dokumentasi Menggunakan kontrol versi dan deployment untuk alur kerja Git default dan opsi lainnya untuk implementasi Git lanjutan.)

Untuk project yang sudah ada, sebaiknya lakukan hal berikut sebelum mengubah nama cabang produksi Git:

  • Minta semua developer di project Looker untuk melakukan commit terhadap perubahan mereka 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 semua permintaan pull yang terbuka, sesuai.
  • Lakukan persiapan yang diperlukan pada sisi penyedia Git, seperti membuat cabang baru di repositori Anda, mengganti nama cabang Git default yang ada, atau tindakan apa pun yang mungkin diperlukan untuk menyiapkan cabang tersebut sehingga Looker dapat menggunakannya sebagai cabang target untuk penggabungan. Setidaknya, Anda harus memverifikasi bahwa cabang yang ingin digunakan adalah cabang yang sudah 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 di sebelah kiri untuk menampilkan halaman Project Settings. Tab Configuration akan terbuka secara default.
  2. Di kolom Git Production Branch Name, masukkan nama cabang Git yang ingin digunakan sebagai cabang produksi untuk project Looker Anda.
  3. Scroll ke bawah, lalu klik tombol Save Project Configuration untuk menyimpan perubahan.

Impor Kredensial

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

Manajemen Cabang

Di tab Branch Management di halaman Projects Settings, 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 Anda 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 Git Integration di tab Configuration di halaman Project Settings:

  • Nonaktif: Looker tidak akan menampilkan link eksternal apa pun 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.
  • Permintaan Tarik Direkomendasikan: Selain menyediakan link eksternal ke antarmuka penyedia Git Anda, Looker akan memberikan opsi kepada developer 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.
  • Permintaan Tarik Diperlukan: Ini sama seperti di atas, kecuali bahwa developer LookML Anda diwajibkan untuk membuka permintaan pull untuk mengirimkan perubahan pada project. Lihat bagian Mengintegrasikan permintaan pull untuk project Anda untuk mengetahui informasi tentang cara menyiapkannya.

Untuk menyimpan setelan integrasi Git, scroll ke bawah, lalu klik Save Project Configuration di bagian Deployment.

Jika Anda telah mengaktifkan salah satu opsi integrasi Git tambahan (Tampilkan Link, Permintaan Tarik yang Direkomendasikan, atau Permintaan Tarik Diperlukan), Looker akan memberikan link eksternal ke antarmuka penyedia Git Anda. Link eksternal ini membuka tab browser baru ke situs penyedia Git Anda.

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

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

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

Mengintegrasikan permintaan pull untuk project Anda

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

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

  • Tarik Permintaan yang Direkomendasikan: Setelah developer meng-commit perubahan pada cabang pengembangannya, tombol Git di Looker IDE akan meminta developer membuka permintaan pull untuk menggabungkan cabang pengembangannya ke cabang produksi. Kemudian, developer dapat membuka permintaan pull agar developer Looker lain dapat ditinjau dan disetujui dari antarmuka web penyedia Git. Atau, developer dapat menggunakan opsi Deploy ke Produksi dari panel Action Git untuk melewati pembuatan permintaan pull dan men-deploy perubahannya ke produksi. (Opsi Deploy ke Production tidak tersedia jika project diaktifkan dengan mode deploy lanjutan.)
  • Permintaan Tarik Diperlukan: Setelah developer meng-commit perubahan pada cabang pengembangannya, tombol Git di Looker IDE akan meminta developer untuk membuka permintaan pull. Developer harus membuka permintaan pull untuk menggabungkan cabang pengembangannya ke 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
  • Cloud Bitbucket
  • Server Bitbucket (sebelumnya "Stash")

Berikut adalah beberapa catatan tambahan tentang penggunaan permintaan pull dengan Looker:

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

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

  • Jika telah mengaktifkan mode deploy lanjutan, Anda tidak perlu mengonfigurasi webhook di bagian Menyiapkan Project dengan Permintaan Pull Terintegrasi, karena mode deploy 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.

  • Dengan permintaan pull Git, Anda dapat menggunakan instance staging untuk Looker, sehingga Anda dapat memiliki instance staging dan instance produksi, dengan permintaan pull yang diaktifkan pada instance staging. Semua pengembangan dan peninjauan kode dapat dilakukan di lingkungan staging, dan kode yang telah ditinjau kemudian dapat di-deploy ke instance produksi sesuai keinginan. Untuk menyiapkannya, lihat postingan Komunitas Alur Kerja Git yang 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 squash, 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 Project Settings dari menu ikon di sebelah kiri.
  2. Pada bagian Git Integration di tab Konfigurasi, pilih Pull Requests Recommended atau Pull Requests required.
  3. Secara opsional, jika Anda ingin menyiapkan webhook deploy otomatis di antarmuka penyedia Git, salin informasi webhook dan tempelkan ke file teks. Jika project Anda dikonfigurasi untuk menggunakan mode deploy 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 deploy lanjutan. Untuk membuat rahasia webhook, klik Tetapkan Rahasia Webhook. Salin rahasia 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 rahasia deployment. Lihat halaman dokumentasi Mengonfigurasi rahasia deployment webhook untuk informasi selengkapnya.
  5. Klik Save Project Configuration.

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

Setelah Anda menyiapkan project Looker untuk menggunakan permintaan pull, lakukan salah satu langkah berikut untuk menyiapkan cara commit di-deploy ke lingkungan produksi Anda:

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

Menambahkan webhook ke penyedia Git Anda

Untuk project Looker yang diaktifkan untuk permintaan pull, Anda dapat menyiapkan webhook deploy 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.

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

Untuk menambahkan webhook deployment otomatis di antarmuka penyedia Git, pertama-tama buka setelan project di Looker dengan mengklik ikon Setelan dari menu ikon sebelah kiri project. Selanjutnya, salin webhook dari bagian Integrasi Git.

Webhook akan berubah menjadi <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 rahasia deployment webhook untuk mengautentikasi integrasi Git project dengan penyedia Git Anda. Lihat halaman dokumentasi Mengonfigurasi rahasia deployment webhook untuk informasi selengkapnya.

Setelah memiliki URL webhook dan rahasia webhook deploy, 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 Anda, klik Webhook. Klik Add Webhook untuk membuka jendela Add Webhook.
  3. Di kotak teks Payload URL, tempel informasi webhook yang disalin dari bagian Git Integration di Looker.
  4. Jika ingin, Anda dapat menambahkan rahasia deployment webhook yang mengautentikasi integrasi Git project dengan penyedia Git Anda. Salin rahasia deployment dari setelan project pada project LookML Anda, lalu tempel rahasia tersebut ke dalam kotak teks Secret di antarmuka penyedia Git. Lihat halaman dokumentasi Mengonfigurasi rahasia deployment webhook untuk informasi selengkapnya.
  5. Pilih opsi Hanya peristiwa push di kolom Peristiwa mana yang Anda inginkan untuk memicu webhook ini?.
  6. Klik Tambahkan webhook.

Menggunakan webhook deployment untuk mengambil dari repositori Git jarak jauh

Saat permintaan pull diaktifkan untuk project LookML Anda — dan men-deploy webhook tidak otomatis — terkadang Anda mungkin mendapati bahwa LookML yang Anda lihat di Mode Produksi Looker tidak cocok dengan LookML di cabang master 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
    • Pada instance Looker lain, seperti instance staging

Anda dapat menyinkronkan cabang produksi Looker ke cabang master repositori menggunakan webhook deploy:

  1. Buka tab browser baru dan ketik URL berikut, ganti <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 deploy, halaman web kosong akan menampilkan pesan sukses seperti berikut:

    {"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 master Git jarak jauh Anda. Cabang developer pribadi dan cabang bersama tidak akan terpengaruh.

Menarik dari repositori Git jarak jauh untuk webhook dengan rahasia deploy

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

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

Atau:

{"error":"Not found."}

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

  • Ganti <instance_URL> dengan URL instance Looker Anda.
  • Ganti <deploy_secret> dengan rahasia 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 pada instance Brettcase dengan cabang master 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 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 dan merge atau Rebase dan merge.

Looker tidak mendukung penggabungan squash atau penggabungan ulang, sehingga developer Anda harus menghindari penggunaan opsi ini. Jika memungkinkan, praktik terbaiknya adalah menonaktifkan opsi ini untuk repositori Anda. Untuk menonaktifkan opsi ini di repo 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 Lihat Project di Git dari menu Git project di Looker.

  2. Di setelan repositori Anda, klik Options dari menu navigasi sebelah kiri.

  3. Scroll ke bawah ke bagian Gabungkan tombol dan biarkan centang pada opsi Izinkan penggabungan commit. Hapus centang opsi Izinkan penggabungan squash dan Izinkan penggabungan rebase.

Setelah Anda menghapus centang pada opsi ini, opsi tersebut tidak akan tersedia jika siapa pun menggabungkan cabang di repositori.