Taufiksi – Huahh, mungkin dari kamu ada yang ingin deploy website tapi ingin otomatis, sekarang ada cara uploud ke cpanel menggunakan git version control.
Hal ini berawal dari kata penasaran sebenarnya. Dulu pernah mendeploy website tapi manual yahh tau kan yang filenya di jadikan zip dulu kemudian di uploud ke hosting.
Nah setelahnya sudah mulai bosan kan, akhirnya cari taulah caranya uploud file otomatis ke cpanel gimana tuh.
Akhirnya nemu dengan menggunakan tools yang di sediakan oleh git, entah itu nantinya akan menggunakan github ataupun gitlab.
Solusinya sama aja, hanya yang membedakan hanya github dan gitlab aja, tapi mungkin saya akan membuat artikel ini hanya dengan menggunakan github.
Kepanjangan dong kalau buat yang gitlab juga, konsepnya sama aja sebenarnya. Kalau kamu emang mau tau mungkin bisa komen, nanti akan saya update artikelnya.
Saya akan menganggap kalau kamu sudah membeli hosting untuk mempublish project website yang kamu miliki.
Tentu saja dong gimana kalau uploud ke cpanel sedangkan kamu ngga punya hosting. Dan juga ada beberapa hosting juga yang tidak bisa menerapkan fitur git version control ini.
Nanti akan saya jelaskan kenapa beberapa hosting tidak bisa menerapkan fitur ini. Sebelumnya kamu sudah tau tentang git ?
Apa Itu Git ?
Singkatnya git adalah salah satu tools yang sering di gunakan dalam pengembangan project bagi programmer maupun developer.
Sebenarnya git merupakan tools yang menurut saya wajib sih untuk programmer karena banyak sekali kegunaannya.
Contohnya seperti menjadi buku harian programmer, yang bisa mencatat setiap code yang dituliskan oleh mereka.
Bedanya dengan buku harian adalah bisa merubah apa yang sudah di tulisnya berkali kali dan merekamnya.
Konsep ini nantinya akan sangat berguna dalam pengembangan software, yang setiap hari harus melakukan perubahan.
Ngga setiap hari juga sih, intinya kalau ada error ya harus di benerin dan git bisa merekam semua perubahan error tersebut.
Mungkin lain kali kita akan membahas lebih lengkap tentang git kali ya, tapi git ini merupakan landasan utama dari github dan juga gitlab.
Apa Itu Cpanel
Oke, kita akan membahas masalah cpanel dengan sangat singkat, baru nanti kita akan membahas bagaimana caranya menggunakan git version control di cpanel.
Buat kamu yang masih awam soal dunia perhostingan mungkin akan merasa awam juga tentang cpanel. Singkatnya cpanel adalah salah satu control panel yang berbasis linux yang banyak digunakan di akun web hosting.
Dengan cpanel ini kamu bisa melakukan banyak sekali macam aktifitas yang berhubungan dengan pengembangan website.
Cpanel menyediakan layanan tergantung dari penyedia hostingnya, entah itu hosting yang kamu punyai itu adalah premium mungkin akan sedikit lebih lengkap fiturnya,.
Saat ini cpanel merupakan panel standar yang populer dan sebagian besar web developer akan terasa familiar dengan tools ini.
Manfaat Menggunakan Git Version Control
Kamu bisa mempunyai berbagai manfaat jika menggunakan git version control, apa lagi jika di sambungkan dengan cpanel.
Apa saja manfaat jika menggunakan git dalam pengembangan perangkat lunak yang bisa berbasis website aja kita bicaranya ye.
Hemat Waktu
Tentu waktu akan sangat berharga jika berbicara dalam proses pengembangan perangkat lunak, dengan menggunakan git version control bisa sangat menghemat waktu.
Meskipun hanya beberapa menit tapi bisa sangat membantu, jika sedang di kejar oleh banyak project kan, yah begitulah.
Mencatat Setiap Perubahan
Memang inilah kegunaan utama git version control adalah untuk mencatat setiap perubahan yang di buat oleh programmer.
Ini akan meminimalisir adanya tindakan konyol dari seorang programmer karena lupa menambahkan fitur yang mungkin tidak di perlukan.
Atau apalah itu tentang penyelesaian error mungkin, sapa tau ingin menggunakan code yang sebelumnya dan lain lain.
Colaborasi
Fitur yang memungkinkan orang orang bisa berkolaborasi dengan sangat kompak karena setiap perubahan ada pesan tersembunyi.
Logo git aja seperti hubungan koneksi, yang artinya memang bisa di gunakan sebagai alat komunikasi bagi para programmer.
Cara Menghubungkan Github Ke Git Version Control Cpanel
Sebelum ke intinya, kamu harus tau dulu, kan ada dua tuh tipe repository dari githubnya, ada yang public dan juga ada yang private.
Nanti kita akan lihat perbedaannya cara uploud repository private github dengan repository public github ke cpanel.
Perbedaannya sangat menonjol, dan kalau saya sarankan untuk menggunakan repository yang private karena lebih tertutup aja.
Tapi sedikit lebih ribet daripada penggunaan repository public, karena harus setup SSH dan lain sebagainya.
Kalau kamu ingin membuat repository public juga tidak masalah jika memang project yang kamu punya adalah open source.
Uploud Repsitory Public Github Ke Git Version Control Cpanel
Baiklah mungkin ini yang kamu tunggu tunggu sampai harus banyak scrolling ke bawah hanya untuk menemukan cara di bawah ini.
Saya anggap kamu sudah mempunyai repository di github dengan tipe public, artinya bisa di akses ke semua orang.
Buka Cpanel
Sudah di pastikan cpanel kamu mempunyai fitur git version control, karena jika tidak mempunyainya bagaimana bisa kamu akan uploud otomatis.
Emm, bukan otomatis juga sih, mungkin lebih tepatnya semi otomatis. Setidaknya kamu bisa mendeploy semua code yang ada di dalam github atau gitlab.
Buat Repository
Setelah kamu masuk ke halaman git version control yang ada di cpanel maka kamu harus membuat repository dulu sebelum akhirnya bisa clone semua code yang ada di github.
Cari tombol create, dan tekan tombol tersebut untuk berpindah halaman, hmm semoga paham sih hehe. Intinya ada tombol create nanti tekan aja.
Isi Form
Setelah kamu menekan tombol create, maka akan muncul page diatas, dan selanjutnya kamu harus mengisinya terlebih dahulu.
Nah di sinilah yang nanti akan membedakan antara repository public dengan repository private. Nanti kamu akan tau.
Clone URL : kamu harus mengisi dengan menggunakan link repository atau menggunakan SSH, bagaimana caranya mendapatkannya ?
Kamu bisa memasukan teks yang saya blok kedalam form clone url. Dan setelah kamu memasukan, nantinya yang repository path dan repository name akan terisi otomatis. Kamu bisa membiarkannya atau bisa juga merubahnya.
Setelah semua sudah terisi kamu scroll kebawah, dan tekan tombol create, dan kamu sudah berhasil membuat repository di cpanel kamu.
Tapi sayangnya belum bisa di gunakan. Kalau kamu menggunakan isian otomatis, kamu bisa melihatnya di file manager> repositories.
Pull And Deploy
Pertanyaannya bagaimana caranya biar bisa mengambil code yang ada di github, dan mendeploynya ke dalam hosting.
Nah kamu perlu membuat file yang bernama .cpanel.yml terlebih dahulu dan di taruh di dokumen root project yang kamu miliki.
Isinya apa tuh, jadi kamu bisa memasukan kode di bawah ini.
---
deployment:
tasks:
- export DEPLOYPATH=/home/user/public_html/
- /bin/cp index.php $DEPLOYPATH
- /bin/cp -R assets $DEPLOYPATH
Sebenarnya kode tersebut di dapatkan dari dokumentasi cpanel git versionnya. Setelah kamu membuat file tersebut, kamu masuk ke cpanel lagi lebih tepatnya ke git version control.
Kemudian di sana terdapat satu repository yang sudah kita buat sebelumnya, lalu kamu klik manage.
Dan di samping menu basic information terdapat menu pull and deploy. Klik lah untuk pull and deploy. Kemudian akan muncul halaman seperti gambar di bawah ini.
Nah, kini untuk pull kamu bisa pilih tombol yang putih, kemudian untuk deploy kamu bisa menggunakan tombol yang biru.
Tapi perlu di ingat bahwa tunggu sampai prosesnya berjalan dulu jangan di barengan, pertama kamu klik yang putih untuk mengambil code yang ada di github kemudian akan di simpan di dalam repository cpanel.
Kemudian untuk deploy gunanya untuk memindahkan yang dari folder repository cpanel ke public_html atau folder yang untuk di akses menjadi sebuah website.
Selesai
Untuk uploud dengan menggunakan repository github yang public hanya seperti itu aja sih sebenarnya lebih gampang yang menggunakan repository public daripada yang private,
Uploud Repository Private Github Ke Git Version Control
Inilah yang mungkin di tunggu tunggu oleh sebagian orang karena mungkin agak sedikit ribet untuk menggunakan repository private github.
Tapi tenang aja, mungkin saya bisa membuat sedikit lebih ribet wkwk. Yang membedaka hanya cara membuat repository di cpanelnya aja sih.
Yang di bagian isi form repositorynya, selain itu saya akan anggap sama rutenya, jadi gimana tuh caranya? Mungkin dari awal aja kali ya.
Buka Cpanel
Baiklah mungkin kamu sudah maksud ketika di suruh buka cpanel maka sudah di pastikan kamu harus membuka juga fitur git version control dong.
Buat Repository
Klik create, untuk membuat repository di cpanel, yang akan menampung semua code di dalam github sebelum bisa di akses semua orang.
Dan usahakan kamu punya repository di github dengan mode private loh.
Isi Form
Untuk isi form, di bagian clone url saya sangat menyarankan untuk menggunakan SSH, karena akan lebih mudah aja sih.
Ke Terminal/ CLI dulu
Tapi sebelum itu kamu harus mengenerate dulu SSH terlebih dahulu, untuk memberikan akses dari cpanel ke repo githubnya.
Caranya kamu masukan code di bawah ini ke dalam terminal cpanel kamu.
ssh-keygen
Dan akan menghasilkan generate ssh seperti di bawah ini.
[user@hosting ~]$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): <-- tekan enter
Enter passphrase (empty for no passphrase): <-- tekan enter
Enter same passphrase again: <-- tekan enter
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:exw9vLdXLSukow3IjyQUb6JtrRQ2I3i5ybY8EWrvU8A user@hosting
The key's randomart image is:
+---[RSA 2048]----+
| |
| |
| . . |
| ..E o o |
|..+.O o S . + .|
|.+.O X . o ..o. o|
|. B.* = o oo. .o.|
| o.* + o +o .....|
| +oo . o... ... |
+----[SHA256]-----+
Belum selesai sampai di sini, kamu masukan code di bawah ini di terminal lagi kemudian salin output yang keluar.
cat ~/.ssh/id_rsa.pub
Deploy Key
Setelah kamu berhasil mengcopy ssh tersebut kamu harus masuk ke repository yang kamu miliki kemudian ke menu setting > deploy keys.
Kemudian kamu tambahkan deploy keys, Seperti gambar di bawah ini, kamu bisa memberikan nama sesuka hatimu, kemudian letakan ssh yang sudah di dapatkan.
Selesai
Setelah ini, kamu bisa balik lagi ke bagian isi form, dan melanjutkan seperti biasanya yaitu tekan tombol create.
Dan kamu bisa lakukan langkah yang seperti di tahap uploud dengan menggunakan repository public dari github.
Penutup
Huahhh, sudah sangat panjang ternyata, apa lagi mau bahas yang gitlab ya wkwk, tapi kalau emang kamu beneran mau tau caranya bisa komen dah, lagian sudah malam juga waktunya tidur.
Sampai jumpa di artikel berikutnya babay.