Lebih lanjut ke konten utama
Automasi/CD

Pengembangan Otomatis dan Rilis Aplikasi dengan GitLab

Buatlah Pipa Otomasi/CD Sendiri dengan GitLab secara gratis, rilis aplikasi Ionic Capacitor Anda setiap kali Anda push ke main.

Anik Dhabal Babu

Anik Dhabal Babu

Pengembang Konten

context: Halaman/area: Situs web pemasaran Capgo. Peran: Label UI singkat atau item navigasi. Dilihat di: halaman blog/[slug].astro. Kunci pesan `content_marketer` (Pengembang Konten).

Pengembangan Otomatis dan Rilis Aplikasi dengan GitLab

Artikel ini akan mengajarkan Anda cara mengatur pipa Otomasi/CD dengan GitLab.

Be sure you have added your Capacitor app first to Capgo, this tutorial just focuses on the upload phase. If you need to add your app to Capgo, you can follow this Pastikan Anda telah menambahkan aplikasi __CAPGO_KEEP_0__ Anda terlebih dahulu ke __CAPGO_KEEP_1__, tutorial ini hanya fokus pada fase unggah. Jika Anda perlu menambahkan aplikasi Anda ke __CAPGO_KEEP_2__, Anda dapat mengikuti tutorial ini.

Konvensi Commit

Pertama-tama, Anda harus memulai mengikuti konvensi commit Konvensi KomitKonvensi Komit

Komit Konvensional

Komit Konvensional GitLab CI/CD untuk Tag

Buat file .gitlab-ci.yml di root repository GitLab Anda dengan konten berikut

 stages:
      - tag

 bump_version:
   stage: tag
   only:
     - main
  except:
    variables:
  - $CI_COMMIT_MESSAGE =~ /^chore\(release\):/
  script:
   - git config --global user.email "gitlab@yourdomain.com"
   - git config --global user.name "GitLab CI/CD"
   - git checkout $CI_COMMIT_REF_NAME
   - git pull origin $CI_COMMIT_REF_NAME
   - npx capacitor-standard-version
   - git push origin $CI_COMMIT_REF_NAME --tags

Ganti "gitlab@domainanda.com" dan "GitLab CI/CD" dengan alamat email dan nama pengguna GitLab Anda di bagian skrip. Konfigurasi ini mengaktifkan pekerjaan hanya pada push ke branch utama dan mengabaikan komit dengan pesan yang dimulai dengan "chore(release):".

GitLab CI/CD untuk Build

Tambahkan tahap lain ke file .gitlab-ci.yml Anda untuk build:

    stages:
      - deploy

   deploy:
     stage: deploy
     only:
       - tags  # This job will only run for tag pushes
     script:
       - apt-get update -qy && apt-get install -y nodejs npm
       - npm install -g @capgo/cli
       - npm ci
       - npm run build
       - npx @capgo/cli bundle upload -a $CAPGO_TOKEN -c production
     variables:
       FIREBASE_CONFIG: $FIREBASE_CONFIG  # Define this in your GitLab project settings
     environment:
       name: production

Pastikan Anda memiliki kunci Capgo API (CAPGO_TOKEN) yang telah ditambahkan sebagai variabel CI/CD di proyek GitLab Anda. Buka proyek Anda di GitLab, navigasikan ke Pengaturan > CI/CD > Variabel, dan tambahkan variabel bernama CAPGO_TOKEN dengan nilai kunci API.

Customkan skrip build untuk menyesuaikan proses build spesifik proyek Anda, seperti mengubah perintah npm run build.

Kesimpulan

Selamat! Kami telah menempuh langkah tambahan dalam perjalanan teknologi kami. Dalam pengembangan perangkat lunak modern, CICD adalah faktor yang sangat penting untuk dipertimbangkan. Jadi, saya berharap panduan ini dapat dipahami oleh semua orang.

Teruskan dari Automatic build and release app dengan GitLab

Jika Anda menggunakan Automatic build and release app dengan GitLab untuk merencanakan otomatisasi CI/CD, hubungkan dengan Capgo CI/CD untuk alur kerja produk di Capgo CI/CD, Capgo Native Builds untuk alur kerja produk di Capgo Native Builds, Integrasi Capgo untuk alur kerja produk di Integrasi Capgo Pengintegrasian CI/CD untuk detail implementasi di Pengintegrasian CI/CD, dan Pengintegrasian Aksi GitHub untuk detail implementasi di Pengintegrasian Aksi GitHub

Update Langsung untuk Aplikasi Capacitor

Ketika bug layer web masih aktif, kirimkan perbaikan melalui Capgo daripada menunggu hari-hari untuk persetujuan toko aplikasi. Pengguna mendapatkan update di latar belakang sementara perubahan native tetap dalam jalur review normal.

Dukungan Manusia dari Martin

Mulai Sekarang

Terbaru dari Blog Kami

Capgo memberikan Anda wawasan terbaik yang Anda butuhkan untuk menciptakan aplikasi mobile profesional yang sebenarnya.