Synopsis
$ phrony bundles lock BUNDLEDescription
Walks the bundle closure starting at spec.root and writes bundle.lock.json beside the bundle manifest. This is the only command that writes the lock file.
Vendored-only bundles are fully offline. When the closure includes pinned external refs, the command resolves each external member's content_hash from the runtime catalog via GetAgentVersion. Set --runtime-addr or PHRONY_RUNTIME_ADDR to the environment whose catalog should author the lock.
Commit the generated lock in version control so PRs and CI can diff closure changes before publish. The lock records closure content only—it does not include or update metadata.version semver in bundle.yaml.
Lock also validates the secret union across closure members. If two members use the same secret name with different fromEnv values, lock fails with a message naming both members.
BUNDLE is the path to the kind: Bundle YAML file (for example support/bundle.yaml).
Example
$ phrony bundles lock ./support/bundle.yaml
$ phrony bundles lock ./support/bundle.yaml --runtime-addr 127.0.0.1:7777 # when closure has external refsOn success:
locked: support/support sha256:…
members: 3 (root: orchestrator)Up next