Hi all! Jhack just received a tiny update to some of its CMR-related functionality.

#
`jhack show-relation`

now supports CMRs

The one **caveat** is that the command needs to be executed from the POV of the model that has the relation. CMRs behave a bit differently than regular relations. In particular, if you cross-model-relate app A in model M to app B in model N, whether the relation will show up in model M or in model N in its relation list (instead of it being only visible as an Offer) depends on where the provider lives.
If A is the provider, the relation will be listed in `juju status --relations --model M`

.
If B is the provider, the relation will appear in `juju status --relations --model N`

.
In other words, in some sense, the relation ‘belongs’ to the model where the provider lives.

Consequently, if you are switched to model M, you can `jhack show-relation A:x B:y`

if and only if A is the provider in the relation; if A is the requirer, then you need to `jhack show-relation A:x B:y --model N`

.

An example of what a CMR looks like in `jhack`

:

Note how the relation has different IDs in the two models, and the `model`

field differs.

Compare this with a regular relation:

And a peer relation:

#
`jhack pull-cmr`

how has an ALL option

Remember how you can use `jhack pull-cmr`

to create CMRs for you? Well, you used to have to select a single CMR to create, but now there is an ALL option.
Its semantics should be self-explanatory.

To try these goodies out, `snap install jhack --channel=edge`

!