[00:32] hi night shift === arosales_ is now known as arosales [00:51] sweet my house is finally on street view,I am in the 21st century [00:56] welcome to the internet perrito666 [01:01] anyone know if its possible to deploy things to the juju bootstrap nodes, if you're using HA? I'm trying to go do lxc:0, lxc:1 type of thing [01:02] in the past we've done a juju deploy of cs:ubuntu to the units based on constraints [01:11] ah, I might have to use native juju deploy to get the cs:ubuntu deployed, then use juju-deployer [01:26] bradm: yes you can [01:26] bradm: however the boostrap node isn't as special in an HA world [01:26] bradm: it just becomes one of the state servers [01:26] don't rely on hard coded numbers [01:26] you can use placement directives for stateserver nodes just like normal [01:27] thumper: I'm trying to deploy openstack HA things to those 3 nodes [01:27] bradm: we don't have any magic short cut names [01:27] bradm: but if this is something that you envision doing a lot [01:27] thumper: I'm pretty sure this is a juju deployer bug [01:27] it might make sense to add some sort of alias [01:27] probably deployer [01:28] thumper: I just did a juju deploy cs:trusty/ubuntu --to 0, and then juju add-unit ubuntu --to 1 [01:28] thumper: the use case here is bootstack, we want to have a HA juju bootstrap node, and then use those same 3 nodes as the HA for the rest of openstack [01:28] thumper: by deploying ubuntu to the 3 HA bootstrap nodes, we can then deploy the rest via lxc [01:29] jam: any idea what's up with the old landing bot? https://code.launchpad.net/~mark-sheahan-ms/gwacl/cert-args/+merge/235889/comments/577883 [01:29] thumper: aha, bug 1324129 seems relevant to my interests, just added a comment to it. [01:29] Bug #1324129: unit placement can only go to machine 0 [01:30] there's a real mix of inequality between juju and juju deployer about what you can do placement to [01:30] bradm: why are you bothering to deploy ubuntu? it is the do nothing charm [01:31] thumper: hrm, I probably could just use lxc:1, couldn't I, now I'm outside of juju-deployer [01:31] or whatever the format is [01:32] thumper: our standard way of deploying it has been to deploy ubuntu using constraints and give it a name, and then use that to deploy the units to [01:32] thumper: oh, because I need to be able to refer to those hosts by service name, thats why [01:32] whaaa??? [01:32] thumper: juju-deployer will only let you refer to machine id 0, and thats it. [01:33] bradm: yes [01:33] bradm: yes to the "lxc:1" [01:33] thumper: right, which won't work inside juju-deployer yaml [01:35] I can't see any other way around it until juju-deployer loses the idea that machine id 0 is special [01:40] ideally both juju and juju deployer would agree on what you can deploy to [01:40] ideally [01:40] juju deployer will let you use service names, but only machine id 0 [01:41] and juju will let you use whatever machine id, but not service names [01:41] so we're having to switch and change a bit [01:45] thumper: well, there's now bugs on both programs to make it equal.. :) [01:45] bradm: how does the deployer let you specify a service name as a target? [01:46] and what does it mean when there are 0 units [01:46] or more than 1 unit? [01:46] thumper: you can do things like lxc:ceph=2 [01:46] thumper: and that'll do the 2nd ceph unit [01:47] bradm: file a bug, and I'll make someone do it :) [01:48] thumper: already done days ago [01:48] thumper: bug 1372759 [01:48] Bug #1372759: Extend juju deploy --to format to allow specifying service name [01:48] ta [02:01] well, way to paint myself into a corner - I can't use juju deployer to deploy to units 0, 1 and 2, but I can't use juju to deploy via service name [02:09] bradm: fixing that is part of stuff we'll be looking at in the coming weeks. We've got a call next week with the deployer devs to make sure we move the parts in sync [02:09] rick_h_: awesome, that'll be good. [02:10] I still need to figure out a way to deploy with HA bootstrap nodes, and with HA openstack, both on the same 3 nodes. [02:10] bradm: hmm, we're looking at specifying new machines in the work. This is slightly different. We'll keep this in mind as we complete out the task list. [02:11] rick_h_: basically, we're trying to use the 3 HA bootstrap nodes as a target for lxc containers for HA openstack, if that makes ense. [02:11] er, sense. [02:11] bradm: so I'd be curious how an HA juju env looks in the GUI machine [02:11] machine view that we put out today [02:12] bradm: and then you can use the webUI to create containers on each of the state servers and place services on it [02:12] rick_h_: easy enough to deploy it, is it in the normal charmstore? [02:12] bradm: yes, it was published today [02:13] rick_h_: ok, I'll have a look at that shortly, just have to answer the door [02:13] bradm: rgr [02:14] bradm: shared a video of the machine view stuff on the orange box doing containers/etc. So it's missing the HA juju part which I've not tried out. It might give some idea if it'd be useful or not if I'm following you. [02:14] bradm: what provider are you using? MAAS? [02:48] thumper: ping [02:49] menn0: hey [02:49] thumper: just back from kids swimming. [02:49] thumper: I've just figured out why those units aren't coming up after upgrade [02:49] and? [02:50] thumper: the unit agents aren't starting up after shutting down to restart into the new tools version [02:50] thumper: once I manually start the agent, all is fine [02:50] thumper: I have another unit that's still in that state so I'm going to poke around [02:50] thumper: but do you have any ideas? [02:51] only that if the process exits with a particular exit code, upstart won't try to restart it [02:51] but I don't recall what it is, axw might [02:52] I wasn't aware of special exit codes [02:52] *I'm not aware [02:52] hmm... pretty sure there is one [02:54] normal exit 0 [02:54] in the upstart config file [02:56] menn0: so if the user agent exited with a value of 0, it wouldn't have been restarted by upstart [02:56] thumper: yep I got that [02:57] thumper: I'm not seeing anything in the unit agent's logs that indicates why this might have happened. [02:57] thumper: I'm going to try with master just to make sure this isn't a more general problem. [02:57] * menn0 is glad he scripted the envrionment setup [02:57] ok [03:00] rick_h_: yes, we're using maas [03:00] rick_h_: this is on softlayer hosts [03:08] davecheney: thanks for all those reviews [03:08] davecheney: would you mind taking one more look at http://reviews.vapour.ws/r/88/? [03:12] ericsnow: looking [03:22] davecheney: thanks [03:22] thumper: it's definitely my changes causing the unit agents to not start [03:22] stragne [03:24] review done [03:27] menn0: did you want to talk through it? [03:28] thumper: probably a good idea [03:28] thumper: standup hangout? [03:28] menn0: I'm in the standup hangout :) [03:31] HOLY SHIT [03:32] did everyone know that in RB you can attac a comment to MORE THAN ONE LINE ? [03:33] oh? [03:34] davecheney: that's one thing I like about reviewboard [03:34] click and drag, baby! [03:34] davecheney: I did not but I just tried it and you totally can :) [03:35] ericsnow: it occured to me in the review comment mode, why it would only show one single line with no context [03:35] so, that's the reason [03:35] now if the bastard would only show comments and diffs on the same page [03:36] davecheney: the comments are on the diff: the little numbered boxes on the left (click to expand and reply from the diff page) [03:36] ericsnow: yes, people keep saying that [03:36] so, click on the box [03:36] davecheney: :) [03:36] and you want to reply to their reply [03:36] try it [03:36] you'll see why it doesn't work [03:37] ericsnow: is there an optoin to have RB auto expand those little boxes [03:37] ? [03:37] davecheney: you mean that it redirects you away from the diff? [03:37] davecheney: not natively [03:38] ericsnow: bingo [03:38] davecheney: apparently reviewboard has quite a few extensions out there so I expect there's something [03:43] rick_h_: https://chinstrap.canonical.com/~bradm/ha-juju.png is what HA juju looks like in the gui, in the machine view [03:54] restarting into utopic. bbs.. or possibly not [03:59] meint gott, it just worked [04:36] thumper: ping [04:36] menn0: ya? [04:36] thumper: so scratch what I thought it might previously [04:37] thumper: that unit died when the state server restarted [04:37] thumper: (into the new tools version) [04:37] thumper: lots of workers died because they lost their API connection (expected) [04:37] thumper: but for some reason the uniter decided it should die too [04:37] thumper: logs here: http://paste.ubuntu.com/8430245/ [04:38] thumper: that's the tail of the unit's log [04:38] thumper: the key part is: INFO juju.worker.uniter uniter.go:144 unit "rsyslog-forwarder-ha/1" shutting down: tomb: dying [04:38] and probably DEBUG juju.worker.uniter modes.go:398 ModeAbide exiting [04:38] that shouldn't have happened [04:39] the broken pipes, dying workers and watcher errors are expected when the state server goes away [04:40] the other units had units restart when the state server died but they came back after a few retries, once the state server was available again [04:40] but for some reason this unit (and others in previous upgrade attempts) decided to die [04:40] I'm guessing it's a timing thing somehow [04:41] hmm... [04:41] ModeAbide? [04:41] I learned about that in my first week thanks to talk by Will [04:41] :) [04:42] it's a function in the uniter [04:42] but also the steady-state mode of the unit agent [04:44] I would have thought that any exit of the agent due to an error should be non-zero, and hence restarted [04:44] what you seem to be saying is that there is some situations where that doesn't seem to be the case [04:45] yes [04:45] hmm... [04:45] that seems to be the case [04:45] look at agentDone function [04:45] and beyond that, the unit agent shouldn't have even been exiting at that point [04:45] jujud/agent.go:315 [04:46] worker.ErrTerminateAgent [04:46] I'm wondering if that is the error being returned somehow [04:46] what it looks like from looking at how ModeAbide is exited is that the unit's state went to Dying [04:46] which might explain why the agent exited with 0 [04:46] it was as if the unit had been told to terminate [04:46] huh? [04:47] the uniter thought it was dying? [04:47] yep [04:47] that would explain why it didn't restart [04:47] exactly [04:47] but seems weird that it might think it is dying because it can't talk to the api server [04:47] I'm just checking what the state server sent back over the API about this unit [04:52] thumper: nope. the "life" calls for that unit always respond with "alive" [04:53] probably worthwhile running this test a few times on master if it is timing based [04:53] as pretty sure it isn't your change that did this [04:53] yes it is important, but perhaps a decent bug report would be best right now [04:54] thumper: you think it's not my change? I'm not sure yet. [04:54] thumper: but good to check on master a few times to be sure [04:54] fairly sure... [04:54] not 100% [04:54] but well up there [04:55] ok. recreating the env and switching to master now. === urulama-afk is now known as urulama === alexlist` is now known as alexlist [08:44] any reviewers around? http://reviews.vapour.ws/r/109/ [08:44] TheMue, cmars, as OCR can you have a look please? ^^ [08:44] dimitern: yep, will do [08:44] morning btw [08:44] fwereade, you might be interested, if you have time ^^ [08:44] TheMue, morning :) [09:30] fwereade, TheMue, cmars, another trivial cleanup follow-up - http://reviews.vapour.ws/r/110/ [09:32] dimitern: I'm almost throught with 109, will take a look then [09:33] TheMue, cheers! [09:46] Is there a document somewhere with details on the upcoming Brussels sprint? === fabrice is now known as fabrice|lunchpar [09:50] dimitern: so, you've got a review [09:50] Spads: afaik only the typical wiki page [09:51] TheMue: where is it? [09:51] https://wiki.canonical.com/CDO/Sprints/JujuOct14 <-- oh, this? [09:51] TheMue, tyvm [09:56] Spads: yep [09:56] TheMue: many thanks [09:56] Spads: yw [10:05] TheMue, cmars, fwereade, and another small follow-up for the uniter - http://reviews.vapour.ws/r/111/ [10:08] dimitern: hey, I wonna be productive today too, but you don't let me :D [10:09] TheMue, sorry to be a pest, but I really want to finish with the port ranges stuff today if I can, so we can start again on container addressability next week :) [10:11] dimitern: hehe, yeah, and it's my job as ocr today [10:11] TheMue, +1 [10:23] dimitern: #111 is marked as WIP, so waiting with review? Oh, and btw, #110 is done. [10:25] TheMue, yes, all of the follow-up are WIP, because they can't land before their parent is merged into juju:master [10:26] dimitern: ok [10:45] dimitern: having a quick talk? [10:46] TheMue, yep, sorry, omw [11:52] TheMue, cmars, fwereade, last one for today :) I promise - http://reviews.vapour.ws/r/112/ [11:53] dimitern: 112 is the german number for emergency calls, so I'm not sure :D [11:57] TheMue, :D it's the same here [11:58] TheMue: its the argentinian number for helpdesk, that never works btw [12:03] perrito666: *lol* [12:06] axw: standup? [12:07] katco: I'm there [12:08] axw: huh... so am i? [12:08] I'll rejoin [12:20] http://www.reddit.com/r/juju/comments/2his7a/juju_gui_now_has_an_awesome_machine_view/ for your upvotes please [12:24] rick_h_: sexy [12:24] rick_h_: looking really sharp +1 [12:24] * katco watching your video right now [12:24] shame about the lack of hardware details in the old maas provider [12:24] yea, glad to see the bug get fixed [12:24] you actually got me pausing my music to look at the vid [12:25] so hopefully it'll just get better in time as juju support hardware info more [12:25] rick_h_: they all do now [12:25] so yep :) [12:25] (all do in master) [12:25] .. and 1.20.8 I think? [12:25] rick_h_: you need music on those vids :p and perhaps that sound from a boats horn that is used in all the movie trailers nowadays [12:26] +1 [12:27] lol [12:27] something like [12:27] THIS SUMMER JUJU WILL HAVE LESS BUGS [12:28] SUNDAY SUNDAY SUNDAY [12:28] *explosion* [12:28] rofl [12:28] then DEPLOYS BUNDLES HA NEW VIEW [12:28] i'm just wondering when they'll start combinging the buzzfeed headlines with trailers [12:29] "YOU (DUNNNNN) WON'T (DUNNN) BELIEVE (pkaw!) HOW THESE TWO PEOPLE FALL IN LOVE" [12:29] rick_h_, upvoted! [12:30] dimitern: ty! [12:30] re [12:30] k [12:30] sdadg [12:30] sorry kb hit the ground [12:31] rick_h_: upvoted [12:31] if you tweet something Ill also retweet you [12:32] you want like an officially tweet https://twitter.com/jujuui/status/515467739951923200 [12:32] or a personal tweet https://twitter.com/mitechie/status/515462052106629121 [12:33] or another point of view tweet https://twitter.com/jaycee/status/515468467567603712 [12:33] :) [12:33] rk [12:33] j [12:33] mm the fall clearly was not good on this kb [12:33] now sometimes shift enters [12:33] rick_h_: retweets are for free so I can go with all three of them [12:37] thanks for all the points/sharing, go juju! :) [12:38] bradm, deployer will support arbitrary machines.. it was a safety belt for portability.. but it reality is its very useful [12:38] to go to arbitrary machines === jheroux_away is now known as jheroux [13:02] ahh the old "gmail is unavailable, check our status page" ..... Status page says everything is fine [13:03] reloading fixes it, though, so, I guess I won't ragequit gmail today [13:03] well, they dont say that the status page is working [13:03] lol [13:03] where's the status page for the status page? [13:04] natefinch: "check the status page" is an euphemism for "stop hitting our mail servers while we try to get them working again you refresh maniac" [13:07] I'm very sad that juju.io is not something we own [13:08] juju.wtf is available, though. [13:09] juju.bike [13:10] there's juju.works which is kinda cute [13:14] +1 === fabrice|lunchpar is now known as fabrice [13:21] and most likely juju.ninja should be available too [13:21] nope, taken [13:21] maaan, I finally got to know how this is done http://cdn.diply.com/img/6d874ee0-a5db-43f2-ad34-b358b618bd5f.jpg [13:21] I can die happily [13:22] neat! [13:22] I was a whole day trying to get http://ide.ninja/ :p and finally got it, they are oddly unexpensive [13:23] gojuju.io is available, which is a pretty good compromise I think. Not ideal, but since we already failed to get any juju domain names when deciding on the name of the product (seems like bad planning.... everyone knows the first thing you do when starting a project is buy the domain name!) [13:26] natefinch: lol [13:26] when I started my company I decided the name based on the one with the lowest google hits and domains taken [13:26] * natefinch has several projects that never got past the "buy the domain name" stage, for example... [13:26] so while we did that we had a functioning company for like 4 months called thing2009 [13:26] haha [13:26] in spanish, which is coso 2009 [13:33] natefinch: my calendar says 1:1 [13:36] TheMue: could you get me a review on http://reviews.vapour.ws/r/107/? It's pretty small. [13:39] ericsnow: will do it next, right now I'm doing the 113 [13:39] TheMue: cool, thanks! [13:45] TheMue: I could also really use http://reviews.vapour.ws/r/88/, but 107 is a bigger priority for me :) [13:51] ericsnow: hmm, just wanted to make you happy with a done #107 and you've got already the next one for me. ;) [13:51] TheMue: I'm a slave driver ;) [13:52] ericsnow: yeah, I see it. this morning already dimitern has been a slive driver. [13:53] TheMue: ah, to be OCR and free! [13:56] for backups upload and download we could follow the precedent of tools and charms (add hooks directly to the API server to handle HTTP requests directly)... [13:56] ...or teach the RPC server to handle files too. [13:56] any quick thoughts? [13:57] (I'll probably end up taking this to the ML) [14:09] wwitzel3: standup? [14:22] anyone know off the top of their heads if add-unit -n 3 --to=1,2,3 is possible? [14:25] rick_h_: I don't think so, but not 100% sure [14:26] natefinch: thanks, will see if I can try it out [14:30] marcoceppi: the summary formatter just landed :) [14:30] * marcoceppi revs up the git machine [14:33] katco: I had a huge 20 machine deployment yesterday, but completely forgot about testing as it was late at night, I'll be spinning up another one soon though [14:34] marcoceppi: no worries. it's been pretty well banged on, i'm just excited to see what large deployments look like :) [14:52] oh, just got notified my new provider will install the new connection (100 mbps) on tuesday. let's press thumbs that e'thing works [14:54] 100MPS is pretty sweet [14:55] dimitern, TheMue: could you guys talk to johnmc on #juju and try to give him a hand? I spent a few hours working with him yesterday. He has a machine that used to be able to deploy lxc containers and now can't [14:58] natefinch: sadly have to step out after my actions meeting in 2 min [15:01] * perrito666 has 12 m and is happy enough [15:35] ericsnow: is there anything backups related I can assist with? [15:36] wwitzel3: you could take a look at upload/download or at adding more functional tests [15:37] wwitzel3: preferably the functional tests :) [15:37] wwitzel3: thanks for the offer, BTW [15:37] ericsnow: sure, any specific tests you're looking to have done? [15:39] wwitzel3: I guess one each on the backups interface (state/backups), on the API (api/backups), and the command (cmd/juju/backups) [15:40] ericsnow: so by more, you meant all? :P [15:41] ericsnow: sounds good, I'll ping you went I'm getting ready to start on them, I'm wrapping up the runcmd stuff now. [15:41] wwitzel3: well, we have functional tests on CI that we will switch to the new backups once we ditch the old, but yeah :) [15:41] wwitzel3: cool [15:42] ericsnow: I learned that case Foo, Bar: expression .. is much more useful than case Foo:\ncase Bar: expression [15:43] ericsnow: coincidentally learning that also fixed the last known bug I was stuggling with in apiserver/runcmd [15:44] which then made me feel dumb [15:44] yay! [15:44] wwitzel3: oh, you mean how each case has an implicit break and you must explicitly ask it to chain them? === fabrice_ is now known as fabrice|out [15:45] ericsnow: yep [15:45] wwitzel3: I hate stuff like that [17:44] anybody using 14.10? [18:22] ericsnow: you around? [18:22] natefinch: yeah [18:23] ericsnow: finally got to look at the backups list stuff [18:23] natefinch: cool [18:24] ericsnow: how is this safe? https://github.com/ericsnowcurrently/juju/blob/backups-list/state/backups/backups.go#L99 [18:25] ericsnow: by definition, you're letting people create a backup value with anything that implements filestorage.Filestorage [18:25] natefinch: we control what goes in so we have a guarantee as to what comes out [18:26] This says you will accept anything that implements the interface: https://github.com/ericsnowcurrently/juju/blob/backups-list/state/backups/backups.go#L51 [18:27] ericsnow: either we accept anythign with the interface, in which case, the downcast is bad, or we don't, and we should only accept the concrete type we really expect to get passed to NewBackups [18:27] natefinch: hmm [18:28] natefinch: you make a good point [18:28] ericsnow: it's perfectly ok to take a concrete type for NewBackups.... it's not really a big deal [18:28] natefinch: an error would be better there than a panic [18:28] natefinch: it makes testing a pain [18:29] well, I can write a test that will make List() panic right now ;) [18:29] natefinch: right [18:29] natefinch: sorry, the seconds statement was not in relation to the first :) [18:30] natefinch: I agree that the code should be doing an "ok" check on the type assertion [18:31] natefinch: and passing a concrete type to NewBackups makes testing a pain [18:32] ericsnow: yeah, but there's a difference between making testing difficult and making your interface lie. [18:34] natefinch: at present the two are mutually exclusive so I picked the latter :) [18:35] I think the problem is that people are trying too hard to be generic with interfaces, when they should be generic with plain old structures (or POS as they say in the business ;) [18:36] natefinch: you're missing a closing paren there, friend. [18:37] (friday humor) ;) [18:37] I usually count the paren in the smiley face as the close paren (since I so often end asides with smilies :) [18:38] blasphemy! [18:38] parens must bring balance to the universe [18:38] i often wonder if only programmers notice those kinds of things [18:39] They said that about Anakin Skywalker, forgetting that, at that point, all the Jedi were currently good guys. [18:39] or maybe grammar nazis [18:39] katco: to have balance you dont need another parens just to begin with (; [18:39] * katco is a trekkie [18:39] perrito666: lol [18:40] also ;)) looks like a guy with double chin [18:41] no, it's a big grin! [18:41] yeah, the problem is that my smilies are generally supposed to be inside the context of the parens, and doing (foo :) ) just looks weird [18:41] I just have the compiler automatically insert the extra parens where needed [18:41] natefinch: when inside parens I just :p just in case [18:42] syntactically, commas and em-dashes are acceptable for asides. they have the same meaning as parens, it's just a matter of how much of a pause you want to cause the reader [18:43] ericsnow: I am still thinking about your code, btw [18:43] natefinch: k [18:43] natefinch: thanks! [18:43] katco: I am pretty sure grammatical rules dont include smileys [18:43] at least in spanish [18:43] katco: I like parens because it's immediately clear that where there's an open paren, there's going to be a close paren - whereas with a dash, it might just be a single dash. [18:43] perrito666: true, true [18:44] natefinch: but as i lex your sentence, i parse :) as a single token, so i'm still waiting for the closing paren! [18:47] was that too nerdy even for this crowd? :p [18:47] katco: nah, just trying to get some work done too. I Was going to make some joke about keeping parsers flexible enough for real-world inputs [18:48] hrm. aren't parsers generally very pedantic? [18:49] browsers aren't *shrug* [18:50] many think to their detriment... quirks mode promotes horrible practice [18:50] oh I know [18:52] katco: your tokenizer could be a bit more fault proof [18:53] an actuall lexer for english would have parsed that correctly and dropped the ; since there is no construction that includes ;) and ending in a ; is most likely an error [18:53] * perrito666 worked in NLP before juju [18:53] oooh fun stuff! [18:54] one of the 1st go programs i wrote was a NLP using markovian chains [18:54] katco: I used heavy stuff made by linguists, awful c++ [18:54] perrito666: i will have to buy you a beer sometime [18:54] and slow as a snail in reverse [18:59] ericsnow: who calls newapi? [18:59] perrito666: look in the init func [19:00] oh I understand [19:03] fatal: remote eric already exists [19:06] natefinch: I am under the impression that you just made an attempt at a joke [19:06] nah, I just thought it was a funny error message [19:07] wait... you actually got that message? [19:07] haha yeah, in response to [19:07] git remote add eric https://github.com/ericsnowcurrently/juju [19:07] natefinch, perrito666: I thought I was the only one :) [19:07] so then I had to do [19:07] git fetch eric [19:07] which worked [19:07] natefinch: this is just weird :) [19:08] lol..... fridays... or maybe I'm just easily amused [19:08] so the real rpoblem is that filestorage.Metadata is an interface for no good reason [19:09] most of its functionality is just getters [19:09] except for Doc, which just returns an empty interface anyway [19:09] natefinch: right, but not all === fabrice|out is now known as fabrice [19:11] .... and I can;t even begin to imagine what is being done with that empty interface, certainly nothing good [19:12] natefinch: FWIW, one of the patches I have up addresses that somewhat [19:13] yeah, I was looking at that... it still has the Doc() interface{} method though [19:13] Maybe that's a mistake there? [19:14] public structs are not evil. They're actually very handy. They make testing SUPER easy. Why? Because you can just make one, and just populate it with whatever fake data you want, and you don't need to make a fake implementation or anything. [19:16] Your filestorage cleanup adds like 6 new interfaces [19:17] maybe not, some of them were just moved [19:17] anyway [19:18] natefinch: if you mean interfaces.go, only 2 are new (Doc and DocStorage) [19:18] yeah, sorry, I realized looking back that most of them were already there [19:20] how many implementations of these interfaces do we expect to actually write? [19:20] natefinch: I've written at least 3 with another on the way [19:21] natefinch: most are for testing [19:24] ericsnow: let me spend some more time with it... but I think the fact that in the end, we always cast back to a single implementation is pretty telling that we don't really need/want the genericism [19:26] natefinch: sounds good. thanks for having a look. [19:26] natefinch: keep in mind that my use of interfaces is mostly driven by testing (and for the concise summary it gives you for a type) [19:33] I was happy because I am getting new floor in my house entry way until I realized I am trapped inside my house :| [19:33] dang [19:33] haha [19:36] ericsnow: I am heartened that there are fewer methods using interface{} in your filestorage cleanup proposal [19:36] natefinch: yeah, it bugged me too [19:38] I wish git unstash was a command.... I find it terribly unsymmetric that the opposite of git stash is git stash apply [19:39] natefinch: well, that's the opposite of "git stash save", for which git stash is a short cut (I use git stash pop rather than apply) [19:39] natefinch: the full command is git stash save [19:39] ericsnow: jinx [19:39] jcw4: :) [19:40] yeahbut, then why isn't git unstash a shortcut for pop/apply? [19:40] natefinch: you can make it so [19:40] git alias [19:41] jcw4: I was just about to say that! [19:41] haha [19:41] I don't like aliases and plugins etc, because then when I get on some other machine without those aliases, I'm lost [19:41] natefinch: allow me to improve your life [19:41] or I tell someone to just do "git unstash" and they're like "whaaa?" [19:41] natefinch: ah I was going to suggest an alias lol [19:41] natefinch: I'm tempted to ask you if you code with notepad [19:41] natefinch: where do you spend most of your time? [19:41] ;) === lazyPower is now known as lazyPower|Spinni [19:42] this happened with bazaar, where people would have to explain three different ways of doing things based on what plugins someone had installed [19:42] natefinch: I dont go to a remote machine without scping .vim and .gitconfig [19:42] perrito666: +1 [19:43] i have an entire config directory under scs that i just pull down [19:43] heh [19:43] well, today I learned that I have been doing git stash apply and should be doing pop [19:43] natefinch: unless you want to keep your stash after applying it [19:44] jcw4: well, yes, but I almost never do. It's almost always "oops, I'm on the wrong branch, let me stash this for a second while I go fix that" [19:44] natefinch, perrito666: or keep it on a flash drive, on a web site, or in a repo [19:44] natefinch: yeah me too [19:44] natefinch: there are no two people that use git in the same way [19:45] perrito666: that's a problem, because then you can't talk to anyone else about it [19:45] ericsnow: I gues I should I picked the scp habit when I was working as a sysadmin [19:45] * natefinch is tempted to make a git stache alias [19:45] ericsnow: where the machines did not always had internet [19:45] lol [19:45] natefinch: the first rule of git is you dont talk about it [19:46] may people use git as svn [19:46] many* [19:46] perrito666: the second rule of git is: "just copy this long list of commands and it'll fix your branch" [19:46] natefinch: that is true for most things [19:46] also true [19:47] "just copy this to your bashrc" [19:47] i heard that git was never really meant to be used w/o an interface [19:47] i use magit, so most operations are just a series of keystrokes [19:47] save stash for me is "z z" [19:47] stash apply is "a" on the line in a list of stashes [19:48] katco: zz is clearly undo [19:48] perrito666: haha [19:48] katco: you may be gratified to hear that my productivity has dropped to almost nothing while I try to force my vim muscle memory to conform to emacs [19:48] z z is much more obvious than stash save [19:48] katco: give the author of git, it might have been designed to piss people off mostly [19:48] jcw4: happent to me, didnt last a week [19:49] natefinch: ztash zave [19:49] jcw4: haha... noooo i'm never happy to hear that. remember i don't think everyone should use emacs just b/c i enjoy it. [19:49] perrito666: lol [19:49] it is spelled as if told by the bad guy from get smart [19:49] katco: I started with xemacs 15 years ago, and decided to switch since I worked mostly in telnet sessions [19:49] well in magit, s is reserved for staging [19:49] lower-case for the file you're on. upper for all [19:50] * perrito666 ponders if going to 14.10 so he has time to fix his computer during the weekend [19:52] jcw4: that's a long time to use emacs and then switch. what convinced you? [19:53] katco: heh...no I mean I used it for a few months 15 years ago, and since then been hardcore Vim [19:53] perhaps he switched to the linux os [19:54] jcw4: ahhhh [19:54] gnu/linux, sorry [19:54] bodie_: i will ignore your attempt at humor, sir! ;) [19:54] bodie_: I was doing solaris / hp-ux / irix / all the fun unices that used to be prevalent [19:55] bodie_: linux was the snotty kid that no adult wanted to play with [19:55] jcw4: oh cmon 15 years ago linux was already being used by many people [19:56] I maintained a set of redhat+oracle servers [19:56] Not for financial industry hard core C++ class library use [19:56] jcw4: financial industry is stil deciding if they go from cobol to something newer [19:57] (not that I knew anything about the financial industry... they just happened to be the primary users of the Rogue Wave C++ Class Libraries) [19:57] perrito666: true dat [19:57] perrito666: we were using c#/java and a little groovy [19:57] and excel spreadhseets. (shudder) [19:57] katco: no Access DB? [19:57] oh yes. there was that too. [19:57] :) [19:58] i need to go wash my hands. i'm feeling dirty for some reason. [19:58] hahaha [19:58] lol [19:59] I reacall porting a set of msaccess functions to oracle pl just so the devs of a very bad erp system could migrate their system to it [19:59] eeew [19:59] actually I was hired to migrate the thing from access to oracle but their code was hardcoded to such level that I just changed the connection and rewrote access in oracle :p [19:59] perrito666: our users knew a bit of sql [20:00] these guys templated the sql queries all over the code [20:00] perrito666: so they'd regularly send us these 3-5k line sql and ask why it was slow [20:00] so the same query would be repeated over and over [20:00] katco: perrito666 make the bad memories stop [20:00] i know right [20:00] they did this in vb and had things like query on type so each keystroke would call the same query [20:01] omg! [20:01] that poor database [20:01] and perrito666 ups the level [20:01] yeah nk! jees! [20:01] and the deployment was done by having everyone using the same binary compiled from a samba share [20:01] * jcw4 /leaves to save his sanity [20:02] or wait... is that /part ? [20:02] so the devs would work on a shared samba with the code and compile to replace that one file :p [20:02] jcw4: had enough? [20:02] perrito666: I'm squirming [20:02] my users would dictate database architecture [20:03] they wouldn't let us do roles. select any table had to be turned on [20:03] I actually quit the day that I had to explain tcp/ip to the head engineer to explain to him why the system would not work from different vlans [20:03] oyyy [20:04] when you ask the head engineer the rhetorical question "you know how basic tcp/ip works" to begin explaining vlans and you get No for an answer [20:05] something snaps inside of you [20:06] and perrito666 was never the same since [20:07] I only returned once to that company when they asked me to consult because the db seemed to have lost all data, someone had been making space on the hds because they where trying to avoid buying more (this was a hardware selling company) and the guy doing that deleted huge files with extension .log... gues what is oracle extension for the db dataa files [20:07] perrito666: dum-da-duumm [20:07] wow, the extension for oracle data files is .log? [20:07] natefinch: was in oracle.. 8 or around [20:07] * natefinch has been lucky enough to never have to deal with oracle [20:08] but they are in a pretty obvious path [20:08] oracle is actually pretty nice [20:08] i believe it's the most performant [20:08] jcw4: also the backup was not working because no one wanted to pay a watchdog and so it had been off since I left [20:09] .log makes sense if you know the architecture of oracle [20:09] katco: it is, I believe you cannot beat it in terms of db clustering [20:09] perrito666: you're trying to make me cry aren't you? [20:11] jcw4: heh I was a kid back then, I was like 19 [20:12] also the salary was like U$300 /month iir the exchange rate correctly [20:13] so it was a cheap place internationally speaking [20:13] perrito666: that seems really cheap [20:13] jcw4: well that made up for my rent and food [20:13] everything was as cheap [20:14] and I lived in a pretty cool place [20:14] perrito666: where was that? [20:14] jcw4: cordoba argentina ~2003 [20:14] I actually had to dig up the exchange rate http://es.wikipedia.org/wiki/Anexo:Cotizaci%C3%B3n_hist%C3%B3rica_de_monedas_de_la_Argentina [20:15] perrito666: I'd love to visit Argentina some time [20:16] jcw4: its nice 2 people have a good life level with 1.5k/month so you can come as a cheap vacation [20:17] nice === jheroux is now known as jheroux_away [20:38] natefinch: any folks around who can assist with juju-core on ppc64el === sebas538_ is now known as sebas5384 [20:44] arosales: uh.... [20:44] :-) [20:44] arosales: I think the number of people that know anything about ppc64el is approximately 2 [20:44] (on our team) [20:45] that would be dave and ian right? [20:45] mbruzek: is working with some community folks on an upcoming demo at IBM Entprise 2014 and may need some support [20:45] And I'm just assuming someone other than Dave knows something about it [20:45] natefinch: did you review that backups list patch? [20:45] questions maybe just confirming behaviour, like juju selecting the correct tools on deploy from an x86 box to a MAAS ppc64el environment [20:46] mbruzek: were you able to get a deploy working ? [20:46] arosales: no === fuzzy_ is now known as Ponyo [20:46] mbruzek: resource issues, core, or environment? [20:46] arosales: we can not bootstrap maas yet. [20:46] arosales: we can answer general questions like that.... especially where the answer is - yes it should do the right thing and if not, it's a bug. [20:47] natefinch: understood and thanks :-) [20:47] mbruzek: so your still trying to get juju to recognize maas API keys and creds? [20:47] hi guys, im trying to bootstrap juju to ibm ppc environment using 1.20.8 version into a kvm instance via maas [20:47] mbruzek: remember you may need to set up sshuttle with your vpn [20:47] when it starts to bootstrap, it says pulling arbitrary tools for amd 64 though, and ultimately the bootstrap fails [20:48] unfortunately I have to bail to go make dinner for the family [20:48] akash_: can you bootstrap with --debug [20:48] can someone walk through whats required to bootstrap to ppc via maas [20:48] and pastebin [20:48] sure yes [20:48] ericsnow: not exactly... working on it. Monday morning I think. [20:48] natefinch: no worries [20:48] natefinch: any other core devs around for the next hour or so? [20:49] arosales: friday 10 minutes before 5 is not the best time to find people online :) [20:49] natefinch: agreed, I honestly would like to be cracking up beers at this time too [20:49] arosales: ericsnow and perrito666 are both here for now... katco too. They're all pretty new, but I'm sure will help as much as possible [20:49] but as demos would have it . . . [20:50] natefinch: ericsnow, perrito666, katco thanks [20:50] natefinch: the error we are seeing is: WARNING juju.provider.maas environ.go:434 picked arbitrary tools &{1.20.8-trusty-amd64 https://streams.canonical.com/juju/tools/releases/juju-1.20.8-trusty-amd64.tgz 6abe3d33dc22601509e88febb11511aed9f9616e2598d7844fca0d16499ad9ca 8109965} [20:50] note sure if its core related but may want to confirm. [20:50] natefinch: the problem is that is a ppc64le system. [20:50] akash_ and I were wondering why that would come up with amd64 tools [20:51] mbruzek: juju core does have logic to select ppc64el [20:51] yes it does [20:51] mbruzek: can we see how you are bootstrapping [20:51] and those tools exist: https://streams.canonical.com/juju/tools/releases/ [20:51] I don't know... my wife is gonna kill me if I don't go now. Good luck. [20:51] natefinch: have a good weekend [20:51] thanks for the replies here [20:52] destroying environment and starting over from get go [20:52] well see if we can work with er, perrito666 or katco [20:52] akash_: cool thanks [20:52] we will capture all of it here in a sec [20:52] akash_: on next bootstrap [20:52] arosales: I am checking at the code [20:52] please append --debug [20:54] perrito666: looking at "juju help constraints" it says that arch that are recognized are only amd64, i386, and arm. [20:54] perrito666: I would expect to see ppc at least in there if not ppc64el [20:54] arosales: we discovered recently that our help might be outdated [20:55] ah ok [20:55] perrito666: so where do Juju do the selection of which arch to use for tools? Is at the client, provider, neither, or both? [20:55] arosales: I am also checking at the warning [20:55] is there a more extensive log? [20:56] perrito666: mbruzek and akash are getting that now. [20:56] they are rebootstrapping with --debug and are going to post the output [20:56] is there's anything i can do, please let me know. i haven't worked in that area yet. [20:56] arosales: for what I see, TheMue WARNING posted correspond, should at least, to a different kind of error [20:56] perrito666: here is the arcitecture of the system. http://pastebin.ubuntu.com/8435653/ [20:56] (it is still attempting to bootstrap) [20:56] so some things appear to be working out right but we have no idea if these things are working and will paste logs : [20:57] * is the architecture right? [20:57] *one the vm is powered up, and we ssh, are the simplestreams, and other sites accessible and can populate the vm [20:57] the issue is we are NOT on the hypervisor so we cant remmina in [20:57] we are in another vm, and the bootstrapped vm's themselves are seperate vms also [20:58] hope that gives insight into what we are dealing with [20:59] seems to me that juju is expecting ppc64el [20:59] point on second * items : my assumption is that the juju uses ssh on the maas node to finish its process of installing necessary components as i remember [20:59] ok [21:00] perrito666: arosales, Here is the bootstrap log [21:00] http://paste.ubuntu.com/8435677/ [21:01] eries="trusty", arch=, version= [21:01] pass ppc64el as the arch on the constraitns [21:01] constraints [21:02] sorry that word always gives me trouble [21:03] juju bootstrap --constraints arch=ppc64el ? [21:03] put around the constraints "" [21:04] juju bootstrap --constraints "arch=ppc64el" [21:06] mbruzek: works? [21:06] looking [21:07] wondering if the ssh key is borked between maas and juju as well [21:07] We bootstrapped again and it is still running, thinking it can not authenticate to the maas node [21:08] mbruzek: that is odd [21:13] what happens if you attempt to run that ssh command manually? [21:14] ssh -o "StrictHostKeyChecking no" -o "PasswordAuthentication no" -o "ServerAliveInterval 30" -i /home/iicroot/.juju/ssh/juju_id_rsa -i /home/iicroot/.ssh/id_rsa ubuntu@S822L04-vm1.IBMCloud.vm /bin/bash [21:14] ssh: Could not resolve hostname s822l04-vm1.ibmcloud.vm: Name or service not known [21:19] perrito666: katco: http://paste.ubuntu.com/8435783/ [21:19] katco, so we are able to see the node in maas "allocate to admin" , however, during bootstrap, it appears ssh fails? [21:19] I called the bootstrap this way: uju bootstrap --constraints "arch=ppc64el" --debug 2>&1 | tee bootstrap.txt [21:19] in other words we cant ping the hostname above from the vm, but can ping via ip [21:20] interesting... and again i apologize, i'm pretty new and this isn't an area i've poked around in before [21:20] this line kind of sticks out: 2014-09-26 21:12:17 DEBUG juju.environs.bootstrap bootstrap.go:47 network management by juju enabled: false [21:21] since there appears to be a networking issue; trying to determine if picking the tools is an anticedent problem [21:23] katco: we can ping 172.26.48.102 [21:23] ssh -o "StrictHostKeyChecking no" -o "PasswordAuthentication [21:23] no" -o "ServerAliveInterval 30" -i /home/iicroot/.juju/ssh/juju_id_rsa -i /home/iicr [21:23] oot/.ssh/id_rsa ubuntu@172.26.48.102 /bin/bash [21:23] ssh: connect to host 172.26.48.102 port 22: Connection refused [21:24] mmm, I wonder if the node is in good shape [21:25] we can see the note start up in MAAS gui [21:25] we can ping it, but not ssh to it. [21:26] have you shared you environments.yaml? [21:30] specifically, have you specified anything related to enable-os-updates? [21:30] not that I am aware of. [21:30] https://pastebin.canonical.com/117754/ [21:30] katco: that is our env.yaml [21:31] thanks [21:37] katco, is there a time out constraint that i can pass in environments.yaml or at command line (ive forgetten what that exactly is) [21:38] akash_: looks like there is bootstrap-timeout, bootstrap-retry-delay, and bootstrap-addresses-delay [21:38] all in seconds [21:40] right now kind of wondering if sshd didn't get installed for some reason. it looks like it picked the correct tools in your second attempt. [21:41] ack [21:41] i don't suppose you have console access to that machine through maas? [21:41] yes [21:41] can you eliminate that assumption and lmk if sshd is there? [21:43] katco: We are using a different tool and can see that MAAS is installing Ubuntu. [21:44] so sshd is not installed on the bootstrap node at this time. [21:44] but it is installing... [21:46] ah, so you're thinking maybe the bootstrap just timed out? [21:46] That is our current theory... but we have cycled through a few now. [21:49] maas can take a while to bootstrap [21:49] mbruzek: have you used any of the bootstrap-timeout options ? [21:50] perhaps the power hardware isn't being as responsive as we would like. [21:50] arosales: no, we are using a tool called kimchi to see the VM console [21:51] We can see that the OS is STILL installing [21:51] mbruzek: sorry I meant on the juju bootstrap [21:51] arosales: no but we will do tht next, talking with Brian F. in another room [21:52] mbruzek: if the OS is still installing, that kind of precludes juju from doing anything. is the issue that juju won't pick up after the OS installation is completed? [21:52] mbruzek: ack [21:52] kateco [21:54] ? [21:55] Sorry we are talking with a new person, explaining what is going on. [21:55] ah no worries [21:55] katco: I agree with you it is taking a long time. [21:56] what i don't know is if juju will retry infinitely. if so, we should just see what happens when the install is complete. [22:02] katco: We can watch the system boot and bootstrap seems to give up well before the install completes. [22:03] I can give some extremely long timeouts while we think about something else. [22:03] good idea, the unit is seconds [22:04] mbruzek: suggest to give a long timeout on bootstrap, append --debug, if that fails lets sync up with the maas folks first thing Monday [22:04] mbruzek: specifically i would make the bootstrap-retry-delay very long [22:05] juju bootstrap --bootstrap-retry-delay=10000 [22:05] ? [22:05] How are the called from the command line. [22:05] i always use the environs.yaml [22:05] OK we can add that [22:05] What keys [22:06] bootstrap-timeout, bootstrap-retry-delay, and bootstrap-addresses-delay [22:06] i would suggest making bootstrap-retry-delay very long since this we're wanting to wait a long time for maas to come up [22:07] katco: perrito666: the help is much appreciated [22:07] bootstrap-timeout: 6000 (is it just an int, or 1000s )? [22:08] mbruzek: it's just an int [22:09] arosales: np, wish i knew a bit more [22:10] bootstrap-timeout: 7200 [22:10] bootstrap-retry-delay: 60 [22:10] Are those too long? [22:10] katco: you know a lot about about juju core internals :-) [22:10] arosales: lol not _that_ much. it's only been 3 months! [22:10] it is a big go code base [22:11] mbruzek: i would make bootstrap-rety-delay 6000 as you mentioned [22:11] mbruzek: otherwise you'll wait in the wrong spot. [22:11] +1 just make it ridiculously long to rule that out [22:12] although if it takes ridiculously long for it to install something else might be wrong [22:12] katco: arosales, the retry DELAY should not be over 1 hour should it? [22:13] I have the bootstrap-timeout 3 hours (in seconds) but the delay between retries I would want every minute right? [22:13] mbruzek: that is the delay i would think you'd want higher. b/c the other delays are just going to fail outright i think. [22:13] i could be misunderstanding the situation, but that's my take on it. [22:14] Can I just set the retry delay to 100? I think we want it to retry for 3 hours [22:14] in other words, let it fail fast for the reasons it is, but give it a long time before it tries again b/c the machine is probably coming up [22:15] i think the net effect might be reasonably close, so w/e you're comfortable with [22:17] I am bootstrapping again with these values set, I want it to retry every so often, and have the bootstrap-timeout of 3 hours. [22:20] ok well good luck! i need to EOD and take care of dinner :) [22:21] * arosales would go with katco's suggestion [22:21] katco: thanks! [23:04] any powerpc knowledge around? === Ursinha is now known as Ursinha-afk [23:09] hazmat: sorry most powerpc knowledge is in australia [23:10] np thanks [23:11] akash_, are you going to be online this weekend? [23:11] I can send some of those guys mail and see if they are around to help out [23:11] alexisb, tomorrow for sure for a few hours === lazyPower|Spinni is now known as lazyPower [23:11] i havent taken a vacation so out of pocket starting 7pm to monday :) [23:12] alexisb, thanks...that would be very helpful [23:12] ok, will do === Ursinha-afk is now known as Ursinha