From 4784f49cc96ffb635793aa6ff0a3825cd1434c5a Mon Sep 17 00:00:00 2001 From: Rochmady Date: Wed, 27 May 2026 09:04:50 +0700 Subject: [PATCH 1/2] fix(ci): perbaiki workflow release semantic-release --- .github/workflows/release.yml | 47 ++++++++--------------------------- 1 file changed, 10 insertions(+), 37 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ef96f2a..d51dc27 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,30 +1,12 @@ -# Workflow: Release Otomatis (Semantic Release) untuk Library PHP -# -# Deskripsi: -# Workflow ini berjalan setiap kali ada push ke branch `master` (bukan `main`). -# Ia akan menganalisis commit-commit baru, menentukan versi rilis -# berikutnya berdasarkan aturan Semantic Versioning (major.minor.patch), -# membuat Git tag, dan menerbitkan GitHub Release. -# -# Aturan penentuan versi: -# - Commit dengan `fix:` → bump patch (1.2.3 → 1.2.4) -# - Commit dengan `feat:` → bump minor (1.2.3 → 1.3.0) -# - Commit dengan `BREAKING CHANGE:` atau tanda `!` setelah tipe -# → bump major (1.2.3 → 2.0.0) -# -# Catatan: -# Pastikan Anda menggunakan format commit Conventional Commits. -# Token GITHUB_TOKEN sudah tersedia otomatis di Actions. - name: Release Otomatis (Semantic Release) -# Jalankan workflow ketika ada push ke branch master (default branch repositori) on: push: branches: + - main - master + workflow_dispatch: -# Izin yang diperlukan untuk membuat release dan tag permissions: contents: write issues: write @@ -35,34 +17,25 @@ jobs: runs-on: ubuntu-latest steps: - # 1. Checkout repository dengan riwayat penuh (agar semantic-release bisa - # melihat commit dan tag sebelumnya) - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 0 - # 2. Setup Node.js (dibutuhkan oleh semantic-release yang berjalan di atas Node) - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: 'lts/*' + node-version: '20' - # 3. Install semantic-release dan plugin yang diperlukan - # (plugin tambahan bisa disesuaikan, yang di bawah sudah mencukupi) - name: Install semantic-release dan plugin - run: | - npm init -y - npm install --save-dev \ - semantic-release \ - @semantic-release/commit-analyzer \ - @semantic-release/release-notes-generator \ - @semantic-release/github \ - @semantic-release/git + run: npm install --no-save \ + semantic-release \ + @semantic-release/commit-analyzer \ + @semantic-release/release-notes-generator \ + @semantic-release/github \ + @semantic-release/git - # 4. Jalankan semantic-release - # Environment variable GITHUB_TOKEN sudah otomatis tersedia - name: Jalankan semantic-release - run: npx semantic-release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npx semantic-release From 86520daa722168149ae5db25cb5201774be2620c Mon Sep 17 00:00:00 2001 From: Rochmady Date: Wed, 27 May 2026 09:08:48 +0700 Subject: [PATCH 2/2] fix(ci): gunakan block scalar untuk perintah npm install --- .github/workflows/release.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d51dc27..ed81a16 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,12 +28,13 @@ jobs: node-version: '20' - name: Install semantic-release dan plugin - run: npm install --no-save \ - semantic-release \ - @semantic-release/commit-analyzer \ - @semantic-release/release-notes-generator \ - @semantic-release/github \ - @semantic-release/git + run: | + npm install --no-save \ + semantic-release \ + @semantic-release/commit-analyzer \ + @semantic-release/release-notes-generator \ + @semantic-release/github \ + @semantic-release/git - name: Jalankan semantic-release env: