diff --git a/.gitignore b/.gitignore index 3d06f17..4904111 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ node_modules/ # Environment and Secrets .env +.env.gowa *.env *.jks *.keystore diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a3b9b8..1e37385 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ Format mengikuti [Keep a Changelog](https://keepachangelog.com/) dan [Semantic Versioning](https://semver.org/). +## [0.5.15] — 2026-11-05 — "update-keep-env" + +### Diperbaiki +- Update aplikasi tidak lagi menghapus `.env.gowa` (kredensial/webhook GOWA) saat `git clean`. +- Log update tidak lagi menampilkan error `pathspec 'settings.json'/'database'` — file yang tidak dilacak git tidak di-checkout. +- `.env.gowa` ditambahkan ke `.gitignore`. + ## [0.5.14] — 2026-11-05 — "ai-test" ### Ditambahkan diff --git a/README.md b/README.md index dc71844..d11269c 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@
-
+
diff --git a/package.json b/package.json
index 9017fb5..9d84709 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "open-isp",
- "version": "0.5.14",
+ "version": "0.5.15",
"description": "OPEN-ISP \u2014 sistem billing & manajemen ISP open-source (PWA pelanggan, multi-OLT, RADIUS, WhatsApp, QRIS)",
"main": "app-customer.js",
"scripts": {
diff --git a/routes/adminPortal.js b/routes/adminPortal.js
index a44a9d5..4880c79 100644
--- a/routes/adminPortal.js
+++ b/routes/adminPortal.js
@@ -4629,6 +4629,7 @@ router.post('/update/run', requireAdminSession, restrictToAdmin, (req, res) => {
const preservedEntries = [
{ label: 'settings.json', relativePath: 'settings.json', cleanExclude: 'settings.json' },
{ label: '.env', relativePath: '.env', cleanExclude: '.env' },
+ { label: '.env.gowa', relativePath: '.env.gowa', cleanExclude: '.env.gowa' },
{ label: 'database', relativePath: 'database', cleanExclude: 'database' },
{ label: 'public/uploads', relativePath: 'public/uploads', cleanExclude: 'public/uploads' },
{ label: 'public/img', relativePath: 'public/img', cleanExclude: 'public/img' },
@@ -4709,11 +4710,7 @@ router.post('/update/run', requireAdminSession, restrictToAdmin, (req, res) => {
fs.mkdirSync(backupRoot, { recursive: true });
backupPreservedEntries();
- const resetSettings = runCmd('git', ['checkout', '--', 'settings.json'], repoRoot);
- pushCmd('git checkout -- settings.json', resetSettings);
- const resetDb = runCmd('git', ['checkout', '--', 'database'], repoRoot);
- pushCmd('git checkout -- database', resetDb);
-
+ // settings.json / database tidak dilacak git; jangan checkout (menghasilkan error pathspec).
const resetHard = runCmd('git', ['reset', '--hard', _repo ? 'FETCH_HEAD' : `origin/${branch}`], repoRoot);
pushCmd(`git reset --hard origin/${branch}`, resetHard);
if (!resetHard.ok) throw new Error('Gagal reset ke origin/' + branch);
diff --git a/version.txt b/version.txt
index 63df075..ab245e9 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-0.5.14
\ No newline at end of file
+0.5.15
\ No newline at end of file