What's Changed
Fix job-service-run network attachment being silently dropped — services now correctly join the specified network.
Thanks to @sethlinnkuleuven for reporting the issue.
Fixed
- Service network not attached (#524):
convertToSwarmSpecnow reads networks from bothServiceSpec.NetworksandTaskTemplate.Networks, fixing a mismatch introduced during the domain/adapter refactor - Service inspect missing fields:
convertFromSwarmServicenow converts Mounts, RestartPolicy, Resources, Networks, Mode, Placement, LogDriver, and EndpointSpec — all were previously lost silently
Added
- Swarm service adapter now converts Placement, LogDriver, and EndpointSpec in both directions — these domain types existed but had no conversion code
- 13 round-trip tests verifying every service spec field survives the domain→swarm→domain conversion cycle
Full Changelog: v0.21.3...v0.21.4
Verification
All binaries include SLSA Level 3 provenance attestations.
Verify binary provenance
slsa-verifier verify-artifact ofelia-linux-amd64 \
--provenance-path ofelia-linux-amd64.intoto.jsonl \
--source-uri github.com/netresearch/ofeliaVerify checksums signature
cosign verify-blob \
--certificate checksums.txt.pem \
--signature checksums.txt.sig \
--certificate-identity "https://github.com/netresearch/ofelia/.github/workflows/release-slsa.yml@refs/tags/v0.21.4" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
checksums.txt