@lamalibre/create-portlama 1.0.49 → 1.0.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/lib/service-config.js +3 -1
- package/src/tasks/redeploy.js +7 -2
- package/vendor/panel-client/dist/assets/index-CbeiNT8I.js +708 -0
- package/vendor/panel-client/dist/assets/index-DouEt_5g.css +1 -0
- package/vendor/panel-client/dist/docs/01-concepts/mtls.md +38 -16
- package/vendor/panel-client/dist/docs/01-concepts/security-model.md +2 -0
- package/vendor/panel-client/dist/docs/02-guides/desktop-app-setup.md +2 -1
- package/vendor/panel-client/dist/docs/03-architecture/panel-client.md +1 -1
- package/vendor/panel-client/dist/docs/03-architecture/panel-server.md +37 -4
- package/vendor/panel-client/dist/docs/03-architecture/state-management.md +83 -6
- package/vendor/panel-client/dist/docs/04-api-reference/certificates.md +111 -5
- package/vendor/panel-client/dist/docs/04-api-reference/overview.md +14 -0
- package/vendor/panel-client/dist/docs/04-api-reference/system.md +97 -4
- package/vendor/panel-client/dist/docs/06-reference/config-files.md +18 -2
- package/vendor/panel-client/dist/docs/_index.json +5 -0
- package/vendor/panel-client/dist/index.html +2 -2
- package/vendor/panel-server/package.json +1 -1
- package/vendor/panel-server/src/index.js +15 -0
- package/vendor/panel-server/src/lib/config.js +9 -3
- package/vendor/panel-server/src/lib/constants.js +1 -1
- package/vendor/panel-server/src/lib/nginx.js +108 -1
- package/vendor/panel-server/src/lib/storage.js +57 -60
- package/vendor/panel-server/src/lib/user-access-session.js +126 -0
- package/vendor/panel-server/src/lib/user-access.js +334 -0
- package/vendor/panel-server/src/middleware/user-access-session.js +50 -0
- package/vendor/panel-server/src/routes/management/system.js +130 -14
- package/vendor/panel-server/src/routes/user-access.js +271 -0
- package/vendor/panel-client/dist/assets/index-D8uiVw3q.js +0 -689
- package/vendor/panel-client/dist/assets/index-DkI5S9UE.css +0 -1
package/package.json
CHANGED
|
@@ -168,6 +168,8 @@ portlama ALL=(root) NOPASSWD: /usr/bin/test -f /etc/nginx/sites-available/*
|
|
|
168
168
|
portlama ALL=(root) NOPASSWD: /usr/bin/test -r /etc/portlama/pki/*
|
|
169
169
|
|
|
170
170
|
# --- self-update: run update script in its own cgroup (survives panel restart) ---
|
|
171
|
-
|
|
171
|
+
# Each argument is pinned except the script ID suffix (16-char hex from randomBytes).
|
|
172
|
+
# The sudoers wildcard only matches within a single argument — no trailing args accepted.
|
|
173
|
+
portlama ALL=(root) NOPASSWD: /usr/bin/systemd-run --unit portlama-update-* --no-block /usr/bin/bash /etc/portlama/portlama-update-*.sh
|
|
172
174
|
`;
|
|
173
175
|
}
|
package/src/tasks/redeploy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { execa } from 'execa';
|
|
2
|
-
import { writeFile, readFile, cp, rm } from 'node:fs/promises';
|
|
2
|
+
import { writeFile, readFile, cp, rm, rename, open } from 'node:fs/promises';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { setTimeout as sleep } from 'node:timers/promises';
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
@@ -183,7 +183,12 @@ export function redeployTasks(ctx, task) {
|
|
|
183
183
|
staticDir: join(installDir, 'panel-client', 'dist'),
|
|
184
184
|
};
|
|
185
185
|
|
|
186
|
-
|
|
186
|
+
const tmpConfigPath = `${configPath}.tmp`;
|
|
187
|
+
await writeFile(tmpConfigPath, JSON.stringify(config, null, 2) + '\n', { mode: 0o600 });
|
|
188
|
+
const fd = await open(tmpConfigPath, 'r');
|
|
189
|
+
await fd.sync();
|
|
190
|
+
await fd.close();
|
|
191
|
+
await rename(tmpConfigPath, configPath);
|
|
187
192
|
await execa('chown', ['portlama:portlama', configPath]);
|
|
188
193
|
|
|
189
194
|
subtask.output = 'Configuration updated';
|