/srv/irclogs.ubuntu.com/2016/10/18/#juju-dev.txt

anastasiamacwallyworld: looking :D00:03
anastasiamacwallyworld: there is nothing to do with regards to pricelist and stuff that axw did before holidays?..00:05
wallyworldanastasiamac: otp, sec00:05
wallyworldanastasiamac: that pricelist stuff is orthogonal00:05
wallyworldyou can bootstrap just fine00:06
anastasiamacwallyworld: lgtm'ed00:06
wallyworldty00:06
mupBug #1634289 opened: new AWS region: us-east-2 <juju:In Progress by wallyworld> <juju-core:Triaged by alexis-bruemmer> <https://launchpad.net/bugs/1634289>00:07
anastasiamacwallyworld: i seem to recall u had a cunning plan to specify what machine gets picked from maas based on some user desire... where is it at?00:17
thumpertime to take the dog for a wander00:23
=== thumper is now known as thumper-dogwalk\
=== thumper-dogwalk\ is now known as thumper-dogwalk
anastasiamacalexisb: if u have a sec, I'd love ur advice on something00:26
wallyworldanastasiamac: sorry, was otp. we have had the ability to use maas agent as a placement directive. that's been there for a while. not sure if that's what youo mean00:34
anastasiamacwallyworld: https://bugs.launchpad.net/juju-core/+bug/134544000:38
mupBug #1345440: add-machine does not check for duplicates <add-machine> <maas-provider> <juju-core:Won't Fix> <https://launchpad.net/bugs/1345440>00:38
wallyworldanastasiamac: right, that's what I think the agent name placement directive is used for00:39
wallyworldbut i'm not 100%00:39
wallyworldwould need to look at the code00:39
anastasiamacwallyworld: i know it's an old bug, but if u could comment on it with what you know currently, i'd really really apreciate00:40
anastasiamac(like coffee-worthy appreciate \o/)00:40
wallyworldok, i'll need to do it later today after i look at the maas code00:40
anastasiamac\o/00:40
anastasiamaci guess, i'll pay coffee in credit then ;D00:41
lazyPoweranastasiamac juju wait was owned by stub iirc01:12
alexisbanastasiamac, fyi, I gave wallyworld a task that may prevent him for having time to update lp 1345440 today01:21
=== thumper-dogwalk is now known as thumper
anastasiamaclazyPower: tyvm \o/03:03
anastasiamacalexisb: ack03:04
thumperdamn03:08
thumpercan't deploy anything from the charmstore with beta 7 as I get unknown channels03:08
thumperand juju panics03:08
* thumper sighs03:08
veebersthumper: I think beta13 is the oldest that can be used to deploy from charmstore (I hit this a little while back :-|)03:09
* thumper grabs marcoceppi's ubuntu charm directly from github03:10
* thumper hopes it deploys locally into beta 703:11
thumperwell... something is happening03:12
balloonsanastasiamac, did you see my comments about juju-1-switch07:19
anastasiamacyes, u r awesome: marked as duplicate07:19
anastasiamacballoons: i was also told that u have a plan \o/07:19
mupBug # opened: 1577556, 1592887, 1597318, 1614633, 1615986, 1616149, 161683207:19
balloonsanastasiamac, it seems like juju-1-switch should have worked or>>07:20
balloonsanastasiamac, the update-alternatives issue can be solved, but I'm afraid the juju-1-swith command still won't work07:20
dimiternfrobware: ping08:43
frobwaredimitern: pong08:43
frobwaredimitern: your PR is on my list08:43
dimiternfrobware: I've forked your kvm-maas repo and I'm close to sending a PR your way to handle multiple networks08:43
frobwaredimitern: I have a PR pending for that too. :)08:44
dimiternfrobware: yeah, a final look on my PR will be good at some point ;)08:44
dimiternfrobware: nice ;) we could integrate the approach later I guess?08:45
dimiternfrobware: there it is - even works :) https://github.com/frobware/kvm-maas/pull/109:25
frobwaredimitern: \o' ok, entering review mode now. first up is your net port prober.09:28
dimiternfrobware: cheers09:28
frobwaredimitern: ah, actually need to raise a bug first. :/09:31
dimiternnp :)09:33
frobwaredimitern: reviewed. just a few comments.10:27
dimiternfrobware: tyvm!10:28
dimiternfrobware: updated to use conn.Close() instead of defer conn.Close()10:34
frobwaredimitern: close early, close often. :)10:35
dimiternfrobware: yeah - originally I had it like this because the results chan was unbuffered, now it doesn't matter10:36
dimiternow ffs! maas 1.9 DNS can resolve only its nodes' hostnames, not its own hostname :/10:39
dimiternfrobware: oops sorry - I didn't see your "outdated" comments10:45
dimiternfrobware: compromise? ReachableHostPort() ?10:46
dimiternor even SelectReachableHostPort10:48
frobwaredimitern: yep, prefer Reachable.10:48
frobwaredimitern: first of your alternatives.10:48
dimiternfrobware: ok, pushing in a momemnt.10:48
frobwaredimitern: less words. select.. what? ;)10:49
perrito666morning10:51
dimiternfrobware: :)10:54
dooferladhttps://github.com/juju/juju/pull/6465 <-- dimitern, frobware, voidspace instead of messing with hostnames, just reverting an earlier change. Seems like something else fixed the container DNS issue.10:57
dimiterndooferlad: LGTM10:59
voidspacedimitern: I didn't get to your review yesterday, did you get one?11:01
dimiternvoidspace: I got one from frobware, but feel free to have a look :)11:01
voidspacedimitern: you have the link handy?11:03
frobwarevoidspace: https://github.com/juju/juju/pull/645411:03
frobwaredimitern: I was trying your kvm-maas PR - "error: could not determine IP address for PXE network br-enp1s0f1 br-enp1s0f0[0]'"11:04
frobwaredimitern: need to investigate a bit11:04
dimiternfrobware: where is that? kvm-maas-add-node ?11:08
frobwaredimitern: not sure; flipping between too many things, but yes, my first add-node failed.11:08
dimiternvoidspace: sorry, just pushed the last change related to frobware's review11:08
voidspacedimitern: whilst you're feeling talkative...11:08
voidspacedimitern: I'm diagnosing issues with vsphere and xenial. Any unit gets an fe::80 address (or similar) - which is machiine local ipv611:09
dimiternfrobware: why "br-enp1s0f1" ? I'd expect to see e.g. virbr42 instead (well in my case bridge-name==virt-net-name)11:09
voidspacedimitern: and from my logging, as far as I can tell machine addresses are *never* set11:09
voidspacedimitern: so juju/vsphere/xenial is unusable11:09
voidspacedimitern: do you have suggestions as to my next step in debugging11:09
voidspacedimitern: the machines get ipv4 addressses from vsphere11:10
dimiternvoidspace: fe80:: addresses are link-local ones11:10
voidspacedimitern: right, link local11:10
voidspacedimitern: I can't ssh to the machine via juju11:10
dimiternvoidspace: they always exist when ipv6 is enabled - so somewhere we're not filtering them properly11:10
frobwarevoidspace: is vsphere/trusty usable?11:10
voidspacefrobware: yes11:10
frobwarevoidspace: last time I looked at this I could only do *anything* on vsphere as long as it was trusty11:11
voidspacedimitern: it's not that we're not filtering - we don't have *any other addressess* for the machin ein state11:11
voidspacefrobware: I believe that's still the case11:11
dimiternvoidspace: ah.. well if that's the case something is quite broken11:11
voidspacedimitern: at least that's my current conclusion - adding more logging to confirm11:11
voidspacedimitern: yep :-)11:11
dimiternvoidspace: on the provider side I'd guess11:11
dimiternrick_h_: ping?11:11
rick_h_dimitern: pong11:12
dimiternrick_h_: should we do our 1:1?11:12
rick_h_dimitern: I'm there11:12
dimiternrick_h_: ok, omw11:12
voidspacedimitern: yep, agreed - but it maybe a problem with provisioning xenial images on vsphere11:12
voidspacedimitern: I'd like to get into the machine to see11:12
voidspacedimitern: will try the controller machine as I can contact the state server11:13
frobwaredimitern: http://paste.ubuntu.com/23343319/11:13
frobwaredimitern: haven't looked into why11:13
dimiternvoidspace: let me get back to you a bit later11:13
voidspacedimitern: sure11:13
dimiternfrobware: found it! pushing update to the PR11:26
dimiternvoidspace: if you can ssh into the controller, what address(es) did you use?11:30
voidspacedimitern: just hacking up some more logging, trying again shortly - will let you know11:30
dimiternvoidspace: ok11:30
mupBug #1324841 changed: Improve isolation in utils/file_test.go <juju-core:Won't Fix> <https://launchpad.net/bugs/1324841>11:32
mupBug #1325837 changed: juju run is updating ~root/.ssh/known_hosts <run> <ssh> <juju-core:Won't Fix> <https://launchpad.net/bugs/1325837>11:32
frobwaredimitern: closer... http://paste.ubuntu.com/23343396/11:39
frobwaredimitern: ahhh11:41
frobwaredimitern: that's because my virt-network is now a bridge. Ho-hum.11:41
dimiternfrobware: yeah - I use the same names for the bridge and the network; btw pushed another11:44
frobwaredimitern: different, my virt net work definition is actually a bridge. http://paste.ubuntu.com/23343406/11:45
frobwaredimitern: for that kind of definition this virt_network_address()" will always fail11:46
dimiternfrobware: that looks almost the same as what I have locally, e.g. http://paste.ubuntu.com/23343418/ (for maas-int19)11:47
frobwaredimitern: but you have 'ip address=1.2.3.4'11:48
dimiternfrobware: ah, because it's a bridge without an address11:48
dimiternyep11:48
frobwaredimitern: it's actually the hosts bridge (which does have an address)11:48
balloons.query stgraber11:49
frobwaredimitern: I think that's a separate commit/fix/enhancement. when I first started doing this I only need libvirt-derived bridges. Now I want them on my various VLANs11:49
dimiternfrobware: re https://github.com/juju/juju/pull/6454 - good to land?11:49
frobwaredimitern: yep11:50
frobwaredimitern: thanks all around11:50
dimiternfrobware: cheers!11:52
dimiternjam: are you around?11:53
frobwaredimitern: I wonder whether we should just paas the QEMU connection string as an argument.11:53
dimiternfrobware: there are 2 of those actually - from the host POV and maas's POV11:54
frobwaredimitern: are they not the same?11:54
dimiternfrobware: nope11:54
frobwaredimitern: well, I guess that really depends on your initial MAAS setup. My MAAS setup always connects as 'me' to the host.11:55
dimiternfrobware: the former can be qemu:///system as a sane default, while the other is likely different, with qemu+ssh://$USER:$PXE_IP/system being a reasonable default, except if it's not :)11:55
frobwaredimitern: they are essentially always the latter, no?11:56
frobwaredimitern: or it can just degenerate to the latter11:56
dimiternfrobware: I used qemu+ssh://maas:$IP/system before, as I had a maas user only the vmaas-es can use to ssh into my laptop11:56
frobwaredimitern: if MAAS can do power-on/off, then you can use the same string to add/remove-node11:56
dimiternfrobware: if you're calling virsh locally, qemu:///system is assumed to be what you'd want11:57
dimiternfrobware: however, overriding it is useful if you're e.g. setting up a remove kvm host11:57
dimiternin which case it's likely to be the same inside the vmaas host as well (assuming it's configured ok)11:58
frobwaredimitern: I never tried that, but I think it is a reasonable thing to assume would just work.11:58
dimiternI was thinking of adding a simple check that qemu+ssh://$USER:$PXE_IP/system is reachable from the local host11:58
frobwaredimitern:  I think I'm going to make it a required arg. A bit sucky, but less magic.11:59
dimiternbut really we need such a check more importantly for the vmaas host11:59
frobwaredimitern: that would happen in kvm-maas-host - a new repo to setup MAAS controllers.11:59
frobwaredimitern: or, I combine them.11:59
dimiternfrobware: as long as it can be exported once and then used in the same shell - sure11:59
dimiternfrobware: yeah, I forked that one as well :) nice work so far - haven't tried it though12:00
frobwaredimitern: wouldn't bother. fundamentally broken until cloud-init is fixed.12:00
dimiternfrobware: oh, too bad :/12:02
frobwaredimitern: for reference, it is bug #157669212:02
mupBug #1576692: fully support package installation in systemd <sts> <verification-done> <cloud-init:Fix Released> <cloud-init (Ubuntu):Fix Released> <init-system-helpers12:02
mup(Ubuntu):Fix Released by pitti> <cloud-init (Ubuntu Xenial):Fix Released> <init-system-helpers (Ubuntu Xenial):Fix Released> <https://launchpad.net/bugs/1576692>12:02
dimiternfrobware: I see though you've thought about allowing lxd-based maas-es to be deployable - nice12:02
dimiternfrobware: well, I can see cloud-init 0.7.8-1... in xenial-updates now12:03
* frobware notes that this is now fix-released. 12:04
dimiternfrobware: so I'll give it a try later today12:04
frobwaredimitern: the focus is still wrong. We need to drive this from a network spec.12:04
* frobware lunches12:06
dimiternmgz, balloons: how often/when does github-merge-develop-to-staging run?12:20
mupBug # changed: 1325946, 1329256, 1329480, 1329578, 1331691, 1332048, 136566512:29
hackedbelliniHey guys! A local charm failed is failing on install hook. I fixed it, updated the charm and marked it as resolved. But on debug-log I see that it is still using the old install-hook. How can I force it to use the new code?12:43
balloonsdimitern, it runs whenever there is a bless on develop12:45
balloonsdimitern, I believe there was a bless this morningish?12:45
dimiternballoons: ah, I see - ok12:46
dimiternballoons: I was wondering how a multi-PR fix will work if some PRs land in staging from develop before others12:46
balloonsdimitern, the ci run should fail if it gets picked up12:50
balloonsand thus, it shouldn't hit staging until it's all ok12:50
dimiternballoons: right.. or if it doesn't fail, the later PR in the pipeline could be based on staging + cherry-picked PRs yet-to-land on staging12:52
dimiterns/the later PR/the later PRs/12:52
balloonsdimitern, the need for rebasing might happen; see the discussion on the mailing list about this12:53
balloonsbut from a job perspective, you understand what will happen now :-)12:53
dimiternballoons: yeah, cheers :)12:54
mupBug # changed: 1365675, 1368254, 1369638, 1369900, 136990912:59
mupBug #1373592 changed: When bootstrapping or deploying dont spec zone <bootstrap> <ec2-provider> <papercut> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1373592>13:11
mupBug #1373768 changed: Juju doesn't inform users when MAAS is out of nodes <maas> <orange-box> <ui> <juju-core:Fix Released> <https://launchpad.net/bugs/1373768>13:11
mupBug #1375110 changed: "maintenance in progress" detection in the API server needs improving <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1375110>13:11
voidspacehelp for debug-log shows --tail and --no-tail as arguments, yet they don't seem to be defined13:27
voidspacehmm, they are on my local box - yet not on the remote one using the same (allegedly) version of juju13:28
voidspacegah, my fault13:28
voidspace"juju help debug-log --no-tail" doesn't work, perhaps unsurprisingly13:29
voidspacedimitern: I see this in the logs: provider addresses: []state.address{state.address{Value:"fe80::1", AddressType:"ipv6", Scope:"public", Origin:"provider", SpaceName:""},13:38
voidspacedimitern: so at some point we're getting an address with value fe80::1 come in with a Scope of "public"13:39
voidspacedimitern: which is why we're setting it as a public address13:39
dimiternvoidspace: right!13:39
dimiternvoidspace: I remember seeing something nasty like using network.NewScopedAddress(..., network.ScopePublic) in the vsphere provider13:40
voidspacedimitern: some smoking guns from the logs: http://pastebin.ubuntu.com/23343774/13:40
dimiternto fake some address as a public one13:40
voidspacedimitern: I will hunt that out13:40
voidspacedimitern: ouch13:40
voidspacedimitern: yep, environInstance.Addresses makes addresses public13:41
mupBug # changed: 1375268, 1376576, 1380659, 1380989, 1382063, 1382276, 1383260, 1384013, 1384336, 1384348, 138436913:41
voidspacedimitern: provider/vsphere/instance.go:5813:41
voidspacedimitern: shall I just change that to always use a derived scope instead of the two explicit scopes?13:41
voidspacedimitern: in fact dammit, I'll just try it13:42
voidspacedimitern: if Type was a method and we *always* derived it then we wouldn't have this issue13:44
dimiternvoidspace: let me have a look13:45
voidspacedimitern: I've made the change and I'm just scp'ing the binaries up to try it13:46
voidspacedimitern: only takes ten minutes13:46
voidspacedimitern: although, please look to see if there's any reason why we shouldn't rely on a derived scope there13:46
rock_hi . we developed "cinder-storage driver charm. We want to install "git" not as part of install hook. But someone suggested "layer apt". In my charm folder I created layer.yaml file as pasted. http://paste.openstack.org/show/586196/13:46
rock_when layer.yaml will execute?13:47
rick_h_natefinch: ping13:47
mupBug #1384549 changed: Running Juju ensure-availability twice in a row adds extra machines <canonical-bootstack> <canonical-is> <ha> <improvement> <maas-provider> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1384549>13:47
mupBug #1385277 changed: malformed urls as environment variable values need to be handled better <tech-debt> <juju-core:Won't Fix> <https://launchpad.net/bugs/1385277>13:47
mupBug #1386222 changed: Usability: machine provisioning timeouts <deploy> <scalability> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1386222>13:47
rock_Before install script (or) after install script?13:48
dimiternvoidspace: yeah, I think we should be using NewAddress() instead of NewScopedAddress() there13:48
voidspacedimitern: bootstrapping now13:48
voidspacedimitern: thanks13:48
rock_could anyone help me in this.13:49
dimiternvoidspace: it's commendable that whoever implemented the provider tried to convey the public vs. private distinction to juju with the scope, but ...13:49
natefinchrick_h_: howdy13:49
voidspacedimitern: yep, "but"13:49
voidspacedimitern: hah, and with that change no tests fail...13:49
voidspaceor at least, no vsphere provider tests fail13:50
rick_h_natefinch: can you do me a fav please? Can you generate a new fallback-clouds.yaml file with the change ian landed overnight and get it to abentley to test out please?13:50
dimiternvoidspace: sweet! :)13:50
natefinchrick_h_: sure13:50
rick_h_natefinch: ty13:50
voidspacedimitern: well, either sweet or it was just untested....13:50
voidspacedimitern: hopefully they pass because using a derived scope is the right thing anyway...13:50
rock_dimitern: Hi. do you have any idea on my question? please tell me if you have.13:52
katcorock_: try over in #juju. they usually discuss the charming side of things much more. marcoceppi or lazyPower may be able to help13:56
katcorock_: or cory_fu13:56
mupBug #1384549 opened: Running Juju ensure-availability twice in a row adds extra machines <canonical-bootstack> <canonical-is> <ha> <improvement> <maas-provider> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1384549>13:56
mupBug #1385277 opened: malformed urls as environment variable values need to be handled better <tech-debt> <juju-core:Won't Fix> <https://launchpad.net/bugs/1385277>13:56
mupBug #1386222 opened: Usability: machine provisioning timeouts <deploy> <scalability> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1386222>13:56
rock_katco: Thanks.13:56
voidspacedimitern: all machines started, all have ipv4 addresses, can ssh to them13:56
katcorock_: this channel is more for developers of juju itself13:57
voidspacerick_h_: found and fixed the vsphere ipv6 bug (need a PR and tests of course - but verified the fix) - with a bit of help from dimitern as usual13:57
cory_furock_: Hey.  I'm glad to help.13:57
rick_h_voidspace: <313:58
rick_h_voidspace: dimitern frobware macgreagoir natefinch mgz ping for standup13:59
rock_cory_fu: Hi. Hi. we developed "cinder-storage driver" charm. Our charm dependent on Github. During the execution of the charm it will go and get latest files from Git and it will keep those files in cinder node. We will deploy our charm post deployment of Openstack setup. So during execution of our charm it was giving "git ERROR"[Like git is not there].13:59
cory_furock_: The apt layer will install that package more or less the first chance it gets.  Generally, this will mean during the install hook, though it can sometimes actually happen even earlier (due to leadership, storage, etc).  Essentially, as soon as the reactive framework is bootstrapped and the apt layer sees that the package has not yet been installed.13:59
cory_furock_: That also applies to any of your own reactive handlers that don't have any other unsatisfied pre-conditions (e.g., @when decorators)14:00
cory_furock_: So, what you'll want to do, is ensure that the code that depends on the "git" package being installed has a @when('apt.installed.git') decorator on it.  There's an example of this usage in the apt layer README: https://git.launchpad.net/layer-apt/tree/README.md#n6914:01
cory_furock_: (That example also uses reactive code to perform the initial package install, but you can just as easily use the layer.yaml option definition if there are no conditions or other prerequisites that must be satisfied *before* installing the git package)14:02
rock_cory_fc: Thanks. Yes I saw this.  But before install script oonly I need to install that git package.14:02
cory_furock_: Right.  So just ensure that your initial "entry point" handler (i.e., the one with minimal or no pre-conditions) does at least have the precondition of @when('apt.installed.git')14:03
cory_furock_: Let me see if I can find you a more concrete example14:04
rock_cory_fc: I am new to this. didn't get14:04
rock_cory_fc: better I need to clear you with my requirement14:05
mupBug #1384549 changed: Running Juju ensure-availability twice in a row adds extra machines <canonical-bootstack> <canonical-is> <ha> <improvement> <maas-provider> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1384549>14:05
mupBug #1385277 changed: malformed urls as environment variable values need to be handled better <tech-debt> <juju-core:Won't Fix> <https://launchpad.net/bugs/1385277>14:05
mupBug #1386222 changed: Usability: machine provisioning timeouts <deploy> <scalability> <juju:Triaged> <juju-core:Won't Fix> <https://launchpad.net/bugs/1386222>14:05
rock_cory_fu: If we have juju openstack setup. when we deploy our charm and added relation to cinder, then my charm will go and get our cinder-storage driver files from Git and keep them on cinder node. But before cloning from git it was giving "git ERROR". So we need to install git package not as part og install hook.14:09
cory_furock_: Hrm.  All of the examples I can find use the apt.queue_install() method in the code, rather than the layer.yaml option, but it's functionally equivalent.  I think the README is probably the best example, in that case, just know that you can substitute the layer.yaml option for lines 77-79 and it will behave the same14:09
cory_furock_: When using reactive, the idea is to think about the life-cycle less in the terms of hooks, and more in terms of what are the pre-conditions of the block of code (single function / handler) that you're concerned about.  In your case, you have a handler which uses git, and so that block of code needs to be decorated with @when('apt.installed.git') and then it will always be delayed until that dependency is met.14:11
cory_fuThat will likely still happen during the install hook, though, because it can really happen as soon as the apt package is done being installed.14:12
cory_fuUnless it has other pre-requisites, such as depending on the relation, as you mentioned, in which case it needs to have more conditions specified in its @when decorators14:12
rock_cory_fu: I developed my charm using shell script.14:12
cory_furock_: That's fine.  You can use the reactive pattern with bash.  Here is an example, although it doesn't use the apt layer: https://github.com/juju-solutions/layer-openjdk/blob/master/reactive/openjdk.sh14:14
cory_furock_: The main things to note with that are the "source charms.reactive.sh" at the top, and "reactive_handler_main" at the bottom.14:16
cory_fuOtherwise, it's similar to any other reactive example in that you define a set of functions and decorate them with the pre-conditions that are required for each one to be able to run14:17
mupBug # changed: 1260247, 1262750, 1263196, 1267298, 1268917, 1270041, 1270858, 1270896, 1271502, 1271504, 1330473, 1386494, 1386926, 1389303, 1389324, 1389418, 1390284, 139135314:17
cory_fuThose pre-conditions depend on states (flags) that are set either by other handlers in your layer, or by other layers that you depend on.14:17
rock_cory_fu: what layer-git-deploy will do?14:18
rock_core_fu: I am little bit confusing. where to add and what to add?14:20
cory_furock_: I had not seen that layer yet.  To be honest, I'm not sure that it is complete.  Perhaps bdx (James Beedy) will chime in?14:21
rock_core_fu: Ok Thanks. Simply, What I need to add to my charm to install git package? sorry, really these layer terms are very new for me.14:23
cory_furock_: If you haven't read through it yet, https://jujucharms.com/docs/stable/developer-layers covers the basics of layers and states to give you a better foundation.14:24
cory_furock_: As for your specific question, I think that using the "apt: packages: [git]" in your layer.yaml as you mentioned initially, and adding a @when('apt.installed.git') decorator around the code that uses git should be all you need14:25
mupBug #1271923 changed: using lxc containers with maas provider always default to series of host service unit <lxc> <maas-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1271923>14:26
mupBug #1273216 changed: unknown --series to add-machine breaks provisioner <bitesize> <juju-core:Fix Released> <https://launchpad.net/bugs/1273216>14:26
mupBug #1274450 changed: VM locale handling <debug-hooks> <ssh> <juju-core:Fix Released> <https://launchpad.net/bugs/1274450>14:26
cory_furock_: This all presupposes, of course, that you're writing your charm using layers and reactive, which we recommend, but is a very different style than writing traditional charms, in that you don't write the individual hooks directly, just reactive handlers that have preconditions.14:26
rock_core_fu: Oh. Actually I written my charm in a traditional way. So for installing "git" package only I asked in Chat. One guy suggested "layer apt". So I am asking about this.14:29
cory_furock_: If you're writing your charm using the classic approach and creating your hooks yourself, then you can't use the apt layer, have to call apt-get install yourself, and must manage ensuring the ordered execution of your code yourself with the understanding that hooks are inherently life-cycle events and not procedural code paths.  Thus, I can promise that that approach can get difficult quite quickly14:29
cory_furock_: We recommend writing all new charms using layers and reactive because it makes dealing with these exact coordination issues much, much easier14:29
cory_furock_: I have to step away for a few minutes for a meeting, I'm afraid.  I will try to continue to respond, but may be slower for a little while14:30
rock_core_fu: Oh. OK. thanks for your help. One final question please.14:31
rock_core_fu: We already used classic approach right. I will follow this. Because we have to deliver this charm quickly to the client. So at present situation I will use "apt-get install git" in install script of hook. This will be fine right?14:33
mupBug #1271923 opened: using lxc containers with maas provider always default to series of host service unit <lxc> <maas-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1271923>14:35
mupBug #1273216 opened: unknown --series to add-machine breaks provisioner <bitesize> <juju-core:Fix Released> <https://launchpad.net/bugs/1273216>14:35
mupBug #1274450 opened: VM locale handling <debug-hooks> <ssh> <juju-core:Fix Released> <https://launchpad.net/bugs/1274450>14:35
natefinchgah..... why oh why does pastebin.ubuntu.com want me to log in with SSO to download the plaintext of a pastebin that I can see without logging in?  Geez.14:46
mupBug #1271923 changed: using lxc containers with maas provider always default to series of host service unit <lxc> <maas-provider> <juju-core:Triaged> <https://launchpad.net/bugs/1271923>14:47
mupBug #1273216 changed: unknown --series to add-machine breaks provisioner <bitesize> <juju-core:Fix Released> <https://launchpad.net/bugs/1273216>14:47
mupBug #1274450 changed: VM locale handling <debug-hooks> <ssh> <juju-core:Fix Released> <https://launchpad.net/bugs/1274450>14:47
natefinchabentley: new fallback-clouds.yaml http://pastebin.com/raw/rnxGWLjB14:48
abentleynatefinch: Thanks.14:48
cory_furock_: Back, sorry.  So for the most part, yes.  Using `apt-get install git` in the install hook should be fine, but as I mentioned before, you do need to be aware that there are some conditions under which other hooks might run *before* the install hook, mainly storage-attached and leader-elected, I think.  I am not 100% certain, though, that relation hooks will *never* run before install.  So, you may find that you need to manually implement14:51
cory_fusome sort of flag system to manage that.14:51
cory_furock_: You could do that either with hidden dot files on the unit (I prefer to keep them out of the charm code directory, perhaps one level up, to keep that more clean for upgrades and debugging), or you can install the charmhelpers python library which includes a command-line interface to "unitdata" which makes it easy to manage persistent charm data like that, e.g.: chlp unitdata set foo true14:53
cory_furock_: At any rate, just keep in mind that, while there are some assertions about when certain hooks will run, there is also a lot of uncertainty, which is inherent in the nature of the cloud.14:54
dimiternfrobware, voidspace, dooferlad: a couple of small PRs (the latter includes the former): https://github.com/juju/juju/pull/6467 https://github.com/juju/juju/pull/6468 needed to (finally!) fix bug 1616098, please take a look if you can15:04
mupBug #1616098: Juju 2.0 uses random IP for 'PUBLIC-ADDRESS' with MAAS 2.0 <4010> <cpec> <juju:In Progress by dimitern> <https://launchpad.net/bugs/1616098>15:04
frobwaredimitern: will take a look in a bit. raising the LXD bug from yesterday...15:06
dimiternfrobware: sure15:06
rock_core_fu: Thank you for your valuable information. I will need to get good knowledge on layer charm.15:09
frobwaredimitern: reviewed, though it would be easier with distinct PRs. the last one I looked at had code that I had already reviewed.15:51
dimiternfrobware: I'm open to suggestions how I should propose 2 related PR, so they can still depend on each other, but do not duplicate the diff15:51
dimitern:)15:51
dimiternfrobware: thanks for the reviews though15:52
frobwaredimitern: I think propose them separately and land a new PR that has both (already) reviewed.15:52
frobwaredimitern: or merge one of them once independently reviewed and approved.15:52
dimiternfrobware: but wouldn't that be awkward to implement?15:52
dimiternfrobware: I mean, if PR1 changes package1, and PR2 changes package2, which uses package1 ..15:53
frobwaredimitern: so what I meant was have two PRs. get both reviewd. Once OK on both land PR2 with PR1 merged.15:53
dimiternfrobware: there needs to be some artificial shim in package2 that uses a faked up version of package115:53
frobwaredimitern: then I would say they are not independent and would benefit from being reviewed as a single PR.  $shrug.15:54
frobwaredimitern: look at it another way, could either have been independently reverted?15:55
dimiternfrobware: I guess so15:56
dimiternfrobware: well, the second one - not as proposed15:56
dimiternballoons: ping15:58
dimiternmgz, balloons: the windows instance used by github-merge-juju is out of disk space, and the lxd one is somehow borked (websocket.Dial wss://10.0.8.25:17070/model/bc2f61b3-fe8d-416a-8bba-19349301efd5/api: x509: certificate signed by unknown authority)15:59
balloonssinzui, ^^16:01
balloonsSorry away from computer ATM16:01
dimiternnp, just for the record :)16:02
sinzuidimitern: balloons I reboot is needed then16:02
dimiternsinzui: it such cases, and when the PR is approved, I guess it's fine to still hit $$merge$$, right?16:03
sinzuidimitern: yes, wait a moment for me to get the host backup. windows is slow16:04
dimiternsinzui: np, I'll check back in an hour or so16:05
mgzdimitern: it's fine to $$merge$$ again if the failure made it back to the pr16:06
dimiternmgz: righto ;) cheers16:07
sinzuiballoons: rick_h_ : did someone setup a NEW windows host to for the travis tests. We need a deidicated machine for each job. We seem to bee seeing a lot of temporary disk full errors on windows over the last week16:08
* dimitern EODs16:08
natefinchFYI, if you're looking for travis-like CI for windows: https://npf.io/2014/07/ci-for-windows-go-packages-with-appveyor/16:14
balloonssinzui, send me your thoughts about scaling. I know the LXD tests will not scale well ( nor are they being cleaned up, need some magic for that better solved by running elsewhere perhaps)16:17
alexisbperrito666, how is vshpere treating you?16:27
perrito666alexisb: nicely, I am reviewing the provider and I believe I have a clue on what is happening on at least one of the bugs and I see voidspace took the other one that larry deemed very important, then the rest will come after16:28
alexisbperrito666, how do you feel about the user experience for the provider?16:30
perrito666I feel like you did not tell me something because the one I have been provided works like any other juju16:33
alexisbredir, ping16:36
redirpong16:36
rediralexisb:16:36
alexisbheya redir, just checking in, any thing you need from me?16:36
redirnot at the moment16:36
redirthanks16:36
alexisbk16:36
redirI'll reach out to katco shortly16:36
alexisbok, cool if she is pre-occupied let me know :)16:37
alexisband just to verify redir you are picking up the multi series charm bug, correct?16:38
rediryes16:38
alexisbcoolio, thanks16:38
redirnp16:51
=== redir_ is now known as redir
natefinchheh nice, without even trying my PR is +1,000 −016:59
rick_h_natefinch: hah16:59
natefinchsinzui, mgz: is there a list somewhere of which repos the merge bot handles?17:00
mgzyou can see either by looking at the github project perms or the jenkins job list17:00
sinzuinatefinch: yes, the jobs are named after the repo http://juju-ci.vapour.ws/view/Juju%20Ecosystem/17:00
perrito666wtf/min increases17:01
* perrito666 cries in spanish17:01
natefinchsinzui: perfect, thanks17:01
natefinchsinzui, mgz: can one of you add a merge job for github.com/juju/jsonschema ?17:03
mgzwhat deps does it have?17:03
natefinchmgz: like go version, or like packages?17:03
mgzpackages17:04
sinzuinatefinch: mgz: no deps at this minues17:04
natefinchI can add a dependencies.tsv if that makes your life easier17:04
sinzuimgz: export the path to golang1.6 we dont wany any other go being used17:04
mgznatefinch: that's safest, but if it only have trivial ones the gating script can use one of the other modes instead17:05
natefinchmgz: it does import 3rd party repos17:05
natefinchmgz: https://github.com/natefinch/jsonschema/blob/0f97e8fd9f30f6c1e8c1756aacea26cd56792547/dependencies.tsv17:12
natefinchmgz: one wrinkle - the dependencies.tsv only exists in the PR, not in the root of the repo (this is the first PR to populate the repo)17:13
mgznatefinch: that will work fine, thanks17:13
mgzsinzui: I'll go ahead and add this?17:14
sinzuimgz" please17:14
mgzokay, perms right on the branch, job created17:17
mgzchanging the config on the juju slave now then we're good to go17:18
mgznatefinch: all done, you can go ahead and try $$merge$$ on your proposal now17:20
natefinchmgz: awesome, thanks17:21
mgznatefinch: one error in the dependencies.tsv?17:24
natefinchmgz: yeah, my fault, was on a local branch that hasn't landed yet17:25
natefinchgit commit -a --amend --no-edit  is my BFF17:26
natefinchyay for fast tests17:29
mgznatefinch: seems to have worked17:30
natefinchmgz: yep17:30
natefinchmgz: thanks :)17:30
=== tasdomas` is now known as tasdomas
=== TheRealMue is now known as TheMue
=== perrito667 is now known as perrito666
hackedbellinigey guys! I deployed a charm here, but had to do some manual changes on it because of an error that it is having. Now I'm trying to upgrade it to my local charm, but it is giving me this error:18:11
hackedbelliniERROR cannot upgrade application "jenkins-slave-xenial" to charm "local:precise/jenkins-slave-16": cannot change an application's series18:11
hackedbelliniI'm trying to use the --force-series option but with no luck18:11
natefinchhackedbellini: there should be a series: value in the metadata.yaml with a list of supported series, make sure xenial is in that list, or add it if it's not there18:13
hackedbellininatefinch: hrm, this is a very old charm. It doesn't have that value. What should I put exactly?18:14
natefinchseries: ["xenial"]18:15
natefinchthat should work18:15
hackedbellininatefinch: on the root, right? I'll try it right now, thanks18:16
natefinchyep18:16
hackedbellininatefinch: I added both "xenial" and "trusty" to the list. After that I got this:18:20
hackedbelliniERROR series "precise" not supported by charm, supported series are: xenial,trusty18:20
hackedbellinithen i added "precise" too, that made me return to the original issue18:20
hackedbellininote that the charm is not deployed in a precise machine18:21
natefinchweird18:21
natefinchit's deployed to xenial, I presume, based on the name?18:21
hackedbellininatefinch: yeah! The charm in question is jenkins-slave: https://jujucharms.com/jenkins-slave/18:22
hackedbelliniI deployed 2, one on trusty and one on xenial18:22
hackedbellinibut I had to modify the jenkins-slave.deb for xenial to update it to systemd (it was using upstart)18:22
natefinchhackedbellini: what's your local series?  i.e. the one you're running deploy from?18:23
hackedbellinixenial18:23
hackedbellinihttps://www.irccloud.com/pastebin/FGgsTLGl/18:23
hackedbellininatefinch: ^ that is my deploy18:24
natefinchso, the store thinks this is a precise charm18:24
hackedbelliniyeah the store thinks that18:24
hackedbellininatefinch: this is how the metadata.yaml of my local charm is looking:18:25
hackedbellinihttps://www.irccloud.com/pastebin/YZjKVFvA/18:25
natefinchare you using upgrade-charm --switch?18:25
hackedbellininatefinch: I was trying with --path, but --switch gives something very alike. Let me give you some outputs18:27
natefinchI think switch is what is supposed to work for what you want to do18:27
natefinch"supposed to"18:27
hackedbellininatefinch: this is the output when I just have xenial and trusty on series:18:28
hackedbellinihttps://www.irccloud.com/pastebin/DkbF6lW0/18:28
hackedbelliniand this is when I add precise too18:28
hackedbellinihttps://www.irccloud.com/pastebin/V7DjV3B4/18:28
hackedbellininatefinch: do you know at least where can I change a file on the existing charm? Because juju keeps running a hook on it that reinstalls the old deb and I loose my modifications18:31
hackedbellininevermind, think I found it18:33
hackedbellinibut still want to know how to change the charm to the local one =P18:33
natefinch--switch is supposed to work for that.  seems like you're hitting a bug18:34
hackedbellininatefinch: haha I'm hiting a lot of bugs in this deployment =P18:36
natefinchahh man, our provider config code is so convoluted20:27
wallyworldmenn0: thumper: look at the last few lines in func addApplicationOps() in state/application.go.... what do you notice?20:47
* menn0 looks20:48
menn0wallyworld: apart from "svc"?20:49
wallyworldthe Id value in the txn.Op does not match the docID value in the applicationDoc20:49
wallyworldit uses app name for the txn.Op20:49
wallyworldand uuid:name for the application doc id20:49
wallyworldsurely that's an issue?20:50
menn0wallyworld: nope20:50
wallyworldwhat am I missing?20:50
menn0wallyworld: the multi-model txn layer will sort that out20:50
wallyworldoh, so it even handles Id in txn.Op20:51
menn0wallyworld: the Id field in the txn.Op gets the uuid: prefix added automatically before the txn is applied20:51
wallyworldok, didn;t relaise that20:51
perrito666why would someone have type mismatches inside the same library?20:51
wallyworldthat example is different to all the others20:51
wallyworldthe others use doc id, which has the model uuid applied20:51
wallyworldmenn0: thanks for clarifying20:52
menn0wallyworld: it's because you used to have to add the doc id on manually20:52
menn0wallyworld: but then we improved the multi-model layer20:52
menn0wallyworld: so there's a mix20:52
wallyworldok, i'm happier now, i didn't know about that improvement20:52
menn0wallyworld: for new work, don't add the model uuid prefix yourself20:53
wallyworldexcellent, ok20:53
menn0wallyworld: same goes for Find and FindId calls20:53
wallyworldeven betta20:53
thumperwallyworld: there are many places in the codebase that do things they don't need to do w.r.t. the model-uuid20:55
thumperand menn0 did a great job with the multi-model layering20:55
wallyworldthumper: agreed. i wsn't critisising, just very confused20:55
menn0wallyworld, thumper: I started an effort last year to standardise all this ages ago but got pulled onto other things20:56
wallyworldas always :-)20:56
* thumper nods20:56
thumperI have been trying to clean things up too20:56
thumperwhenever I drive by20:57
wallyworldi'm going to propose the cross model work be merged back into develop and wanted to be sure everything was good in how i did remote applications20:57
wallyworldthat f*cking branch was sooooooo stale20:58
alexisbwallyworld, are you having a fun morning ? ;)20:59
wallyworldalexisb: living the dream, wheeeeeee20:59
wallyworldalexisb: only just woke up, it was more like a fun late night :-(20:59
wallyworldalexisb: can you join the sts call?21:15
alexisbpossible21:16
* alexisb runs to pick up her son21:51
redirwhat mongod do I need for 1.25.x?21:54
redir0.6?21:54
perrito6662.421:54
redir:)21:54
zeestratAnyone with a MAAS setup that could take a look at (and perhaps try to reproduce) https://bugs.launchpad.net/juju/+bug/1634390 ? Would be much appreciated.22:02
mupBug #1634390: jujud services not starting after reboot when /var is on separate partition  <juju:New> <https://launchpad.net/bugs/1634390>22:02
redir:)22:23
redir 22:23
redirforgot all about 1.x blowing up the terminal with mongo logs22:24

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