[00:01] <hazmat> thumper, what's the state of mess atm?
[00:01] <thumper> hazmat: it's a mess
[00:01] <hazmat> thumper, when i try to use the create api, i get panic and restarts.
[00:01] <thumper> hazmat: working hard to get a demo...
[00:01] <hazmat> complaining about juju home
[00:01] <hazmat> thumper, cool, carry on :-) just curious
[00:01] <thumper> huh... interesting
[00:22] <menn0> gotta love tests that pass for the wrong reason
[00:36] <wallyworld_> menn0: quick upgrades question. i understood that fromVersion would be set to 1.16 if unknown. hence for new installs, all steps should run. I just added a new 1.23 step, and when I bootstrap from master (1.23-alpha1), no upgrade steps run. am I missing something?
[00:37] <menn0> wallyworld_: hmmm... I think that behaviour changed recently
[00:37] <menn0> wallyworld_: because it was causing problems
[00:37] <wallyworld_> :-(
[00:37] <menn0> wallyworld_: why would you want to run upgrade steps on bootstrap?
[00:38] <wallyworld_> sec
[00:39] <menn0> wallyworld_: let me check ... I might be getting confused with something else I changed recently
[00:40] <wallyworld_> menn0: well, i am adding new things for the 1.23 release. the release will eventually be installed on top of 1.22. but of course, for development, the version is set to 1.23-alpha1
[00:40] <wallyworld_> i need to be able to run a fresh 1.23 install and have things done
[00:40] <wallyworld_> the things that are needed are not there in 1.22 nor a fresh install
[00:40] <wallyworld_> the old behaviour would have been perfect
[00:41] <wallyworld_> and the code comments still imply the old behavbiour woeks
[00:41]  * menn0 is looking
[00:50] <menn0> wallyworld_: I'm pretty sure that i've dealt with at least 2 bug reports from users because we were running upgrade steps straight after bootstrap
[00:50] <thumper> wallyworld_: having from version set to old when bootstrapping was causing problems for landscape
[00:50] <thumper> wallyworld_: and we shouldn't ever need to run upgrade steps on bootstrap
[00:50] <menn0> wallyworld_: it's unnecessary and confusing and breaks scripting, meaning that you can't rely on the env being usable after "juju bootstrap" returns
[00:50] <wallyworld_> hmmm
[00:51] <wallyworld_> well that's a change in semantic that caught me by surprise
[00:51] <menn0> wallyworld_: to test what you're testing couldn't you bootstrap and then "upgrade-juju --upload-tools"?
[00:51] <wallyworld_> what about new installs that need to do things
[00:51] <menn0> wallyworld_: that will use a new version number and trigger the upgrades
[00:51] <menn0> wallyworld_: what kind of things?
[00:51] <wallyworld_> sure, but that doesn't account for new installs
[00:52] <wallyworld_> adding default storage pools
[00:52] <wallyworld_> that needs to be done for upgrades and new installs
[00:52] <menn0> can't that be done when state is opened?
[00:52] <menn0> as per mongodb indexes?
[00:53] <wallyworld_> it's not really the same - i wouldn't want to add bespoke application functionality to opening a db connection
[00:53] <wallyworld_> mongo indexes are a db artefact so they belong in state opening
[00:54] <wallyworld_> i don't get why we didn't just make bootstrap wait
[00:54] <wallyworld_> let it complete what it needed to do, and then return
[00:54] <wallyworld_> no scripts broken
[00:55] <wallyworld_> now, we can't add functionality required to initialise a given version of juju
[00:55] <menn0> but running all upgrade steps at bootstrap is completely unnecessary. a bootstrapped env is by definition up to date.
[00:55] <wallyworld_> the steps are idempotent and will just skip
[00:55] <menn0> they don't "skip"
[00:56] <wallyworld_> skip = check if already done and return early
[00:56] <menn0> the will still do things (query collections etc)
[00:56] <menn0> they just have no net effect, apart from taking up time
[00:56] <wallyworld_> regardless, how do we now add things that need to be done for the current version
[00:56] <wallyworld_> a small time
[00:56] <wallyworld_> compared with the overall bootstrap time
[00:56] <menn0> sure
[00:57] <wallyworld_> what we've now lost is the ability to in one place define steps to be run to upgrade or initialise a new version
[00:58] <wallyworld_> all for the cost of a minimal extra 2% of bootstrap time
[00:58] <menn0> and also avoiding problems for users
[00:58] <wallyworld_> but if bootstrap waits, there are no problems
[00:59] <wallyworld_> instead, the development complexity has been increaed
[00:59] <menn0> well if you want to change bootstrap...
[00:59] <wallyworld_> as i now have to add code in multiple places
[00:59] <wallyworld_> i wish the change were mode widely socialised before being implemented
[01:00] <wallyworld_> so tese issues could have been raised
[01:00]  * thumper calls timeout
[01:00] <wallyworld_> i'll have to add a work around for now
[01:01] <wallyworld_> doesn't thumper like a good robust dicussion?
[01:01] <thumper> wallyworld_: sure, in a week when we have time
[01:01] <wallyworld_> would be voring if we always agreed
[01:01] <thumper> right now we are super busy
[01:01] <wallyworld_> fair point. as am i trying to get stuff done which is now much more difficult, hence the grumpyness
[01:02] <menn0> sorry that this has made it harder for you
[01:03] <wallyworld_> no need to apologise, i was just a little surprised at the change and hence frustrated
[01:03] <menn0> i didn't realise that upgrades steps were intended for more than upgrades, and we had problem reports from users relating to the old behaviour
[01:03] <thumper> wallyworld_: what are you actually wanting to do?
[01:03] <wallyworld_> add default storage pools
[01:03] <thumper> menn0: the thing is: they shouldn't be
[01:03] <wallyworld_> these need to be done when coming from older versions, as well as bootstrapping 1.23
[01:03] <thumper> wallyworld_: which is what?
[01:04] <wallyworld_> just adding records to a collection
[01:04] <wallyworld_> so we want some out of the box data
[01:04] <thumper> surely this isn't a large amount of work
[01:04] <wallyworld_> well, i now have to do it in two places
[01:04] <thumper> just one func called from an upgrade step and the bootstrap process
[01:04] <thumper> but then it isn't surprising
[01:04] <wallyworld_> sure, but it's now messy, i'd rather fix the upgrades
[01:04] <thumper> having bootstrap config happen in an upgrade step is surprising
[01:04] <thumper> upgrades aren't broken
[01:04] <thumper> your thinking is
[01:05] <wallyworld_> have to agree to disagree. the semantic has been in place for many versions
[01:05] <thumper> but the semantics were wrong
[01:05] <wallyworld_> we can discuss next week
[01:05] <thumper> and have been fixed
[01:05] <thumper> relying on broken semantics is broken design
[01:05] <thumper> well, you can
[01:06] <wallyworld_> what was wrong ws that bootstrap didn't wait
[01:06]  * thumper won't be there
[01:06] <thumper> no, I continue to say that bootstrap config in an upgrade step is broken design
[01:06] <menn0> wallyworld_ and I are sharing a room so we will have plenty of time for debate :)
[01:06] <thumper> sorry, but that is just bollocks
[01:06] <perrito666> menn0: learn to sleep with one eye open
[01:07] <wallyworld_> this is a good argument for down at the pub with beer
[01:07] <thumper> agreed
[01:07] <menn0> (or wine in your case?)
[01:07] <wallyworld_> yes :-)
[01:07] <wallyworld_> red
[01:08] <menn0> wallyworld_: so working towards an immediate solution for you...
[01:08] <menn0> wallyworld_: adding some rows to a collection sounds like state functionality
[01:08] <wallyworld_> yeah, will hack something in
[01:08] <menn0> wallyworld_: so why could those rows be added if required when state is opened?
[01:08] <menn0> coudn't
[01:08] <wallyworld_> opening state is akin to opening a db connection
[01:09] <wallyworld_> it's down a layer or two from the application layer
[01:10] <menn0> i kinda see what you're saying but state is also full of business logic. it's not just "the database".
[01:10] <wallyworld_> what was nice about upgrade was that it would be done once - the upgradedFrom would be empty, then the steps would run, and then it wouldn't happen again
[01:11] <wallyworld_> now i have to encode extra checks in say state server start up tp ensure it's only done once
[01:11] <wallyworld_> our state package is bollocks
[01:11] <menn0> wallyworld_: ok well lets see if we can work something out next week
[01:11] <wallyworld_> sure
[01:12] <wallyworld_> i can reply on upgrades to handle coming from < 1.23, but have to add some bespoke stuff to handle new installs
[01:14] <wallyworld_> but it's bad because if i add it to bootstrap, how do i know if upgrade did it or now
[01:14] <wallyworld_> not
[01:14] <wallyworld_> so potentially need to check fromVersion and all that, just like upgrade does, so it gets messy fast
[01:25] <thumper> menn0: I've hacked together a branch that does what we talked about yesterday
[01:25] <thumper> menn0: I'm going to try to use it locally before I submit for review
[01:26]  * thumper has a sinking feeling
[01:26] <thumper> oh yeah... everything is still erroring with notimplemented
[01:26]  * thumper enfixorates the providers we care about right now
[01:26] <thumper> (four of them)
[01:26] <thumper> dummy, local, ec2, maas
[01:26] <thumper> dummy for tests
[01:26] <thumper> local for testing
[01:26] <thumper> ec2 for demo
[01:26] <thumper> maas for mark
[01:30] <thumper> menn0: did your branch land?
[01:53] <menn0> thumper: sorry was having lunch
[01:53] <thumper> menn0: np
[01:53] <thumper> it isn't holding me up
[01:53] <menn0> thumper: branch not landed yet. my changes exposed brokenness in the machine agent tests which i'm fixing.
[01:53] <thumper> ok
[01:53] <menn0> this one has been a hard slog
[01:55] <thumper> ok
[02:14] <perrito666> wallyworld: I just packed half your gift, still need to fix the facade to do the proper calls but I pushed the general idea for you to look
[02:14]  * perrito666 sleep time
[02:14] <perrito666> cheers all
[02:16] <wallyworld> ty, will do
[02:16] <wallyworld> hope the roof holds out
[02:29]  * thumper crosses fingers
[02:33] <thumper> stabby stabby
[02:33] <thumper> fark!!!!
[02:33] <thumper> (╯°□°）╯︵ ┻━┻
[02:40]  * thumper looks upwards emploringly
[02:40] <thumper> WHY?
[02:40] <thumper> why can't json serialization have integers?
[02:46] <wwitzel3> thumper: pong
[02:46] <menn0> thumper: b/c Javascript doesn't have integers...
[02:46]  * menn0 ducks
[02:46] <thumper> wwitzel3: got time for a quick 5 min hangout?
[02:46] <wwitzel3> yep
[02:47] <menn0> wallyworld: ping
[02:50] <wallyworld> menn0: hi
[02:51] <menn0> wallyworld: do you know anything about MachineSuite.TestManageEnvironDoesNotRunFirewallerWhenModeIsNone?
[02:51] <menn0> wallyworld: the logs indicate you might have had something to do with it
[02:56] <wallyworld> axw: remind me, were we considering supporting zones with deploy
[02:57] <axw> wallyworld: last time I spoke to fwereadeabout it, he wanted that to be on add-machine only, and use machine placement in deploy/add-unit
 wallyworld: last time I spoke to fwereadeabout it, he wanted that to be on add-machine only, and use machine placement in deploy/add-unit
[03:00] <wallyworld> axw: np, i'll need to add a new check analogous to isZoneConstrained() to handle VolumeTypeNotAvailableInZone
[03:00] <wallyworld> menn0: sorry, connection bouncing, not sure if you saw my pong
[03:00]  * thumper headdesks
[03:00] <menn0> wallyworld: I replied but it must have been while your connection was down
[03:01] <wallyworld> i hate this kernel bug
[03:01] <menn0> I was asking if you knew about  MachineSuite.TestManageEnvironDoesNotRunFirewallerWhenModeIsNone. you seem to have had something to do with it according to the logs.
[03:01] <menn0> wallyworld: ^^^
[03:01] <wallyworld> hmmm, mayb, i didn't write it, may have modified it
[03:01] <wallyworld> let me look
[03:02] <menn0> wallyworld: it appears to be broken and passing for the wrong reason
[03:02] <menn0> wallyworld: it's testing that the firewaller doesn't start when firewall-mode is "none"
[03:02] <menn0> wallyworld: but never actually sets the firewall mode
[03:02] <menn0> wallyworld: the mode defaults to "instance"
[03:02] <menn0> wallyworld: I think the test only passes because it waits for ShortWait time which is rather short
[03:03] <wallyworld> menn0: dimiter wrote it, i just tweaked the worker running
[03:03] <menn0> wallyworld: it's just that the firewaller isn't getting a chance to start
[03:03] <wallyworld> i don't know offhand much about it without looking at the code in more detail
[03:03] <menn0> wallyworld: that's cool
[03:03] <menn0> wallyworld: any ideas on how I can set the firewall-mode for the agent in the test?
[03:04] <menn0> this is what i'm doing:
[03:04] <menn0> 	m, agentConfig, _ := s.primeAgent(c, version.Current, state.JobManageEnviron)
[03:04] <menn0> 	agentConfig.SetValue("firewall-mode", config.FwNone)
[03:04] <menn0> 	c.Assert(agentConfig.Write(), jc.ErrorIsNil)
[03:04] <menn0> 	a := s.newAgent(c, m)
[03:04] <menn0> but the agent still ends up with "instance" as the mode instead of "none"
[03:05] <menn0> if you don't know off hand don't go digging. I know you're busy.
[03:05] <menn0> thumper: do you know? ^^^
[03:05] <thumper> menn0: pretty sure we hard code that in the dummy provider
[03:08] <menn0> thumper: it looks like it default to "instance" in the dummy provider but there are dummy provider tests which change it
[03:09] <thumper> hmm..
[03:09] <thumper> menn0: isn't the firewall-mode in the environ config not the agent config
[03:09] <thumper> ?
[03:11] <menn0> thumper: maybe that's what i'm doing wrong :)
[03:39]  * thumper takes a deep breath
[03:41] <wallyworld> axw: when you have a moment https://github.com/wallyworld/juju/pull/10
[03:43] <axw> wallyworld: LGTM
[03:43] <wallyworld> axw: question - when the attached hook runs, the storage id is passed in via env var right? i couldn't see it
[03:43] <wallyworld> ty
[03:43] <axw> wallyworld: no, no env var set atm
[03:44] <wallyworld> ah, ok, cause i was going to try using the storage-get hook tool
[03:44] <axw> wallyworld: it's set in the context
[03:44] <wallyworld> the bash script doesn't get to see that though right?
[03:44] <axw> wallyworld: you may want to wait for my changes, I'm just doing a test and I can probably propose something shortly
[03:44] <wallyworld> sure, np
[03:44] <wallyworld> but works so far
[03:44] <wallyworld> the storage show is also light on details
[03:45] <axw> wallyworld: when my change goes in, storage-get will default to the hook storage instance
[03:45] <wallyworld> so we'll need to wire that up
[03:45] <wallyworld> ah, yes, that's right
[03:45] <wallyworld> remember now
[03:45] <axw> wallyworld: whee, I just deployed postgresql with storage :)
[03:46] <wallyworld> \o/
[03:46] <wallyworld> axw: i agree the hack to work around the change in upgrade semantics is yucky
[03:46] <wallyworld> but works for now
[03:47] <wallyworld> axw: is that using a raw block device or mounting a fs?
[03:47] <axw> wallyworld: the latter
[03:47] <wallyworld> even better
[03:47] <axw> wallyworld: diskformatter will now mount the fs after formatting, if it's not already done, and then record the mount point in state
[03:47] <wallyworld> oarsum
[03:47] <axw> then the unit agent sees the change and can get the location with storage-get
[03:48] <wallyworld> whoot
[03:48] <axw> wallyworld: I have zero tests, do you want me to propose it anyway?
[03:48] <wallyworld> yes :-)
[03:48] <wallyworld> tested live is good enough :-)
[03:49] <axw> wallyworld: I'll just confirm that postgres is actually working :)  it has created the db dir in the mount
[03:49] <wallyworld> axw: after landing, might be an ides to sync up to plan the next bit of work
[03:49] <wallyworld> ok :-)
[03:49] <wallyworld> now that we have both landed stuff today
[03:49] <axw> wallyworld: yep, sure
[03:49] <wallyworld> or soon will
[03:50]  * wallyworld needs a little food
[04:04] <axw> wallyworld: https://github.com/wallyworld/juju/pull/11  -- I'm going to get something to eat too. bbs
[04:04] <wallyworld> sure
[04:24] <axw> wallyworld: I need to fix a bunch of tests in that branch
[04:24] <wallyworld> ok, i wouldn't worry about new ones, just make current ones pass
[05:03] <thumper> menn0: if you are bored with your changes, there is this: http://reviews.vapour.ws/r/811/
[05:03] <thumper> waigani, mattyw: or one of you on call reviewers could have a look
[05:04] <mattyw> thumper, will do
[05:04] <mattyw> thumper, give me 10 minutes or so and I'll take a look
[05:04] <thumper> mattyw: no pressure, I'm pretty much done for the day
[05:05] <waigani> I'm about to break but plan to come back later tonight, if it's still up I'll take a look then
[05:31] <axw> wallyworld: I'll just test once more, then my branch hsould be good to merge
[05:31] <wallyworld> \o/
[05:37] <axw> wallyworld: also, I've pushed my postgresql to lp:~axwalk, and it can be deployed from cs:~axwalk/trusty/postgresql
[05:38] <axw> wallyworld: this is what I had to change: http://bazaar.launchpad.net/~axwalk/charms/trusty/postgresql/trunk/revision/112
[05:39] <wallyworld> looking
[05:40] <wallyworld> jeez, not many chnges
[05:40] <wallyworld> which is good
[05:41] <axw> wallyworld: I think in reality we could make it much better, but atm the charm is (i.e. already was) hard coded to look in /srv/data
[05:41] <axw> but this is the minimal change needed to work
[05:41] <wallyworld> yep
[05:43] <wallyworld> axw: i have a meeting at 4, quick catch up now?
[05:43] <axw> wallyworld: yep, sure
[05:43] <axw> see you in 1:1
[06:00] <axw> wallyworld: my branch is good to merge
[06:00] <wallyworld> merge away
[06:01] <axw> wallyworld: you need to, please
[06:01] <wallyworld> oh doh
[06:01] <wallyworld> sorry
[06:01] <wallyworld> and done
[06:01] <axw> cheers
[06:14] <axw> anastasiamac: I'm going to fill out the details in "juju storage show" - you're not working on this, right?
[06:17] <anastasiamac> axw: no ;)
[06:19] <anastasiamac> axw: thnx :D
[06:20] <axw> anastasiamac: nps
[07:14] <jam> fwereade: are you around ?
[09:34] <fwereade> jam, sorry, not really, we're all sick here :/
[09:35] <jam> fwereade: sorry to hear that, I've been wondering why I haven't really seen you around.
[09:35] <fwereade> jam, that's just today
[09:36] <fwereade> jam, the last few days I've been trying to integrate the new uniter ops in a way that doesn't hurt more than it helps
[09:36] <jam> fwereade: I wanted to check in how Leader election stuff is going.
[09:37] <fwereade> jam, it's depressing at the moment, because I keep hitting roadblocks that I have to fix before I can progress
[09:48] <perrito666> morning
[09:52] <dimitern> perrito666, o/
[09:55] <axw> wallyworld, anastasiamac: FYI, I've added "storage list" and modified "storage show" -- https://github.com/wallyworld/juju/pull/12
[10:46] <jam>  mgz: poke
[10:46] <jam> or maybe even dimitern
[10:48] <dimitern> jam, yep, what's up?
[10:49] <jam> dimitern: you saw the mailing list question about Rackspace, right?
[10:49] <dimitern> jam, i did
[10:49] <jam> I haven't personaly investigated their API, but I thought that is what we worked out
[10:49] <jam> that Juju doesn't work there
[10:49] <jam> I just wanted to check with other people to confirm it
[10:49] <dimitern> jam, haven't read it thoroughly though
[10:50] <dimitern> jam, well IIRC rackspace api does not support security groups the way juju uses them
[10:51] <dimitern> it supports an older api, not the os-security-groups extension
[10:53] <jam> dimitern: sure. I thought there were other limitations, as certainly security groups can be reasonably worked around
[10:57] <dimitern> jam, well, looking in one of my earlier networking specs - part 1, last time I checked "Rackspace supports older/custom compute extensions (os-networksv2 and os-virtual-interfacesv2)"
[10:58] <dimitern> jam, however now it seems it does support newer apis - but I need to investigate what and how
[10:58] <jam> dimitern: k. I'd like to make sure I'm not talking garbage since there is interest there
[10:59] <dimitern> jam, how critical is this to investigate now?
[11:01] <natefinch> jam: https://plus.google.com/hangouts/_/canonical.com/moonstone?authuser=1
[11:03] <jam> natefinch: it thinks its trying to connect
[11:14] <voidspace> jam: ping
[11:14] <voidspace> jam: are you able to add jamestunnicliffe (and dimitern ) to the canonical ec2 account?
[11:21] <jam> natefinch: I'm back
[11:21] <jam> voidspace: /wave
[11:21] <natefinch> jam: I'm in moonstone
[11:21] <jam> natefinch: I can
[11:21] <jam> jamestunnicliffe: are you around now?
[11:21] <jamestunnicliffe> yes
[11:21] <jamestunnicliffe> jam: yes
[11:22] <jam> jamestunnicliffe: do you have a preferred username ?
[11:22] <jamestunnicliffe> jam: dooferlad
[11:36] <voidspace> jam: thanks
[11:36] <jam> voidspace: happy to. I should really coach someone else on how to do it. Reduce the bus factor.
[11:36] <jam> dimitern: you up for it the next time it needs to be done?
[11:36] <voidspace> jam: sounds good
[11:37] <jam> voidspace: I'm pretty sure wallworld and dimitern also have the root credentials, but they may not realize it.
[11:37] <voidspace> jam: dimitern doesn't even use the canonical aws account, he uses his own
[11:37] <voidspace> jam: so I'm pretty sure he doesn't realize it...
[11:39] <dimitern> jam, sorry - up for what?
[11:41] <dimitern> jam, i probably have access to the canonical aws account, but I have to find where the info is and I haven't tried to add users to it
[11:41] <dimitern> jam, that's not a priority for now though - we can sort it out later
[11:44] <anastasiamac> axw: pool list  :D - https://github.com/wallyworld/juju/pull/13
[11:44] <wallyworld> anastasiamac: ty, will look after i finish current review
[11:45] <jam> dimitern: right. not a worry this week, but I want to make sure other people know how to do it. Probably we can just go over it quickly in some downtime next week.
[11:46] <dimitern> jam, great, I'd appreciate that
[11:56] <mgz> it's hailing... ugh
[11:57] <jamespage> mgz, yes very hard
[11:58] <jamespage> mgz, we must be in the same storm I think
[11:58] <mgz> I wonder who's getting it first :)
[11:58] <jamespage> mgz, not quite so hard now
[11:58] <jamespage> so maybe I got it first
[11:59] <jamespage> mgz, question - I think I see a behavioral change in 1.21
[11:59] <mgz> from 1.20?
[11:59] <mgz> or from a previous 1.21 dev release?
[11:59] <jamespage> mgz, specifically I have a test process that bootstraps and adds a number of machines and then configures them prior to deploying services
[11:59] <jamespage> 1.20 -> 1.21
[11:59] <mgz> k
[11:59] <jamespage> 1.20 would happily use said provisioned machines upon deployment
[11:59] <jamespage> not so with 1.21 - it creates new machines
[12:01] <mgz> how we use provisiond but not deployed-onto machines has been fiddled with, I don't recall at what point exactly...
[12:01] <jamespage> mgz, just trying to understand whether I was using a undesigned feature ot nor
[12:01] <mgz> there's almost certainly a way to do what you want still
[12:01] <jam> hey mgz, did you do some of the rackspace investigation in the past? There's a thread on juju-dev about using Juju with Rackspace and I want to make sure I'm not regurgitating falsehoods
[12:03] <mgz> jam: I'll have a look at the thread - the old issue was their old (pre-use-of-trunk-openstack) setup didn't have things like security groups
[12:03] <mgz> I'd think everyone *should* have been switched to a more vanilla setup by now
[12:03] <jam> jamespage: speaking of which, it'd be really good to get wider knowledge of why people want to preallocate, because there has been some team pushback as to "why would you want to do that". that I want to make sure we understand the use cases well.
[12:08] <axw> wallyworld: can you please merge my PR?
[12:09] <wallyworld> axw: sure
[12:09] <mgz> jamespage: when you get to deploying the services, you're just to using --to right?
[12:09] <mgz> *not using
[12:09] <jamespage> mgz, not using --to
[12:10] <wallyworld> axw: i think i have an acceptable hack for loop devices for local provider; if it tests ok that is
[12:10] <mgz> which used to pick a created-but-un-united machine, but does no longer
[12:10] <axw> wallyworld: cool
[12:10] <axw> wallyworld: looking forward to not having to bootstrap ec2 constantly...
[12:10] <jamespage> jam: right now I use pre-allocation to setup and environment with machines attached to six different networks so i can test out the multi-network support in the openstack charms
[12:10] <jamespage> jam: I fully anticipate that juju will replace this requirement at some point
[12:11] <wallyworld> axw: agreed, i'm not sure how long i'll be as i have some other stuff to review, plus a few chores to finish tonight. hopefully soon
[12:11] <jam> jamespage: so why do that via "add-machine" rather than during "deploy" time? Easier for you to reason about ? Some flag that we support on add-machine that we don't in deploy ?
[12:11] <axw> wallyworld: nps, I'll keep an eye out
[12:11] <jamespage> jam: no - I want to have the base OS fully configured before deploying the charms
[12:12] <jam> jamespage: as in you add-machine, then go fiddle with it, then deploy onto them?
[12:12] <jamespage> jam: yes
[12:12] <jamespage> jam: when we implemented the multi-network support we specifically don't try to configure anuy network devices in the charms
[12:13] <jamespage> jam: that is not the resposibility of the charm
[12:13] <jamespage> jam: so I'm using this approach to fill the gap until juju does this for us
[12:14] <jamespage> jam: when "--networks" is actually fully implemented :-~)
[13:00] <axw> wallyworld: ping?
[13:00] <wallyworld> yo
[13:00] <axw> wallyworld: can you please take a quick look at https://github.com/juju/names/pull/38?
[13:00] <wallyworld> sure
[13:00] <axw> I forgot to get that landed first...
[13:01] <wallyworld> ah yeah i should have mentioned it
[13:02] <wallyworld> LGTM
[13:03] <axw> cheers
[13:28] <anastasiamac> axw: wallyworld: and again... https://github.com/wallyworld/juju/pull/14
[13:29] <axw> looking
[13:51] <wallyworld> axw: i have something working except for one bit; ping me when you're free
[13:52] <axw> wallyworld: sure, just reviewing anastasiamac's branch atm
[13:52] <wallyworld> yep, np
[14:08] <axw> wallyworld: done
[14:09] <wallyworld> axw: so, the remaining part is to write the block devices back to machine in state after the loop devices are created
[14:09] <wallyworld> https://github.com/wallyworld/juju/compare/wallyworld:storage-feature...provision-loop-devices
[14:09] <wallyworld> the existing apis don't seem suitable
[14:09] <axw> looking
[14:10] <wallyworld> all works nicely though
[14:10] <axw> wallyworld: I think provider type should just be part of VolumeParams
[14:11] <wallyworld> yeah, didn't i do that?
[14:11] <wallyworld> i did
[14:11] <axw> wallyworld: you've got it next to it in ProvisioningInfo
[14:12] <wallyworld> bah, old code,
[14:12] <axw> possibly before you made the change to VolumeParams
[14:12] <axw> :)
[14:14] <alexisb> axw, wallyworld what time is it for you guys??
[14:15] <wallyworld> 00:15 for me :-)
[14:15] <axw> alexisb: early, only 22:15 here
[14:16] <alexisb> crazy
[14:17] <wallyworld> alexisb: storage is a beast
[14:17] <alexisb> yes but I have to say it is very exciting to see the work land :)
[14:18]  * perrito666 knows wallyworld had other adjectives in mind
[14:18] <axw> wallyworld: I think you should just create a new "provisioner" API method that calls state.setProvisionedBlockDeviceInfo
[14:18] <axw> wallyworld: it's all in the wrong place, but that's the least amount of work
[14:18] <wallyworld> axw: yeah, that was what i was afraid would be needed, thanks for verifying
[14:19] <wallyworld> works great apart from that last bit
[14:19] <wallyworld> axw: i may look to merge what i have so katco can use it
[14:20] <axw> cool
[14:28] <natefinch> ericsnow: can you change the sharing settings on your plugin provider doc to "can comment"?  Possibly even "can edit" if you trust us not to muck it up
[14:31] <natefinch> wwitzel3: mind if we move our 1:1?  I need to go snowblow 30" of snow off my driveway
[14:32] <perrito666> natefinch: how many snow related activities do you have :p
[14:32] <wallyworld> axw: should be good to go https://github.com/wallyworld/juju/pull/15
[14:33] <natefinch> perrito666: I don't often rake the roof, but I always have to snowblow (if there's more than a couple inches of snow).
[14:33] <axw> wallyworld: looking
[14:33] <wwitzel3> natefinch: only 30"? ;)
[14:34] <natefinch> wwitzel3: it's a guess based on the 28" we had yesterday noontime.... I'll definitely remeasure and get an accurate total.  It was a record breaking storm for much of Massachusetts.
[14:35] <anastasiamac> axw: wallyworld: m eod.. would it b awesome to see PR#14 land :D
[14:35] <wwitzel3> natefinch: yeah, had some friends posting pictures of some 60-70" drifts
[14:35] <axw> anastasiamac: good night
[14:35] <natefinch> wwitzel3: nice
[14:36] <anastasiamac> axw: or morning :D thnx :D talk tomorrow
[14:36] <wallyworld> anastasiamac: are the isues addressed?
[14:36] <wwitzel3> natefinch: overall, looks like the area took the storm well (so far), no a lot of power issues that I've heard of
[14:36] <anastasiamac> wallyworld: issues? no issues :D
[14:36] <anastasiamac> wallyworld: suggetsions
[14:36] <anastasiamac> wallyworld: suggestions even and yes addressed
[14:37] <wallyworld> anastasiamac: merged
[14:37] <anastasiamac> wallyworld: \o/
[14:37] <anastasiamac> axw: wallyworld: will make a map formatted output tomorrow :D
[14:38] <wallyworld> great
[14:45] <axw> wallyworld: you're not going to do the change to update state?
[14:45] <axw> I guess that can come later
[14:45] <wallyworld> axw: followup branch
[14:46] <wallyworld> axw: just fixing a test since the deletion of Pool Q= "" broke something
[14:46] <axw> wallyworld: okey dokey
[14:47] <wallyworld> i know it's a hack, just using what api was already easily available
[14:47] <axw> evilnickveitch: that PR actually made me lol :)
[14:47] <axw> wallyworld: yup, just making sure anyone else reading knows that too
[14:48] <wallyworld> fair enough
[14:48] <evilnickveitch> axw me too :)
[14:49] <dimitern> voidspace, http://pad.lv/1403225
[14:54] <wallyworld> axw: oh yeah, dependencies.tsv needs updating, we can do that tomorrow
[14:55] <axw> wallyworld: for?
[14:55] <wallyworld> names
[14:55] <axw> wallyworld: anastasiamac already did it in her branch
[14:55] <wallyworld> the new storage stuff
[14:55] <wallyworld> ah, ok, didn't notice, ta
[14:57] <wallyworld> katco: if you pull the latest rev of the feature branch, you can fire up a local provider and deploy a minimal charm that declares block storage and it will call the loop device source. it will currently panic since it's not done but if you plug your work in stuff should happen
[14:59] <ericsnow> natefinch: done and done :)
[15:00] <axw> wallyworld: I'm off, cya tomorrow.
[15:03] <ericsnow> fwereade: mentoring?
[15:21] <katco> wallyworld: thanks; any suggestions for what charm to deploy?
[16:03] <perrito666> natefinch: standup?
[16:32] <dimitern> a trivial review anyone? http://reviews.vapour.ws/r/815/
[17:36] <natefinch> ,...well that took a lot longer than expected
[17:37] <natefinch> I don't think I've ever snow blowed for 3 hours before.
[17:38] <perrito666> natefinch: well wwitzel3 passed me a video of what snow blowing is and it really looks fun
[17:39] <wwitzel3> :)
[17:39] <wwitzel3> it is fun, but at the 3 hour mark, it isn't fun anymore
[17:39] <natefinch> haha... yeah, it looks like fun, but really you're wrestling a 200 pound engine on wheels in the bitter cold
[17:40] <perrito666> wrestling? these things dont have assisted direction?
[17:41] <natefinch> nope... the wheels go straight... some models (like mine) you can disengage one of the wheels, which helps it turn left in a little circle... but when you're just going straight, one side or the other will slip or catch, and you have to man handle it to keep it going straight
[17:41] <perrito666> anyway I am no parameter, I love playing in the snow
[17:43] <perrito666> wow, that takes a lot of the fun out
[17:43] <natefinch> haha
[17:43] <perrito666> I mean looks like an extremely fun little racing car
[17:43] <natefinch> yeah, it looks very majestic in videos with the snow flying... but it's actually a lot more work than it seems at first
[17:43] <perrito666> natefinch: well the video wwitzel3 passed me uses pumpkins instead of snow
[17:44] <natefinch> If you are lucky to have one you can attach to a tractor or something, then I'm sure it's a lot easier... mine's a walk-behind type (since they're a lot cheaper than buying a tractor ;)
[17:44] <perrito666> wowowoow you walked that thing?
[17:45] <perrito666> you lost a perfectly fun chance of real life mario kart
[17:46] <natefinch> perrito666: mine basically looks like this: http://www.snowblowersdirect.com/product-images/921029_11240_600.jpg
[17:46] <perrito666> ok, not all that fun
[17:47] <natefinch> haha yeah
[17:47] <natefinch> brb
[17:50] <voidspace> dimitern: https://github.com/voidspace/juju/compare/dimitern:wip-ec2-addressable-containers...wip-preparecontainerinterfaceinfo
[19:00] <perrito666> abentley: sorry for my unhelpful answer
[19:28] <jw4> OCR PTAL : http://reviews.vapour.ws/r/817/  (Actions API :: Expose Enqueued, Started, and Completed times)
[19:32] <sinzui> natefinch, do you have a minute to review https://github.com/juju/juju/pull/1496
[19:32] <sinzui> or http://reviews.vapour.ws/r/818/
[19:36] <natefinch> sinzui: done
[19:36] <sinzui> thank you natefinch
[19:52] <sinzui> natefinch, perrito666 I am setting up unit test runs for windows. Will all github.com/juju/juju be testable, or should I just test a sub package?
[19:53] <perrito666> sinzui: by now all tests that dont run on windows should have been skipped
[19:53] <sinzui> oh, well I have bad news then
[19:53] <perrito666> bogdanteleaga: care to weight on that?
[19:55] <sinzui> hi bogdanteleaga I am running "go test github.com/juju/juju/..." should I be using different args to test juju on windows?
[20:00] <bogdanteleaga> sinzui, there are a couple of packages that are not ready yet
[20:00] <bogdanteleaga> sinzui, I still have 2 PR's that need to be merged and then there's a lot of refactoring in worker
[20:00] <bogdanteleaga> sinzui, still working on that
[20:00] <sinzui> bogdanteleaga, okay. So we do expect "github.com/juju/juju/.." to one day pass
[20:01] <bogdanteleaga> sinzui, definitely
[20:01] <bogdanteleaga> sinzui, hopefully sometime next week
[20:01] <sinzui> okay, the test will be just gathering results for a few weeks before we make it voting
[21:03] <menn0> thumper: manual tests for my branch are looking good
[21:03] <menn0> thumper: reviewing yours now
[21:03] <thumper> menn0: cool, just looking at your code now
[21:04] <menn0> thumper: dear god... that's a whole lot of changes
[21:04] <thumper> menn0: oh c'mon, it isn't that big
[21:04] <menn0> a lot of files anyway
[21:04] <thumper> but yes... could have renamed Prepare to PrepareForBootstrap differently
[21:04] <thumper> but it wouldn't have made as much sense out of context
[21:05]  * menn0 agrees
[21:07] <menn0> thumper: gotta love those floating point port numbers
[21:07] <menn0> thumper: SMTP is on port 25.0 right?
[21:07] <thumper> menn0: yeah, that sucks
[21:08] <thumper> :)
[21:17] <menn0> thumper: i haven't found anything beyond wwitzel3's comments
[21:35] <menn0> thumper: thanks for the review. all good comments.
[21:44] <thumper> wwitzel3: O
[21:44] <thumper> wwitzel3: I've addressed your comments
[21:44] <wwitzel3> thumper: thanks
[23:42]  * thumper heads to the gym