/srv/irclogs.ubuntu.com/2020/02/13/#juju.txt

babbageclunktlm: looking through the model manifolds I clicked about something that was confusing me - there are lots of workers wrapped in ifNotMigrating that seem like there should only be one across the controller agents.01:12
babbageclunktlm: It turns out they all depend on environTracker/caasBrokerTracker, which *is* wrapped with isResponsible, so they only run once.01:12
evhanI have a situation where I've upgraded a charm twice in quick succession, and have ended up with one working unit and one unit stuck in state "unknown", and the application "waiting" with 2/1 units running. Apart from the logs is there some place I can look to see what it's waiting *for*?02:09
evhanOr is that entirely defined by the charm (e.g. it went into "waiting" because some hook has not been implemented)?02:10
tlmis this k8's ?02:12
evhanYeah. The thing is when I give it a minute to go green between deploys, things work OK.02:12
evhanThis was just a case of overcaffeination, but now that it's stuck I figure I should investigate.02:13
tlmwhat does the status of the pod in k8s say ?02:13
evhanJust Running, looking for interesting events now...02:14
tlmhmmm, my theory is that the k8s watcher in juju has not caught up. If you force some event to happen to the pod does that change the status in Juju? For example changing a pod label, restarting it, etc etc02:15
evhanHuh, indeed. I just added a dummy env entry to the pod and it came right.02:18
evhanThanks.02:18
tlmnp, we just re-implemented the watchers for k8s in 2.7.2 (out soon) and I think this will have solved that problem02:19
wallyworld2.7.302:20
wallyworldwatchers change won't be in 2.7.202:20
tlmah yep02:21
* tlm chants make watchers great again02:21
* thumper needs moar coffee too02:52
anastasiamacbabbageclunk: PTAL https://github.com/juju/juju/pull/1121504:11
anastasiamacbabbageclunk: ends up being mostly mechanical04:11
babbageclunkanastasiamac: ok, taking a look04:12
anastasiamacbabbageclunk: no rush!04:13
babbageclunkanastasiamac: ooh, it's big - probably won't get it finished today04:20
wallyworldhpidcock: i've left come thoughts on the PR, happy to discuss05:49
kelvinliuwallyworld: https://github.com/juju/juju/pull/11211 PR for adding ValidatingWebhookConfigurations support and upgrade k8s API to 1.17 , could u take a look? ty06:30
wallyworldsure06:30
kelvinliuim going out now, I will respond tmr morning if there are any questions. thank you06:31
wallyworldnp06:32
stickupkidI like how openstack api ref has object fields with colons in it - hmmm09:37
achilleasashouldn't the SetPodSpec call check for leadership on the server-side? It seems that this is only checked at the client10:47
nammn_demanadart: thanks for patch and suggestion! I updated the code and corresponding tests11:26
stickupkidmanadart, here is the code, I just need to speak to hml about how to test this locally https://github.com/go-goose/goose/pull/7711:46
achilleasaanyone knows if it is possible to be running an agent binary that is *newer* than the controller? The reverse is possible (agent version gets synced when you juju upgrade-model)13:11
rick_hachilleasa:  I don't think so. I think the controller has to be the newest so we know the apis are available13:17
achilleasarick_h: so basically, I am trying to figure out if this check is required or not: https://github.com/juju/juju/blob/develop/api/uniter/unit.go#L786-L78813:20
rick_hachilleasa:  heh, sure would be nice if there was a comment on the logic of the assertion...13:21
nammn_demanadart: regarding your comment to add the DocID to the existing constraintsDoc.. I had that initially in the PR. That led to problems because existing Update code were not expecting that. I may be able to work it out and rewrite the update code. Just thought that would not be relevant for that patch13:22
rick_hachilleasa:  yea, so I know that in Juju upgrades the controller has to be done first and is promised to be later than any of the unit agents at first.13:22
rick_hachilleasa:  then when you upgrade the other models they slowly come up to speed13:22
rick_hachilleasa:  so I can't think of any way that hits, but someone clearly wrote it for some reason.13:23
achilleasarick_h: that's a pretty old facade version (we are currently at v15)13:23
rick_hachilleasa:  yea...and being it's in the uniter it's not suceptible to having an old client13:24
stickupkidhttps://github.com/juju/juju/pull/11093#pullrequestreview-35821459013:31
stickupkidhml, tiny nit13:31
hmlstickupkid: notes have “go test -live -check.v”. which now gets a -live not valid flag?  also “go test -live -check.v -image <id> -flavor <name> -vendor canonistack ./…” for nova live tests14:27
stickupkidhml, it's a start :)14:28
hmlstickupkid: hand written notes from fall 2019.  ha!14:31
nammn_demanadart: i've fixed and changed the constraints DocID. While working on it a migration_internal_test failed. I added the DocID to let it pass. Does adding the DocID has implication on a migration?14:52
manadartnammn_de: What you've done is fine.14:58
hmlstickupkid: https://github.com/juju/juju/pull/1121715:37
hmlso is errors.WithStack the new errors.Trace?15:50
stickupkidah, yeah sorry i meant errors.Trace()15:51
stickupkidhml15:51
hml:-)15:51
hmlstickupkid: we’ve proven that “ InstanceMutaterV2 interface “ is a waste right?  I could remove now16:03
stickupkidi believe so16:03
stickupkidhml, holy batman, so many tests testing the test code16:28
stickupkidgoose needs to learn about mocking16:29
rick_hhah, I think it was a bit pre-mocking party time16:29
hmlhahahahaha16:29
rick_hcareful, you're going to hurt hml with all the laughing16:30
stickupkidactual code change +184, tests that test the test +100000000016:30
achilleasastickupkid: hmmm... but what verifies that the test runner runs the tests properly instead of cheating? ;-)16:32
hmlachilleasa:  -live16:33
stickupkidachilleasa, turtles all the way down16:34
achilleasaI am reading the docs for AddUnitStorage (https://github.com/juju/juju/blob/develop/apiserver/facades/agent/uniter/storage.go#L351-L353). The implementation looks like it does a best effort to provision storage and does not stop after an error. However, the client side logic seems to trigger any failue as an error and will bubble up the error to the hook context flush16:55
achilleasaShould the batch call (processes storage reqs for a single unit) bail out with an error as early as possible given that no other change will be applied?16:56
achilleasarick_h: ^16:56
achilleasa(s/trigger/treat/)16:57
hmlstickupkid: still around?17:06
achilleasarick_h: looks like the facade version check was there because the same API call is used by the juju cli: https://github.com/juju/juju/blob/develop/cmd/juju/storage/add.go#L12817:10
stickupkidhml, yarp17:18
stickupkidspeaking to builder17:18
hmlstickupkid: ho?17:20
rick_hachilleasa:  :/ bah that explains it then17:43
rick_hachilleasa:  not sure on the storage question. Maybe shoot an email to the list and I can see what wallyworld thinks there and what his experience is17:43
achilleasarick_h: My theory is that this is for the cli (add storage to multiple things)17:44
achilleasafor flushing it should be atomic anyway17:44
achilleasa(we will keep retrying)17:45
thumpermorning team20:14
hmlhi thumper20:15
rick_hhowdy thumper20:23
=== StoneTable is now known as aisrael
nammn_derick_h: I  finished the remove-space cmd and the edge cases. If you find some time can you give some feedback on ux and output? https://github.com/juju/juju/pull/1118320:59
rick_hnammn_de:  trying, spending this afternoon trying to get my VPC setup correct.20:59
rick_hError details: subnet "subnet-bb18f687" not associated with VPC "vpc-c6391da1" main route table20:59
rick_h:(20:59
nammn_derick_h: no worries,  if that doesn't work I printed the console output to make it look nice :D.21:00
rick_hnammn_de:  yea, have your PR up and trying to bootstrap with it but :( on my vpc setup21:00
evhanI've just switched my client from stable to edge, and I'm trying to run upgrade-controller to do the same for the agent, but there doesn't seem to be a corresponding version available(?). Is there a way to see available versions for the agent, and to synchronise the two?21:30
evhani.e. `juju upgrade-controller --dry-run --agent-stream=edge` says "no upgrades available".21:32
evhanActually, I might be confusing snap channels with juju... Streams?21:33
evhanYeah, never mind. RTFM, evhan.21:33
anastasiamacevhan: this might be worth a discource post ! glad u figured it out so quickly :D21:35
evhanAlthough, setting agent-stream=devel says the same.21:36
evhanAh, I need to specify both an agent-stream *and* an agent-version, since both have a value set in the model-config.21:39
rick_hevhan:  yea exactly21:40
rick_hthe snap/edge is only for the local client and the controllers get their data from streams vs the snap world21:40
evhanYeah, makes sense.21:42
evhanI'm still flailing here a bit though: https://paste.ubuntu.com/p/xZ3BX3DqTX/21:42
rick_hevhan:  yea that last one is right. It's offering to upload the jujud binary from your client snap to the controller21:44
rick_hevhan:  are you looking to try the edge (2.8?) or 2.7.2 (the current candidate stable?)21:45
evhanrick_h: edge, having just updated my client version via snap to the same.21:45
rick_hevhan:  ok, sec testing21:47
rick_hevhan:  though tbh if you care about this controller it's going to get funny in the future as the updates come along21:48
hmlwallyworld:  are you around to talk actions and k8s charms?21:48
wallyworldi am21:48
hmlwallyworld:  ho?21:48
evhanOK, so when I changed the arguments to `juju upgrade-controller --agent-stream=released --agent-version=2.7.2` just to test upgrading full stop (note without --dry-run) it did what I wanted: https://paste.ubuntu.com/p/Scc7j5KfR8/21:49
wallyworldjoin the team one, still talking to kelvin21:49
evhanBut not what I would have expected given the CLI flags. So I got the result I wanted but I'm still a little confused.21:49
evhanrick_h: Yeah, not a controller I care about, just testing.21:50
rick_h:/ yea that pastebin seems odd21:52
evhanWorth filing an issue? I can try to reproduce it, or just provide what I have there. I don't really have a guess about what's going on, perhaps the --dry-run flag is interfering?21:55
rick_hevhan:  I guess. Yes, the dry-run thinks it'll just use the local client as 2.7.2.1 but what it actually did for you is move you to 2.8 even though what you asked for was 2.7.2. :/21:59
rick_hin the end it's a little bit like "don't do that, why would anyway go from a stable juju controller to a local pre-beta thingy" but here we are :)21:59
evhanYeah, fair. The 2.8 version was uploaded successfully when I look on the controller, although nothing was restarted so it's still running the original 2.7.1 version.22:02
anastasiamacbabbageclunk: m trying to run juju-restore and can't...23:44
babbageclunkanastasiamac: what's happening?23:44
anastasiamacbabbageclunk: m on my primary and runnig the binary but providing just pwd is not enough23:45
anastasiamacbabbageclunk: m getting auth failed error23:45
anastasiamacbabbageclunk: it's me ofc.. i was using statepwd instrad of the actual oldpwd... :)23:47
babbageclunkanastasiamac: which password are you passing23:47
anastasiamacall good23:47
babbageclunkyeah, that one got me as well!23:47
anastasiamac\o/23:48
babbageclunkI'll add that to the readme - it's not at all clear which password would be the right one from looking at them23:48
anastasiamacnice23:49

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!