[02:12] smoser: http://developer.rackspace.com/blog/using-cloud-init-with-rackspace-cloud.html woot [02:39] oh man, if that is woot I should really blog about what we are doing with cloud-init :) [02:41] jrwren: you're also providing a cloud that gives me free hosting? [02:42] no [02:42] no woot then :P [02:42] rackspace gives you free hosting? [02:42] yea, bookie at least [02:43] whoa, very good of them. [02:43] but it's so painful to use I've not taken advantage of it [02:43] why do they do that? [02:43] OSS program, good pub, get devs using it [02:43] cool. [02:43] a lot of python stuff is running on rackspace donated cloud stuff [02:43] boto works with rackspace. [02:43] so where is the pain? [02:43] With jessee noller taking over their stuff [02:43] the whole 'getting a root password' etc [02:43] I can't juju it :( [02:44] you should blame juju. [02:44] and it only recently (Feb here) got cloud-init [02:44] i don't believe that. [02:44] heh, I'll have to see if twitter will let me pull up my posts with their cloud guy [02:44] they run openstack, but without cloud init [02:44] user-data has been in openstack for a long time. [02:44] they do?!!? wtf?!??! [02:44] yep, they didn't have that enabled [02:44] verified and complained about over a year ago [02:45] that's why this url is 'woot!' [02:45] FINALLY! [02:45] :) [02:46] jrwren: https://twitter.com/search?q=rackspace%20cloud-init&src=typd [02:46] https://twitter.com/jessenoller/status/375458091547914241 [02:47] anyway, all cool now. Will have to find time to take another stab at getting something decent going [02:54] so endeth the trick [02:54] that is nuts. [02:54] cloud servers are useless without user-data [02:54] USELESS> [02:55] in fact, I'd go as far as to say its not a real cloud :p [02:56] hello [02:57] so wait... the cloudimg didn't have cloud-init installed or user-data didn't work or both? [03:02] n0p, ping? [03:03] jrwren: didn't have cloud-init installed [03:03] at least [03:03] idk what else they changed [03:08] in python, is there a way to define interfaces/abstract classes? or am i supposed to just create a class with the functions i want and make them just raise exceptions then subclass it and override them? [03:10] in other words is this "pythonic" http://hastebin.com/sarijujegu.py? [03:16] mrgoodcat: it's done, not sure on pythonic [03:17] i'm looking into either abc or zobpe.interface right now [03:17] zope* [03:17] http://docs.python.org/2/library/abc.html [03:17] yea [03:17] most part I think it's duck typing all the way. try/except [03:17] vs getting to built up [03:18] jcastro: I think n0p just idles in here. [03:18] not sure if that sounded better in your head but i didn't quite get your grammar there [03:18] Haven't seen him say anything for a while now [03:18] lol, I'm beat sorry [03:18] nbd [03:18] we can talk tomorrow if you'd rather [03:18] basically why not just define the classes, when you call methods on instances wrap in try/except vs throwing exception from a base [03:19] i don't get properly in my zone until midnight [03:19] it's what testing is for, make sure it works like you're expecting [03:19] or use abc or zope [03:20] i guess i could try except [03:20] i'm used to the java way, where interface is definitely called for here [03:20] yea, and that's not really the python way [03:20] see the dunder magic methods [03:21] you don't declare you're an iterable, you just act like an iterable [03:21] this? http://www.rafekettler.com/magicmethods.html [03:23] mrgoodcat: yea [03:24] these are all ways of duck typing your way into being python built ins [03:24] at least this isn't my first experience with duck typing [03:25] i think i can handle this [03:26] the problem is i'm going to be having other people write modules that i'm loading, and they have to implement specific functions or it won't work. i was looking for a way to force them to write them properly [03:28] mrgoodcat: think of iterable in python. nothing prevents you from writing "for x in 5: print(x)" [03:28] it just throws an exception saying "hey jerkface, ints aren't iterable" [03:29] you could do something similar, throw an exception saying "not a valid module" or whatever is appropriate for your scenario [03:29] i was hoping for a compile time error [03:29] that won't error until it runs [03:29] i guess it wont matter if it never gets called [03:30] you're a ruby guy. isn't ruby the same way? you don't have compiler errors for this sort of thing, right? [03:30] i'm a ruby guy yes [03:30] i've never had this specific problem in ruby though [03:31] er rather i've never felt the need to solve it [03:32] i don't HAVE to properly handle bad modules. i could just let the program crash. if i was writing it for myself i might do that. but other people have to write these modules so i wanted a way to validate that it's correct [03:36] well it looks like that abc thing will give you some protection/validation [03:36] i haven't used it, though [03:44] i decided to let it go [03:44] if they make functions that don't work, the thread will just die [03:44] s/functions/modules [03:49] what about immutable data structures? i can't seem to find one in python [03:50] or a way to make them i should say [03:51] tuples [03:51] strings technically [03:51] are immutable [03:51] tuples are immutable? [03:51] didn't know that [03:52] TypeError: 'tuple' object does not support item assignment [03:53] ty [04:19] woot my mod notebook just shipped :) [12:21] rick_h_: Damn emails are pouring in this morning. Easily 100 proposals and comments on PSF stuff since I went to bed. Ug [12:24] brousch: lol yea [12:24] we had another bunch of proposals [12:24] we've over 20 [12:24] crazy [12:24] 24 I think total [12:24] I stopped looking, was working past 10pm last night so no bookie time [12:37] jrwren, you could [12:37] you should blog about that. [12:40] rick_h_, thanks for pointing me at that. [13:12] IMO interfaces and even abstract classes are not pythonic. They get in the way of duck typing. [13:13] good morning [13:19] morning [13:20] smoser: cool, yea it's interesting. Would be cool to add juju support to them but they've gone all salt it seems [13:21] man, jjesse totally missed my troll on G+ [13:22] I said "there are two great Michigan teams in the tourney" this year [13:23] jcastro: :P [13:23] get it? [13:23] 2 great teams! [13:23] MSU and Western! [13:24] we'll see [13:25] do you like how I didn't even acknowledge the existance of the wolverines? [13:25] jcastro: I like that everyone and their mother is picking MSU which I will take as a sign you're doomed [13:26] :) [13:26] yeah [13:26] even the President [13:26] doomed [13:26] but whatever, I've been saying that since the beginning of the season [13:26] it sucks that people are bandwagonning now [13:26] so I'll wait until you're out and we're still in, then you'll hear from me [13:26] yeah like last year, lol [13:27] well, look at OSU, already gone, lol [13:27] that's hilarious [13:27] nothing wrong with that [13:27] rick_h_, well, just because a cloud provider prefers technology-A there is no reason that its users cannot prefer technology-B [13:28] right? [13:28] smoser: oh definitely [13:28] its pretty much a known "best practice" to give MSU one game more than they "should" win. [13:30] an all-Michigan championship game would be incredible [13:30] well, other than Arizona killing everyone [13:31] i thought western was out and umich advanced. [13:31] yeah [13:31] I made the comment yesterday before everyone played though [13:32] oh! I missed it. [13:32] tried to have wings at the new BW3 last night, but forgot U-M was about to start playing [13:32] so there was like an hour long wait [13:32] indiana has zero teams in the NCAA tournament. [13:32] jcastro: Womens lacrosse played at the big house last night. You could have gone to that! [13:33] they've had 6 before. (purdue valporaiso evansville noter dame indiana butler indiana state ... none of them.) [13:33] well my day is off to a good start [13:33] booked a meeting, no one showed up, lol [13:33] heh, sitting in the same boat atm jcastro [13:35] hey. i just did this: http://smoser.brickies.net/git/?p=tildabin.git;a=blob;f=ssh-via; [13:35] if you ssh through "bounce hosts" a lot and don't like editing .ssh/config in order to do so, that might help [13:35] (canonical uses bounchosts extensively) [13:37] smoser: ha! cool. [13:38] now with improved usage (which i thought i pushed initially) [13:45] Good morning [13:50] great morning! [13:51] he told you, cmaloney [13:56] cmaloney: Your tiny font in email hurts my eyes [13:57] I wonder why it's so tiny [14:01] brousch: Because it was copy / pasted from the mailer daemon that won't let me use decafbad.net as a surrogate for my Google mail. [14:02] If someone would riddle me how to add an email address to my Google account that has the same rights and privileges as my gmail account for Google Groups please let me know. [14:03] Host it on google apps for your domain [14:03] jcastro: so I'm not allowed to answer http://askubuntu.com/questions/437361/laptop-friendly-alternatives-to-unity-window-placement-shortcuts?sgp=2 with "USE A TILING WM!" [14:04] ? [14:08] google sucks. stop using their stuff. [14:08] I think google's quality is now below that of microsoft. [14:08] jrwren: so you've got that windows phone? [14:09] and using skype for all your video calling needs? [14:09] :P [14:09] maybe next phone. i'm rocking at almost 4 yr old iphone [14:09] What's the Windows equivalent of Google Groups? Even the Google-hating Windows-loving groups here use Yahoo Groups [14:11] jrwren: Please point to Microsoft's free mailing list with newsgroups. [14:12] though I'm not particularly thrilled with Google Groups either [14:12] i'm looking. [14:12] but they don't make me want to throw up in my mouth like Yahoo Groups. [14:12] i thought they used to have something. [14:13] https://onedrive.live.com/?v=GroupView [14:13] Needs a one drive account [14:13] yeah. [14:13] which is the equivalent of telling me to go fuck myself. :) [14:13] no. [14:13] the account is what used to be a live account [14:14] still is called a live account I think [14:14] if you ever created an MSFT account in the past 10 yrs, try that. [14:14] Assumption: I've used a Microsoft online service in the past 20 years. [14:14] ok. [14:14] ;) [14:14] no different than the gmail assumption you have now. [14:15] jrwren: My complaint is I have my gmail forwarded home [14:15] so I read my mail via Thunderbird / Mutt [14:15] and whenever I respond to a mail it doesn't know me from Adam. [14:15] so it bounces. [14:16] You can join a Google group with a gmail address [14:16] And I'm not seeing an obvious way to add this [14:16] without [14:16] ^^ [14:16] really? [14:17] yes [14:17] They used to make it pretty obvious [14:17] and now I'm not seeing how to do this. [14:17] i don't know. my live login is jrwren@xmtp.net and has been for 10-15 yrs. [14:17] oh you are talking about google apps. [14:17] Yes. [14:17] google apps is broken. get used to i. [14:17] Nobody uses Microsoft outside of the desktop [14:17] except for my mom who refuses to get rid of her God damn hotmail account. [14:18] My sister still has an aol account [14:18] This does not surprise me. [14:22] that is like saying nobody uses yahoo. [14:22] why not this? http://www.freelists.org/ [14:24] I love google Groups [14:24] First I'm seeing this. [14:25] Use it through email, or like a forum. Good moderation tools [14:25] Which means it'll get cut in the next plussification. ;) [14:25] Bookie Communities FTW. [14:27] It is possible. I don't see how google is making money from it === dickweed_ is now known as mrgoodcat [15:07] wtf just happened to my server room? [15:08] every single server just rebooted [15:08] power flap? [15:08] mrgoodcat: Sorry about that [15:09] each server has its own ups and the room has a backup generator [15:09] its the one at work not home [15:09] which means my headache is just about to start [15:10] Maybe a power surge so big it overwhelmed all of the UPSes? [15:11] would have to be a big power surge... [15:12] get out the fire extinguisher [15:31] ssh backdoor decided to prank you with a distributed reboot [16:00] mrgoodcat, that zen you wouldn't happen to have an idea of how to limit traffic between subnets would you? [16:05] nvm I figured it out :) [16:05] Thanks again for that recommendation its working beautifully thus far [16:39] Havenstance: glad to hear it [16:39] turns out it wasn't as bad as i thought [16:39] we had 2 machines on one psu that went bad [16:39] the 2 machines just happened to be essential parts of what i was doing at the time [16:40] a PDU failure? those suck. [16:40] er not psu, ups [16:40] it just took a minute for the failover servers to take over [16:41] automated failover! fancy! [16:42] well not fancy enough obviously [16:59] lol [16:59] it apparently doesn't play nice with any encrypted drives at all though [17:04] heh [17:06] zenytal doesn't? [17:07] what's your encryption scheme? [17:09] Havenstance: it shoul [17:09] mrgoodcat, i had the home folder encrypted [17:09] did it with ubuntu install [17:10] when I installed Zentyal-Desktop the firefox was broken [17:10] Reinstalled with no encrypted reinstalled zentyal and it works like a charm [17:10] I honestly believe that its a mounting issue because it says that the profile is missing or something like that [17:11] if i chown the firefox dir in the home dir it launches and asks to create a profile [17:11] oh. we use encrypted lvm and it works fine [17:17] maybe its just having the home drive encrypted that gives it a problem then? [17:17] that or I need to chown the dir and create the profile and let it do what it does [17:18] not sure [17:19] either way im not going to sweat the load too much, I have it working so that's really all that matters [17:19] could have even been some corrupted packets in the first install [17:20] its working now so that's all the matters. if I could use true crypt to encrypt the eventual storage drives that will be in this machine then i'll be happy with it which im sure I can do. [17:31] so, in python you can take any object and just set any attribute even if it doesn't exist.(import os; os.sadf = 'hi'). is this intentional and/or useful for anything? [17:39] yes [17:39] yes [17:39] and yes [17:40] any trivial example? [17:40] This firewall is going to upset me lol [17:40] mrgoodcat: you just showed one. :) [17:42] i can't think of a situation where i'd need that [17:42] Havenstance: something wrong? [17:43] mrgoodcat: I think it's best summarised this way: [17:43] Just because you lack imagination doesn't mean it's wrong. :) [17:44] mrgoodcat, not sure how to get the traffic from subnet 1 2 and 3 to run through the server but not across with the exception of subnet 1 i want it to be able to talk to all 3 [17:44] The non-cagey answer is because it's part of how objects are implemented in Python [17:44] I know its a simple two click process im missing but its still a pain [17:44] and it would take more code to prevent you from doing it than turning a blind eye to it. [17:45] right now my addresses are number 10.0.1.x 10.0.2.x 10.0.3.x i want 1 to communicate with 2 and 3 but 2 and 3 to not communicate back to 1 [17:48] oh [17:48] we don't have anything that fancy [17:48] i'm sure it's probably possible [17:49] honestly if i could keep the subnets from communicating with each other that'd be fine too [17:49] because I only have one ip cam on that 2nd subnet which could be changed to the 1st without too much trouble [17:50] brb net swap to make sure this is still working and I haven't b0rked something [17:53] Havenstance2: you can do that with internal network rules [17:54] that's what im trying to figure out [17:54] I think everything routes through the firewall and that's what's allowing it [17:54] I don't mind having to change the IP cam [17:54] but I'm going to have 3 subnets and one of the 3 is for public use [17:55] I don't want them getting my samba shares === Havenstance2 is now known as Havenstance [17:55] which is configured within samba I know I can set ip rules there [17:56] but I don't want that second subnet with someones public laptop accessing files that may or may not be shared from other PCs within the 1st subnet [17:56] subnet 3 I don't much care about as its going to be largely unused its just there for expainsion's sake [17:59] Havenstance: iirc that would be in firwall rules -> packet fileter [17:59] filter* [18:00] yeah like I said I think i've got it now. [18:00] once I figured out what I was looking at [18:00] I created 3 network objects spanning the 3 subnets exception the server [18:01] Havenstance: if you're brave, run sudo iptables -L when you're done setting up all your rules [18:01] zentyal sets up like a million rules [18:01] not literally million but it's a lot [18:05] Its not that I don't know in theory what im doing [18:05] I just don't know how to do it in Linux :) [18:05] I guess is the way to put it :) [18:05] http://www.mlive.com/business/ann-arbor/index.ssf/2014/03/new_alcohol_delivery_service_d.html [18:05] i just listed all the rules on our networking server [18:05] YEAH! [18:06] i was liek NOPE [18:06] close bash prompt [18:06] jcastro: hah [18:08] lol nice [18:09] it may as well have output chinese [18:09] cat /bin/random is more understandable [18:16] Well I managed to get it working with OpenDNS [18:16] So I'm getting somewhere :) [18:16] good for you [18:17] having fun at work today. CREATE EXTENSION plpythonu; [18:20] :) [18:21] I think this is easier then I'm making it out to be [18:21] I created objects containing all 3 subnets in the network [18:21] used ip span to span them all [18:21] blocked all communication between ex traffic originating from sub2 bound for sub3 deny [18:21] idk how its going to work but it makes sense in my head lol [18:24] it works [18:24] I'll be damned [18:24] BAM [18:24] zentyal is the shit man, what did i tell ya [18:24] subnet 1 can ping 2 with no trouble [18:24] subnet 2 can't even ping subnet 1 [18:24] :D [18:24] ty man :) [18:25] np [18:25] glad to be of service [18:25] in case you ever need to do the same [18:25] the secret was in creating the network objects under Network > Objects [18:25] added one for all 3 subnets with the address range of each [18:25] yea we use network objects for subnetting [18:26] then bound the rules that 2 couldn't talk to 3 or 1 and 3 couldn't talk to 1 or 2 but one could talk to everything with all services [18:26] just like that about 10 clicks it works [18:26] just never needed any rules specifically denying access in one direction and allowing in the other [18:30] jrwren: I used that at morpace to prove we could do cool python based funcs and avoid writing C-based ones that took down the whole mysql server [18:30] jrwren: I still failed to get postgres going :( [18:31] rick_h_: :( [18:31] rick_h_: we are postgresql only here. no mysql :) [18:32] mariadb! [18:32] :P [18:34] its not the license why I dislike mysql so much. its the tech. [18:34] but new features! [18:34] what are the biggest differences you care about? [18:35] constraints. [18:36] does mysql even enforce foreign key constraints by default, eyt? [18:36] postgis [18:36] gin indexes [18:36] plpythonu [18:36] all things mysql cannot do AFAIK [18:36] range types, array types [18:36] which means I can have array of ranges. [18:36] hstore [18:36] json [18:36] again, no mysql equivalents. [18:37] postgresql is REALLY FREAKING GOOD [18:41] rick_h_: Ug, my brain is fried from these 6 gsoc submissions we got. I hope you don't explode [18:50] mrgoodcat, do you recall a packet capture in that zentyal interface? [18:51] found one [18:52] lol [18:52] just a matter of rearranging some google keywords :) [18:52] it has everything. you just have to find it [18:53] you're taxing my memory man [18:53] i haven't thought this much about our zentyal server since i set it up [18:53] that's alright, I think I'm good now [18:53] bout 30 seconds from being ready to deploy [18:54] obviously its not going in until monday though [18:54] now what happens if the hdd fails? [18:54] or the power as happened to me today [18:55] check out core -> system -> high availability [18:55] saved my ass today [18:57] brousch: http://www.youtube.com/watch?v=VwXKR9EWhXo [18:58] I think this is right up your alley. [18:58] thanks [19:18] mrgoodcat, i have no high availability under system here [19:19] hrm. what version of zentyal/ [19:19] 3.4 [19:19] could it be im on the community edition? [19:19] no that's not the problem [19:19] http://labs.zentyal.org/high-availability-in-zentyal/ [19:20] i found it [19:20] high avilability module under components [19:20] wasn't installed [19:20] Havenstance: i have to get on my plane now but if you need help on monday let me know [19:20] er tuesday [19:20] i'll still be gone monday [19:21] alrighty man, I think I'll be okay now :) [19:21] Thank you for all your help this far though [19:21] made this so much easier [19:21] enjoy your trip [19:21] no problem [19:21] i didn't really do anything anyways except suggest zentyal [19:22] peace [19:22] * mrgoodcat leaves [19:22] im thinking about doing the same here real soon lol === Havenstance is now known as Haven|Weekend