juju command progress ui

Gustavo Niemeyer gustavo.niemeyer at canonical.com
Thu Feb 28 14:06:28 UTC 2013


On Thu, Feb 28, 2013 at 9:30 AM, John Arbash Meinel
<john.meinel at canonical.com> wrote:
> I think you're missing where the user's misunderstanding is. I'm not
> sure if we can just re-educate our users.
>
> Normally, you make a request for X, and if that takes a while, it is
> because it is finishing X and then returns.

If we say "warning: this can take several minutes because the
environment is still bootstrapping", that's a fact being pointed out,
not re-education.

> Instead, juju is using the logic, request X, return as soon as the
> preconditions for X have been satisfied such that it is expected X
> will eventually succeed.
> Which means that the *next* command is actually the one that verifies
> that the previous one has actually finished, but then doesn't verify
> that the thing you just requested has finished.

The bootstrap command *is* finished. What is not finished is the
action that this command requested. Have you ever user
ec2-run-instances or anything similar?  We're not inventing something
new. That's how these tools work. In the exact same way that when you
say "juju deploy", that's not instantaneous. The command return
despite the fact that the requested action isn't done yet.

> If you gave those sorts of messages, then a user could choose to ^C
> after the starting message, understanding that they don't have to wait
> for it to finish,

Doing CTRL-C when an action command is in progress with zero
consequence sounds pretty surprising (re-education?).

> Maybe "juju deploy --wait" ?(--monitor/--interactive/whatever).

juju deploy + juju observe?


gustavo @ http://niemeyer.net



More information about the Juju-dev mailing list