[01:06] <raub> Can I use vsphere withotu vcenter with juju?
[01:35] <thumper> raub: not entirely sure, but I *think* so
[01:36]  * thumper goes to make a coffee
[01:41] <raub> thumper: the only info I found was either with juju 1.X or if 2.X vcenter
[01:48] <thumper> raub: I may well be wrong, I've never tried using vsphere
[01:50] <blahdeblah> When I last looked at it, vcenter was a requirement, but that was several years back.
[01:53] <thumper> race fix review anyone? https://github.com/juju/juju/pull/8766
[02:23] <thumper> wallyworld: https://github.com/juju/juju/pull/8766
[02:23] <wallyworld> looking
[02:26] <wallyworld> thumper: lgtm, so long as tests pass :-)
[02:28] <thumper> they do... see the merge check passes
[13:57] <kwmonroe> >&2 echo "cory_fu, what does stderr redirect at the front of a line do?"
[13:58] <kwmonroe> cory_fu: i know this works (https://github.com/conjure-up/spells/pull/191/files#diff-adf6301122077a979448abe4928806c0R12), but never knew why it was at the start of the line
[14:03] <kwmonroe> hmph.. maybe $(echo "foo" >&2) is not the same as $(>&2 echo "foo")?  to the terminals!
[14:08] <cory_fu> kwmonroe: I don't know why that syntax works, but I can't ever remember the right order and just google "bash echo stderr" and get this result: https://stackoverflow.com/questions/2990414/echo-that-outputs-to-stderr/23550347#23550347
[14:14] <kwmonroe> fair enough cory_fu, https://paste.ubuntu.com/p/WX8KQwCSCB/ seems to show front or back doesn't matter.  i respect your individuality.  +1 remains on that pr ;)
[14:15] <kjackal> Hello  do we know who updates these: https://streams.canonical.com/juju/images/releases/streams/v1/com.ubuntu.cloud.released-aws.json
[14:24] <cory_fu> kwmonroe: heh.  The "more info" page which that answer links to has an "A note on style" section that says "never precede a command with a redirect".  :p
[14:25] <cory_fu> But that's just, like, his opinion, you know?
[14:27] <kwmonroe> :)
[16:13] <Cynerva> Anyone know how Juju decides what the public address is for a MAAS machine, when the machine is attached to multiple networks?
[16:14] <Cynerva> Is there a way to tell it to use a specific address / network interface / network space for the public address?
[16:19] <pmatulis> Cynerva, that's within MAAS network configuration
[16:22] <Cynerva> ok, thanks, i'll look around and see if i can find it
[16:24] <zeestrat> pmatulis: How does that work in MAAS? Link to MAAS docs? I've had some issues with this before in some older versions of juju&maas and would be great to see how it should work now.
[16:29] <pmatulis> Cynerva, zeestrat: https://docs.maas.io/2.3/en/nodes-commission#post-commission-configuration ?
[16:37] <bdx> Cynerva: --via
[16:37] <bdx> https://docs.jujucharms.com/2.3/en/developer-network-primitives
[16:44] <Cynerva> pmatulis: i'm not having much luck with it. In my case I have 6 network interfaces all set to auto-assign. I do see maas is giving special treatment to the first interface, using it for pxe and when populating the A record, so I assume juju's just picking it up from there. haven't found a way to tell maas which interface is primary, or public, or preferred, or anything. will keep looking
[16:44] <zeestrat> pmatulis: I'm not sure how the maas part comes into play as that is just the regular vlan, subnet selection. How does the --via work with bundles?
[16:48] <Cynerva> bdx: thanks, but if i'm reading right, --via applies to relations, whereas i'm asking about machines and units which may be standalone with no relations involved. Specifically the value of "DNS" for the machines, or "Public Address" for the units, as seen in `juju status`
[16:49] <bdx> it doesnt matter in that case
[16:49] <bdx> so you are g2g1
[16:49] <bdx> ooh, I see what you are saying I think
[16:50] <bdx> like unit_get('public-address') ?
[16:50] <bdx> how does it know what the public address is?
[16:50] <Cynerva> bdx: yeah, that's the one :)
[16:50] <bdx> Cynerva: *I think* this is what network_get() resolves
[16:52] <bdx> Cynerva: give your charm some endpoint bindings in the metadata.yaml, then use network_get()
[16:54] <bdx> "it doesn't matter in that case" - what I meant by this is that you can grep for the correct ip address in the expanded yaml or json status, and you can't rely on `juju status` for knowing what ip to display if a machine has multiple ip addresses... I think
[16:55] <bdx> aha
[16:55] <Cynerva> bdx: hmm, i thought network_get only replaced unit_get('private-address'), not public-address
[16:56] <bdx> what if you don't have the concept of a "public-address" anymore, but just replace it with a space binding? - I think I know the answer to this
[16:57] <bdx> because then on providers other then maas
[16:57] <bdx> you wouldn't get the public
[16:57] <bdx> ok
[16:57] <bdx> I see where you are going with this now
[17:34] <bdx> Cynerva: I'm not able to get a public address using network_get() in any situation
[17:35] <bdx> tried running it on a bunch endpoints in different charms that are deployed to aws and have public ip addresses
[17:35] <bdx> Cynerva: I think your concern is quite valid sir
[17:36] <bdx> I would like to hear someones else take on this though
[17:37] <Cynerva> thanks for looking into it, bdx
[17:41] <bdx> Cynerva: I thought I had hit what you were talking about before, this is similar but different
[17:44] <bdx> Cynerva: from what I understand, unit_get('public-address') will return the public address on public clouds, and on non private clouds (like maas where machines can have multiple ip addresses) it will pick the ip address for which the 0.0.0.0 route lives
[17:44] <bdx> looking into how it figures that out now
[17:46] <bdx> Cynerva: https://github.com/juju/juju/blob/develop/worker/uniter/runner/jujuc/unit-get.go#L66
[17:47] <bdx> so it comes from Context
[17:47] <bdx> now just to find out how what puts it in there
[17:55] <bdx> Cynerva: getting closer https://github.com/juju/juju/blob/master/api/sshclient/facade.go#L30,L33
[17:58] <bdx> so https://github.com/juju/juju/blob/master/api/sshclient/facade.go#L63,L80
[17:59] <bdx> Cynerva: from what I can tell, the public ip address comes from the the 0th element in the list of ssh ip addresses
[18:00] <bdx> I could be totally wrong  though
[18:06] <bdx> Cynerva: so looks like unit_get('public-address') will return the ip with the 0.0.0.0 route for maas nodes, and the NAT/public ip for machines with public ip
[18:07] <bdx> Cynerva: there
[18:07] <bdx> :)
[18:09] <bdx> I wonder if there is a way we can make public address data available in network_get()
[18:09] <Cynerva> ah okay, thanks bdx
[18:09] <bdx> np
[18:10] <bdx> so that people writing charms don't run into this
[18:10] <bdx> and they just have a single consistent way of getting network info
[18:11] <bdx> I'm sure this will be a rabbit hole for many
[18:11] <bdx> and its slightly clunky in my opinion
[18:21] <bdx> Cynerva: what I think would be cool is if you could do: `ingress_public = network_get('http').get('public-address') `
[18:23] <bdx> I wonder if we could make an ask for network_get to just include the public-address
[18:35] <bdx> https://bugs.launchpad.net/juju/+bug/1773432
[18:35] <mup> Bug #1773432: network-get should always include PublicAddress() <juju:New> <https://launchpad.net/bugs/1773432>