mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-08-12 16:12:29 +02:00
The published 8.19.18 images are correct (verified: real ES 8.19.18, run as root, migration + privilege-drop in place). But some upgrades were left running a stale cached Elasticsearch 7.17.9 image that starts as uid 1000, producing the reported "mv: cannot move '/data/config' ... Permission denied" and "AccessDeniedException[.../data/nodes/0]". - Bump version to 8.19.18-3 to force Home Assistant / Docker to pull a fresh image tag instead of reusing the cached one. - Add an explicit root check on the first init pass (before any move or chown) so a non-root start fails with a clear, actionable message instead of the cryptic permission error, and wrap the config-archive mv with the same clear failure. The re-exec'd uid-1000 pass returns before this check, so the privilege drop still works. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
38 lines
3.9 KiB
Markdown
38 lines
3.9 KiB
Markdown
## 8.19.18-3 (14-07-2026)
|
|
- Force a fresh image pull for users left on a stale cached image (some upgrades kept running the old Elasticsearch 7.17.9 image, failing with `mv: cannot move '/data/config' ... Permission denied` and `AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]`). Fully stop and update the add-on so Home Assistant pulls this build.
|
|
- Replaced the cryptic `Permission denied` failure with a clear message when the add-on is not running as root (the state that caused the failure above).
|
|
|
|
## 8.19.18-2 (14-07-2026)
|
|
- Minor bugs fixed
|
|
## 8.19.18 (2026-07-14)
|
|
|
|
- Upgrade to Elasticsearch 8.19.18 (#2849). Note: despite the previous add-on version reading `8.14.3`, the shipped image was still Elasticsearch 7.17.9 — the Dockerfile upstream version was never bumped. This release actually delivers 8.x, making the add-on compatible with the `homeassistant-elasticsearch` integration (requires 8.14+).
|
|
- Automatic data migration: existing 7.17 data is upgraded in place by Elasticsearch on first start (one-way; can take a while on large datasets). A migration guard aborts with a clear message on unsupported paths (downgrades, or data more than one major version old). Take a Home Assistant backup before updating.
|
|
- The previous bundled config directory is archived to `/data/config.bak-<old-version>` during major upgrades; re-apply custom settings to the new config if needed.
|
|
- Security (`xpack.security.enabled`) defaults to `false` to preserve the previous plain-HTTP behavior. Override by adding `ES_SETTING_XPACK_SECURITY_ENABLED` (or any `ES_SETTING_XPACK_SECURITY_*` variable) in the add-on's `env_vars` option.
|
|
- Fixed the `env_vars` add-on option, which previously had no effect: variables are now exported before Elasticsearch starts.
|
|
- Removed the `ingest-attachment` plugin install: it is a bundled module since Elasticsearch 8.0.
|
|
- Startup persistence logic rewritten as a proper init script (`/usr/local/bin/addon-init.sh`) instead of line-number-based entrypoint patching.
|
|
- Added `updater.json` so upstream 8.19.x releases are tracked automatically (pinned to the 8.19 line: 9.x cannot read indices created in 7.x).
|
|
- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it. The container also starts as root (unchanged from 7.17.9) so `addon-init.sh` can chown/move pre-existing `/data` content that may be owned by root from earlier installs; unlike 7.17.9's own entrypoint, the upstream 8.x entrypoint no longer drops privileges before starting Elasticsearch (which refuses to run as root), so `addon-init.sh` now does that itself via `chroot --userspec=1000:0` once its root-only work is done.
|
|
- `env_vars` names starting with a digit are now rejected before export instead of crashing the entrypoint.
|
|
- Fixed a startup failure (`mv: cannot move '/data/config' ... Permission denied`) on upgrade from an existing 7.17.9 install, caused by an earlier fix in this same release that switched the runtime user to non-root before this fix was in place.
|
|
- Fixed a second regression from that same fix: without a privilege drop before starting Elasticsearch, both fresh installs and upgrades would fail Elasticsearch's own root-check ("can not run elasticsearch as root").
|
|
|
|
## 8.14.3-3 (2026-06-19)
|
|
- Fix startup failing with `chroot: cannot change root directory` by allowing `capability sys_chroot` in the AppArmor profile (#2709)
|
|
- Fix AppArmor profile name (was `inadyn_addon`, colliding with several other add-ons); renamed to `elasticsearch_addon`
|
|
|
|
## 8.14.3-2 (2025-11-18)
|
|
- 8.14.3-1 (2025-11-18)
|
|
- Added `env_vars` option to support custom environment variables from the add-on configuration.
|
|
|
|
- BREAKING CHANGE : upgrade to v8.14.3. You'll need to rebuild your indexes
|
|
|
|
## v7
|
|
- Implemented healthcheck
|
|
- WARNING : update to supervisor 2022.11 before installing
|
|
- Add codenotary sign
|
|
- New standardized logic for Dockerfile build and packages installation
|
|
- Initial build
|