Conversation
- Purpose: backport the Docker network reconnect helper work required by the fixed MAC assignment flow. - Before: 7.2 rebuilt custom Docker networks with inline reconnect logic that did not preserve all endpoint details consistently. - Problem: the later fixed MAC assignment fix depends on the helper path that restores primary and secondary network attachments predictably. - Change: introduce the network restore helper flow from master before applying the MAC endpoint assignment fix. - Implementation: collect restore entries with network, container, IP, and MAC data, reconnect them through a shared helper, and rebuild primary custom-network containers only when needed.
- Purpose: backport the Docker fixed MAC assignment fix from master to 7.2. - Before: fixed MACs were handled through legacy container-level extra parameters or were lost during network reconnects. - Problem: Docker endpoint MAC assignment needs to happen on the selected network endpoint so bridge and custom networks keep the intended address. - Change: add a fixed MAC template field, normalize and migrate legacy extra parameters, and restore MACs during Docker network reconnects. - Implementation: store MyMAC in templates, build endpoint-aware --network arguments for container creation, and use Docker network connect API calls when restoring fixed MAC endpoints.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
🔧 PR Test Plugin AvailableA test plugin has been generated for this PR that includes the modified files. Version: 📥 Installation Instructions:Install via Unraid Web UI:
Alternative: Direct Download
|
🧹 PR Test Plugin Cleaned UpThe test plugin and associated files for this PR have been removed from the preview environment. 🤖 This comment is automatically generated when a PR is closed. |
Summary
MyMACfield, legacy--mac-addressmigration, endpoint-aware Docker network arguments, and MAC-aware network reconnects.Why
7.2 was missing the network restore helper that the master MAC assignment fix builds on. Bringing that prerequisite over keeps the 7.2 behavior aligned with master instead of carrying a one-off adaptation.
Validation
bash -n etc/rc.d/rc.dockerphp -l emhttp/plugins/dynamix.docker.manager/include/CreateDocker.phpphp -l emhttp/plugins/dynamix.docker.manager/include/Helpers.phpgit diff --check origin/7.2..HEAD