Activity log for bug #1641130

Date Who What changed Old value New value Message
2016-11-11 14:32:38 Aaron Bentley bug added bug
2016-11-11 14:43:43 Aaron Bentley description Region endpoints are optional, needed only when a region's endpoint differs from the cloud's main endpoint. add-cloud treats them as mandatory. I initially observed this behaviour in interactive add-cloud, but it seems to apply to non-interactive forms as well. This produces config that violates "Don't Repeat Yourself" and is therefore harder to read and maintain. For example, here is the canonistack config the QA team uses: canonistack: type: openstack auth-types: [userpass] endpoint: https://keystone.canonistack.canonical.com:443/v2.0/ regions: lcy01: {} lcy02: {} Here is the minimum config that can be produced with add-cloud: canonistack: type: openstack auth-types: [userpass] endpoint: https://keystone.canonistack.canonical.com:443/v2.0/ regions: lcy01: endpoint: https://keystone.canonistack.canonical.com:443/v2.0/ lcy02: endpoint: https://keystone.canonistack.canonical.com:443/v2.0/ For the latter, the user must enter the same URL three times instead of once, increasing the risk of typos and being less pleasant to use. For vsphere, add-cloud uses the cloud endpoint as the region endpoint, making redundancy mandatory: vsphere: type: vsphere auth-types: [userpass] endpoint: 10.245.0.131 regions: dc0: endpoint: 10.245.0.131 There is no need for a region endpoint that matches the cloud endpoint. The QA team successfully uses configs without region endpoints many times a day, so we know that they can work. It is easier to read, because it is obvious that there are no discrepancies between cloud and region endpoint. It is easier to maintain because, should an endpoint need to change, only one change is needed. For the interactive form, updating vsphere should be trivial. It just needs to stop adding region endpoints at all. For openstack, one way to handle it would be to accept "" (i.e. the user pressing Enter with nothing else on the line) as meaning "Do not specify a custom endpoint for this region." Region endpoints are optional, needed only when a region's endpoint differs from the cloud's main endpoint. add-cloud treats them as mandatory. I initially observed this behaviour in interactive add-cloud, but it seems to apply to non-interactive forms as well. This produces config that violates "Don't Repeat Yourself" and is therefore harder to read and maintain. For example, here is the canonistack config the QA team uses:   canonistack:     type: openstack     auth-types: [userpass]     endpoint: https://keystone.canonistack.canonical.com:443/v2.0/     regions:       lcy01: {}       lcy02: {} Here is the minimum config that can be produced with add-cloud:   canonistack:     type: openstack     auth-types: [userpass]     endpoint: https://keystone.canonistack.canonical.com:443/v2.0/     regions:       lcy01:         endpoint: https://keystone.canonistack.canonical.com:443/v2.0/       lcy02:         endpoint: https://keystone.canonistack.canonical.com:443/v2.0/ For the latter, the user must enter the same URL three times instead of once, increasing the risk of typos and being less pleasant to use. For vsphere, add-cloud uses the cloud endpoint as the region endpoint, making redundancy mandatory:   vsphere:     type: vsphere     auth-types: [userpass]     endpoint: 10.245.0.131     regions:       dc0:         endpoint: 10.245.0.131 There is no need for a region endpoint that matches the cloud endpoint. The QA team successfully uses configs without region endpoints many times a day, so we know that they can work. It is easier to read, because it is obvious that there are no discrepancies between cloud and region endpoint. It is easier to maintain because, should an endpoint need to change, only one change is needed. For the interactive form, updating vsphere should be trivial. It just needs to stop adding region endpoints at all. For openstack, one way to handle it would be to accept "" (i.e. the user pressing Enter with nothing else on the line) as meaning "Do not specify a custom endpoint for this region." For the non-interactive form, juju could validate the supplied YAML, and then use it as-is, rather than rewriting it.
2016-11-30 19:33:42 Richard Harding juju: milestone 2.1.0
2016-11-30 19:33:45 Richard Harding juju: assignee Richard Harding (rharding)
2017-01-06 12:56:44 Richard Harding juju: milestone 2.1.0 2.1-beta4
2017-01-06 12:56:50 Richard Harding juju: status Triaged Fix Committed
2017-01-06 15:48:50 Curtis Hovey juju: status Fix Committed Fix Released
2017-01-06 21:13:05 Aaron Bentley juju: status Fix Released Triaged
2017-01-12 02:36:46 Anastasia nominated for series juju/2.2
2017-01-12 02:36:46 Anastasia bug task added juju/2.2
2017-01-12 02:36:53 Anastasia juju/2.2: status New Triaged
2017-01-12 02:36:58 Anastasia juju/2.2: importance Undecided Medium
2017-01-12 02:37:00 Anastasia juju/2.2: milestone 2.2.0-alpha1
2017-01-19 22:29:09 Anastasia juju: milestone 2.1-beta4 2.1.0
2017-02-02 10:55:37 Anastasia juju: assignee Richard Harding (rharding)
2017-02-14 00:16:01 Curtis Hovey juju: milestone 2.1.0 2.1.1
2017-02-20 01:14:01 Anastasia bug task deleted juju/2.2
2017-02-20 01:14:03 Anastasia juju: milestone 2.1.1
2022-11-03 17:17:59 Canonical Juju QA Bot juju: status Triaged Expired
2022-11-03 17:18:00 Canonical Juju QA Bot tags add-cloud jujuqa usability add-cloud expirebugs-bot jujuqa usability