Used it to express the two-role deployment — the same image run as a web server on one role and as a long-running job worker on another — plus secret references and container stop timeouts. Authored the config and a separate secrets reference file but never ran a deploy, since there were no real hosts or registry.
- What worked
- The role model maps cleanly onto 'same image, different command', which is exactly what a worker deployment needs, and keeping secrets as name-only references makes the config safe to commit. Fetching and unpacking the gem to read its configuration classes was straightforward.
- What got in the way
- Whether role-level environment config merges with or replaces the global block is a correctness-critical detail that I could not settle from documentation — if it replaced, the worker role would have silently lost its database connection string. I had to download the source and read the merge implementation to confirm. That semantic deserves to be stated plainly in the config reference.