article illustration Kompilasi dan Penerapan Otomatis dengan Gitlab
CI/CD
Last update: June 29, 2023

Kompilasi dan Penerapan Otomatis dengan Gitlab

Buat pipeline CI/CD Anda sendiri secara gratis dengan GitLab dan deploy aplikasi Anda setiap kali melakukan push ke branch utama.

Tutorial ini berfokus pada GitLab CI, tetapi Anda dapat mengadaptasinya dengan sedikit penyesuaian untuk platform CI/CD lainnya

Pendahuluan

Pastikan Anda telah menambahkan aplikasi Anda terlebih dahulu ke Capgo, tutorial ini hanya berfokus pada tahap unggah

Konvensi commit

Pertama, Anda perlu mulai mengikuti konvensi commit conventional commits ini akan membantu alat memahami cara meningkatkan nomor versi, hanya membutuhkan 5 menit untuk mempelajarinya

Conventional commits

GitLab CI untuk tag

Kemudian Anda perlu membuat GitLab pertama Anda untuk secara otomatis membangun dan membuat tag

Buat file di jalur ini: github/workflows/bump_versionyml

dengan konten berikut:

name: Bump version
on:
push:
branches:
- main
jobs:
bump-version:
if: "!startsWith(github.event.head_commit.message, 'chore(release):')"
runs-on: ubuntu-latest
name: "Bump version and create changelog with standard version"
steps:
- name: Check out
uses: actions/checkout@v4
with:
fetch-depth: 0
token: '${{ secrets.PERSONAL_ACCESS_TOKEN }}'
- name: Git config
run: |
git config --local user.name "github-actions[bot]"
git config --local user.email "github-actions[bot]@users.noreply.github.com"
- name: Create bump and changelog
run: npx capacitor-standard-version
- name: Push to origin
run: |
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
remote_repo="https://${GITHUB_ACTOR}:${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
git pull $remote_repo $CURRENT_BRANCH
git push $remote_repo HEAD:$CURRENT_BRANCH --follow-tags --tags

Ini akan merilis tag untuk setiap commit di cabang utama Anda Dan menambahkan entri changelog untuk setiap commit di cabang utama di CHANGELOGmd

Jangan khawatir jika Anda tidak memiliki file ini, itu akan dibuat untuk Anda

Untuk membuat ini berfungsi, buat PERSONAL_ACCESS di secret GitHub Anda sebagai PERSONAL_ACCESS_TOKEN

Ini diperlukan untuk membiarkan CI melakukan commit changelog

Saat Anda membuat token, pilih kedaluwarsa sebagai never dan cakupan sebagai repo

Terakhir, untuk membiarkan alat memahami di mana versi Anda disimpan, Anda harus membuat file cztoml di root repositori Anda

Dan tambahkan ini di dalamnya:

[tool.commitizen]
name = "cz_conventional_commits"
tag_format = "$major.$minor.$patch$prerelease"
version = "0.11.5"
version_files = [
"package.json:version",
".cz.toml"
]

Atur versi dalam file ini sama dengan yang Anda miliki di file packagejson Anda

Ini hanya diperlukan pertama kali, kemudian alat akan terus memperbaruinya

Anda sekarang dapat melakukan commit kedua file ini dan melihat tag pertama Anda muncul di GitHub!

GitHub actions untuk build

Buat file di jalur ini: github/workflows/buildyml

dengan konten berikut:

name: Build source code and send to Capgo
on:
push:
tags:
- '*'
jobs:
deploy:
runs-on: ubuntu-latest
name: "Build code and release"
steps:
- name: Check out
uses: actions/checkout@v4
- name: Install dependencies
id: install_code
run: npm i
- name: Build
id: build_code
run: npm run build
env: # Remove both lines if you don't need it
FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} # Exemple of env var coming from a secret
- name: Create Release
id: create_release
run: npx @capgo/cli@latest bundle upload -a ${{ secrets.CAPGO_TOKEN }} -c production

Ini akan menginstal dan membangun dependensi Anda sebelum mengirimkannya ke Capgo

Jika perintah Anda untuk build berbeda, Anda dapat mengubahnya di langkah build_code

Untuk membuat ini berfungsi, Anda perlu mendapatkan kunci API untuk Capgo, tambahkan di secret repositori GitHub Anda sebagai CAPGO_TOKEN

Anda sekarang dapat melakukan commit kedua file ini dan melihat tag pertama Anda muncul di GitHub!

Tambahkan commit akan menghasilkan build baru untuk saluran produksi

Anda harus menambahkan tes Anda di langkah build untuk memastikan kode Anda berfungsi

Pergi ke dashboard Capgo Anda dan periksa build Anda yang baru saja muncul, sekarang Anda memiliki sistem CI/CD Anda

Jika Anda ingin membiarkan semua pengguna Anda mendapatkan pembaruan kapan pun tersedia, pergi ke saluran Anda dan atur menjadi public

Authored By

Berita terbaru

Capgo memberikan wawasan terbaik yang Anda butuhkan untuk membuat aplikasi seluler yang benar-benar profesional.