Skip to main content

[Automations] Mengintegrasikan Giltab dan Jenkins

Pertanyaan bagus dan sangat praktis β€” kamu sudah sangat dekat dengan integrasi lengkap GitLab ↔ Jenkins + Playwright. Berikut ini penjelasan lengkap dan ringkas:


βœ… 1. Di GitLab: Cukup Upload Folder Project Playwright

Iya, kamu cukup:

  • Upload seluruh isi folder playwright-dummy/ ke repo GitLab.

  • Pastikan folder berisi:

    • package.json

    • playwright.config.ts

    • tests/

    • Jenkinsfile

πŸ“Œ Pastikan juga:

  • Branch utama kamu (misal main) sudah push ke GitLab.

  • File Jenkinsfile ada di root repo.

Contoh:

.gitlab/
.gitignore
Jenkinsfile
package.json
playwright.config.ts
/tests/example.spec.ts

βœ… 2. Di Jenkins: Siapkan Pipeline Job

Berikut langkah-langkah setup integrasi Jenkins ↔ GitLab untuk men-trigger Playwright test otomatis.


πŸ”§ A. Install Plugin yang Dibutuhkan

  1. βœ… GitLab Plugin

  2. βœ… NodeJS Plugin

  3. βœ… HTML Publisher Plugin


πŸ”§ B. Tambah Node.js di Global Tools:

  • Masuk ke: Manage Jenkins β†’ Global Tool Configuration

  • Tambahkan:

    • NodeJS (misal: β€œNodeJS 18”)


πŸ§ͺ C. Buat Pipeline Job di Jenkins

  1. New Item β†’ Pilih: Pipeline

  2. Beri nama: playwright-from-gitlab

  3. Pilih:

    • Git untuk source control

    • Masukkan URL GitLab repo

    • Masukkan credentials GitLab (jika private)

    • Branch: */main

  4. Pipeline definition:

    • Pilih: Pipeline script from SCM

    • SCM: Git

    • Script path: Jenkinsfile


πŸ” D. (Opsional tapi direkomendasikan): Setup Webhook GitLab β†’ Jenkins

Agar setiap push ke GitLab otomatis trigger Jenkins, lakukan ini:

Di GitLab Repo:

  • Masuk ke Settings β†’ Webhooks

  • Isi URL:

    http://<jenkins-host>:8080/project/playwright-from-gitlab
    
  • Pilih trigger: Push events

  • Klik β€œAdd Webhook”

πŸ“Œ Untuk ini bisa jalan, Jenkins harus:

  • Bisa diakses oleh GitLab (public IP atau reverse proxy)

  • Mengaktifkan project-based trigger URL (Enable project-based security)


πŸ” Alur Otomatis Setelah Semua Tersambung:

Developer push β†’ GitLab β†’ Webhook β†’ Jenkins β†’
Clone repo β†’ Install dep β†’ Run Playwright test β†’ Report

βœ… Catatan Tambahan:

Langkah Detail
npm ci Install package dari package-lock.json
npx playwright install --with-deps Download browser + dep
npm test Menjalankan Playwright test
HTML Publisher Untuk tampilkan report di Jenkins UI
Jenkinsfile Harus ada di root repo GitLab

Β