48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
# ForgeFlow 0.7.0
|
|
|
|
## Existing deployment adoption
|
|
|
|
ForgeFlow can now import an existing Unraid deployment directly from the server. The server is treated as the source of truth instead of relying on guessed defaults.
|
|
|
|
The discovery pass reads:
|
|
|
|
- the server-side Git checkout, origin, branch and live commit;
|
|
- the actual Compose file and normalized `docker compose config --format json` output;
|
|
- running and stopped containers through `docker inspect`;
|
|
- every detected port mapping, mount, network and environment-variable name;
|
|
- Compose project and service labels;
|
|
- image, restart policy and healthcheck metadata;
|
|
- the matching Unraid DockerMan XML template, including WebUI, icon and shell metadata.
|
|
|
|
The primary values are imported into the deployment form. The complete multi-service and multi-port runtime description is retained as detected metadata. Imported values remain editable as explicit user overrides.
|
|
|
|
ForgeFlow no longer invents a host port, container port, service name, WebUI or icon when the server does not report one.
|
|
|
|
## One-click troubleshooter
|
|
|
|
Diagnostics now contains a general troubleshooter that scans all linked repositories and SSH/Unraid deployment profiles.
|
|
|
|
Safe one-click repairs cover:
|
|
|
|
- interrupted rebase, merge, cherry-pick and revert operations;
|
|
- stale Git lock files;
|
|
- clean fast-forward synchronization;
|
|
- unpublished local commits;
|
|
- refresh and recalculation of repository truth.
|
|
|
|
Diverged branches are treated as an explicit higher-impact repair. ForgeFlow creates a safety branch before resetting to the upstream version and never includes that action in the automatic safe-repair batch.
|
|
|
|
The troubleshooter also reports non-automatic issues such as tracked server-side changes, missing deployment folders, SSH inspection failures and missing Docker context exclusions.
|
|
|
|
## Reliability fixes
|
|
|
|
- Unraid DockerMan WebUI templates such as `http://[IP]:[PORT:1223]/` are now accepted and preserved.
|
|
- Configuration writes are serialized so an older concurrent save cannot overwrite a newer snapshot.
|
|
- A malformed configuration file is preserved as a timestamped `.corrupt-*` file and replaced with safe defaults instead of making ForgeFlow unstartable.
|
|
- Source verification now handles Windows CRLF manifests correctly.
|
|
- Existing deployment metadata stores field provenance, detection time and server-source-of-truth status.
|
|
|
|
## Validation
|
|
|
|
The release includes real Git integration coverage for aborting an interrupted merge and server-discovery mapping coverage for Compose, Docker inspect and DockerMan metadata.
|