Skip to content

Version 4.7.17

Choose a tag to compare

@andreapollastri andreapollastri released this 14 Jul 10:29

[4.7.17] — 2026-07-14

Fixed

  • Panel API on Ubuntu 25.10+ / 26.04 (consolidated)Migration 4.7.17 applies in one cipi self-update pass:
    • sudo-rs sudoers — rewrites /etc/sudoers.d/cipi-api via lib/cipi-api-sudoers.sh (cipi db restore * instead of * *).
    • Log viewer / CipiLogReader — API PHP-FPM open_basedir now includes /usr/local/bin/ so is_executable() on cipi-read-app-logs and cipi no longer fatals before sudo fallback.
    • Read-only /etc/cipicommon.sh / vault.sh guards (shipped in lib/*.sh); migration verifies _cipi_config_writable is present.

[4.7.16] — 2026-07-14

Fixed

  • Panel API / sudo cipi failing on read-only /etc/cipi — sourcing common.sh always ran chmod 700 /etc/cipi, recreated apps-public.json ( vault_read apps.json + write), and initialized missing vault files — all requiring writes under /etc/cipi. On a read-only root (kernel remount-ro, dual-boot NTFS left dirty, etc.) that aborted even read-only commands like cipi db list, with errors such as chmod: Read-only file system (os error 30), apps-public.json: Read-only file system, or vault: failed to decrypt apps.json. Added _cipi_config_writable; init chmod/mkdir, ensure_apps_json_api_access, and vault_init are now best-effort when /etc/cipi cannot be written. Fix ships in lib/common.sh / lib/vault.sh on cipi self-update (verified by migration 4.7.17).

[4.7.15] — 2026-07-14

Fixed

  • Panel API broken on Ubuntu 25.10+ (sudo-rs)/etc/sudoers.d/cipi-api used cipi db restore * *, which sudo-rs rejects (wildcards are not allowed in command arguments). The invalid rule made sudo ignore the whole file, so www-data could not run any whitelisted API command (I'm afraid I can't do that). Replaced with cipi db restore * (trailing * only, per sudo-rs). Centralized the whitelist in lib/cipi-api-sudoers.sh. Migration 4.7.15 rewrites sudoers on existing servers via cipi self-update.