Comment 0 for bug 1886654

Revision history for this message
Simon Richardson (simonrichardson) wrote :

Currently Juju doesn't handle unix pipes in a very nice way, in fact it goes out of it's way to not be very friendly about this. Other peer application CLI with in the same area operation scope handle this better (kubernetes, hashicorp products).

For instance, the following should just work...

    juju model-config | juju model-config -m other-model -

Operators whom we're targeting with product expect are familiar with this (see k8s as an example) and will have set expectations. Currently with juju we have to resort to xargs a lot to get around some of this...

It would be nice if the concept could be pushed to other commands:

    curl https://juju.is/bootstrap/lxd | juju bootstrap # lxd manifest for juju bootstrap

Other examples:

    curl https://some.url/charm | juju deploy -
    echo "file.yaml" | juju scp 0 | grep "key word"
    echo "file.yaml" | juju scp 0 | sed -i "//" | juju scp 0 "file.yaml" -

    # not sure if this works, but they should.
    cat script.sh | juju run -
    cat script.sh | juju ssh -