Panduan rilis
RingkasnyaJalankan php artisan pondok:release –release-version=X.Y.Z di repo yang bersih. Perintah ini membangun paket zip siap unggah beserta checksum SHA-256 di storage/app/releases.
Daftar isi
Halaman ini untuk pengelola yang membuat paket zip yang diunggah sekolah ke hosting cPanel. Panduan pemasangan untuk sekolah ada di Instalasi di cPanel.
Apa prasyarat mesin build? Tautan ke bagian Apa prasyarat mesin build?
- PHP 8.3 atau lebih baru dengan ekstensi
zip(CLI). - Composer 2.
- Node.js dan pnpm, hanya di mesin build.
- git, dengan repo dalam keadaan bersih (semua perubahan sudah di-commit).
composer.json mengunci platform PHP 8.3, sehingga dependency yang terpasang tetap cocok untuk server PHP 8.3 walau mesin build memakai PHP lebih baru.
Bagaimana membuat paket rilis? Tautan ke bagian Bagaimana membuat paket rilis?
php artisan pondok:release --release-version=1.2.0Langkah yang dijalankan:
- Menolak berjalan bila
APP_ENV=production, atau bila ada perubahan yang belum di-commit (kecuali dengan--allow-dirty). Hanya commitHEADyang dipaketkan. git archive HEADke folder staging sementara.composer install --no-dev --optimize-autoloaderdi staging. Skrip Composer menerbitkan aset Filament.pnpm install --frozen-lockfile --ignore-workspace, lalupnpm run builduntuk aset Vite dipublic/build.- Menulis berkas
VERSION. - Memeriksa kelengkapan paket.
- Menulis
pondok-<versi>.zip(berakar folderpondok/) danpondok-<versi>.zip.sha256kestorage/app/releases.
Opsi apa yang tersedia? Tautan ke bagian Opsi apa yang tersedia?
| Opsi | Fungsi |
|---|---|
--release-version= | Versi paket. Bawaan: hasil git describe --tags --always. |
--output= | Folder hasil. Bawaan storage/app/releases. |
--allow-dirty | Lanjut walau ada perubahan belum di-commit. Perubahan itu tidak ikut paket. |
--keep-staging | Simpan folder staging untuk diperiksa. |
Bagaimana pemeriksaan kelengkapan paket? Tautan ke bagian Bagaimana pemeriksaan kelengkapan paket?
Paket ditolak bila:
- tidak ada
public/build/manifest.json,vendor/autoload.php, aset Filament,.htaccessroot,.env.production.example, ataudocs/instalasi.md; - ada paket pengembangan, misalnya
vendor/pestphp/; - ada berkas
.envrahasia.
Apa isi paket rilis? Tautan ke bagian Apa isi paket rilis?
Ikut: kode aplikasi, vendor/ tanpa paket dev, public/build, aset Filament (public/css|js|fonts/filament), .env.example, .env.production.example, .htaccess root penolak akses, kerangka folder storage dan bootstrap/cache, docs/ (kecuali docs/plans dan docs/handoffs), dan VERSION.
Tidak ikut: .env dan varian rahasianya, .git, node_modules, tests, berkas kerja agent (.claude, CLAUDE.md, AGENTS.md, boost.json, feature_list.json), log, cache, sesi, view terkompilasi, unggahan, database/database.sqlite, dan public/storage.
Periksa isi zip bila perlu:
unzip -l storage/app/releases/pondok-1.2.0.zip | lessBagaimana memeriksa checksum? Tautan ke bagian Bagaimana memeriksa checksum?
Sekolah dapat mencocokkan berkas yang diunduh dengan:
shasum -a 256 -c pondok-1.2.0.zip.sha256Bagaimana menandai versi? Tautan ke bagian Bagaimana menandai versi?
Setelah paket diuji, yaitu instalasi bersih dan pembaruan dari versi sebelumnya, tandai commit-nya:
git tag -a v1.2.0 -m "Pondok CMS 1.2.0"
git push origin v1.2.0Tanpa --release-version, pondok:release memakai tag ini sebagai versi.
Selalu uji instalasi bersih dan pembaruan dari versi sebelumnya dengan pondok:upgrade sebelum menandai dan membagikan paket.