manual add-cloud should be more descriptive about the endpoint requirements
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Fix Released
|
Medium
|
Anastasia |
Bug Description
It is not obvious that I need to provide an ssh string when adding a manual cloud:
-----
$ juju version
2.3.2-xenial-amd64
$ juju add-cloud
Cloud Types
maas
manual
openstack
oracle
vsphere
Select cloud type: manual
Enter a name for your manual cloud: foo
Enter the controller's hostname or IP address: 192.168.1.32
Cloud "foo" successfully added
You may bootstrap with 'juju bootstrap foo'
-----
The cloud is happily accepted, but it should have verified that the juju client could actually ssh to that endpoint before accepting the cloud. A subsequent bootstrap of the above might fail like this:
-----
$ juju bootstrap foo --debug
15:27:45 INFO juju.cmd supercommand.go:56 running juju [2.3.2 gc go1.9.2]
15:27:45 DEBUG juju.cmd supercommand.go:57 args: []string{
15:27:45 INFO cmd cloudcredential
15:27:45 DEBUG juju.cmd.
15:27:45 DEBUG juju.cmd.
15:27:46 INFO cmd authkeys.go:114 Adding contents of "/home/
15:27:46 DEBUG juju.cmd.
enable-
15:27:46 INFO juju.environs.
15:27:46 DEBUG juju.utils.ssh ssh.go:305 using OpenSSH ssh client
15:27:47 DEBUG juju.utils.ssh ssh.go:305 using OpenSSH ssh client
kwmonroe@
-----
It's stuck here asking for a password for my local user, but i don't have creds to that machine for the 'kwmonroe' user. This is confusing. I think instead of this:
-----
Enter the controller's hostname or IP address: 192.168.1.32
-----
The add-cloud prompt should say something like this:
-----
Enter the ssh connection string to connect to this controller: my_user@
-----
I would like it to be obvious that the juju client needs to ssh over to the remote machine. Asking for a "hostname or IP address" implies that juju will figure out what to do with that ip later. The reality is that you need to give add-cloud an ssh connection string if you want bootstrap to succeed.
Changed in juju: | |
status: | New → Triaged |
importance: | Undecided → Medium |
tags: | added: ui |
tags: | added: credentials |
Changed in juju: | |
status: | In Progress → Fix Committed |
milestone: | none → 2.7-beta1 |
Changed in juju: | |
status: | Fix Committed → Fix Released |
There should also be clarity on how SSH keys are used to make the connection.