[00:43:52] * Coren tries to figure out a suitable bribe for Ryan_Lane. [00:43:59] to do what? [00:45:22] Well, to have you be my slave forever. Barring that, to create the "tools" project. :-P [00:45:35] I expect the former may be more expensive than I can afford. [00:45:36] heh [00:45:59] What's your labsconsole username? Coren, right? [00:46:04] Right. [00:46:22] BTW, did I just really see a gerrit change to put little hearts in nagios messages? :-) [00:46:40] yep :) [00:46:46] <3 nagios [00:46:58] or icinga, or whatever it is now [00:47:10] It'll always be nagios to me. :-) [00:47:19] it's being replaced with icinga [00:47:28] ah. I see what you mean :) [00:47:37] tools project is created [00:47:49] may take a little bit for the gluster volumes to be created [00:48:33] 謝謝 [00:49:10] どいたしまして [00:49:41] I *hope* google translate is wrong about your japanese. :-) [00:49:58] damn it [00:50:32] どういたしまして [00:51:03] long vowel ;) [00:52:59] Shouldn't that be どう致しまして? [00:53:25] I don't know kanji, for the most part [00:53:40] Ah. That's one of the few I learned as "mandatory". I know, like, 19 [00:54:23] Hell, I still have problems with hiragana. Written japanese fails to enter my brain, and it's harming my learning of spoken a great deal. [00:56:05] * Coren really wishes the rōmaji movement had caught on. I'd probably already speak passable Japanese if it had. [00:56:27] * Coren normally learns by reading a lot. [01:07:42] romanji sucks [01:08:29] !log tools Creation of the new project for preproduction deployment of the current (preleminary) plan [[mw:Wikimedia Labs/Tool Labs/Design]] [01:08:30] Logged the message, Master [01:10:21] My brain parses Japanese with success when it's written with rōmaji. That's strictly a selfish desire. :-) [01:10:39] :D [01:12:27] <^demon> I have a test user with a Japanese name on Gerrit. [01:12:33] <^demon> Made it to test utf8 when that was a problem. [01:12:42] <^demon> Google translate claims it says "Test User" but who knows. [01:28:22] [bz] (8RESOLVED - created by: 2silke.meyer, priority: 4Unprioritized - 6normal) [Bug 45350] IP address publicly visible when requesting shell access - https://bugzilla.wikimedia.org/show_bug.cgi?id=45350 [01:52:13] !log tools created sudo policies and security groups (skeletal) [01:52:15] Logged the message, Master [01:52:34] !log tools created instance tools-login (primary login/dev instance) [01:52:35] Logged the message, Master [09:11:55] [bz] (8NEW - created by: 2Matthew Flaschen, priority: 4Unprioritized - 6normal) [Bug 45414] Database error when searching - https://bugzilla.wikimedia.org/show_bug.cgi?id=45414 [10:08:13] !log wikidata-dev wikidata-dev-9: Deleted some log files because of disk space complaints in nagios. Adjusted some logrotate config files (those that are not managed by puppet) [10:08:14] Logged the message, Master [10:21:07] looking for someone here who is associated with blamemaps-m1xsmall.pmtpa.wmflabs [11:19:25] !log wikidata-dev Created machine puppety-pupp to test puppet refactoring/modules [11:19:28] Logged the message, Master [12:41:39] https://labsconsole.wikimedia.org/w/index.php?search=data&button=&title=Special%3ASearch [12:41:43] from within function "TitleKey::exactMatch". Database returned error "1146: Table 'labswiki.titlekey' doesn't exist (virt0.wikimedia.org)". [13:02:34] !log cvn Installing package "mono-complete" [13:02:36] Logged the message, Master [13:19:21] !ping [13:19:21] pong [14:46:51] petan: have you looked at the output of top on bnr1 recently? :P [14:47:01] no [14:47:17] hm [14:47:19] addshore [14:47:22] everywhere [14:47:26] :D [14:47:38] Cpu(s): 2.0%us, 2.5%sy, 0.0%ni, 91.6%id, [14:47:41] and I dont even dent the resources :p [14:47:43] 91 ID not so bad [14:47:49] cpu is sleeping... [14:47:50] I know xD [14:47:56] its amazing! [14:48:05] i have so many procs running! :D [14:48:26] only few people running bots on that box [14:48:28] like 3 [14:48:31] :D [14:48:34] good :) [14:48:43] lets keep it that way ;p [14:49:02] I would create bnr2 but not yet [14:49:21] there are not so many users yet :P [14:49:22] need to get people off of bots-4 and bots-nr1 and stick then on bnr [14:49:33] hm, yes that would be cool [14:49:46] I think we have too many testing instances [14:50:22] yep [14:50:29] we need that scheduling thing [14:50:45] not that it would be very usefull for my cases but other users might use it [14:50:58] I only use bnr1 and sql2 now :) [14:51:01] petan: Err, you might want to avoid putting in /too/ much work on bots- [14:51:03] all my bot will run completely same no matter of scheduling or not [14:51:16] Coren why? [14:51:19] petan: given that I'm currently setting up tools- :-) [14:51:35] ok, but we need to have some platform that is actually working NOW [14:51:46] http://www.mediawiki.org/wiki/Wikimedia_Labs/Tool_Labs/Design [14:52:14] also your tools might be ready in very long time... you don't even have the stable filesystem for your "multi-instance" environment [14:52:23] petan: I know, but that's why I'm saying just don't put too /much/ work in. :-) I'd hate for your efforts to be duplicated. :-) [14:53:24] petan: There are no plans to decomission bots- [14:54:06] petan: It's going to stick around as long as someone is using it. [14:54:25] mhm [16:04:04] !log wikidata-dev wikidata-dev-9: threw out solr 4.1, now using solr 3.6 (in /opt). Started from within example folder, copied xml schema from WikibaseSolr extension to Solr example folder [16:04:05] Logged the message, Master [16:10:23] !log wikidata-dev wikidata-dev-9: reimport of items shows in solr's console output, while reimport of properties fails at second property:ERROR: * Another property (0) already has label "" associated with language code * Another property (0) already has label "" associated with language code Aborted! [16:10:25] Logged the message, Master [16:34:35] Hm.. I'm looking for a simple-as-possible way to ensure a bot is always running on my vm. [16:35:22] I abstracted the starting of the bot to a no-arguments .sh file that does like "$ app script/file -parameters" for each bot [16:35:51] I'm thinking a cron entry that checks ps to see if the sh file is in there, and if not, start it [16:37:14] e.g. */5 * * * * projectusername ( ps aux | grep "some-bot-name.sh" | grep -v grep || ( /path/to/some-bot-name.sh 1>/var/log/project/some-bot-name.log 2>&1 & ) ) > /dev/null 2>&1 [16:37:21] any suggestions? [16:43:27] Krinkle, pidof would be easier than your multiple greps [16:43:34] or simply a pid stored in a file [16:44:04] I think there was a tool (phoenix) used in the toolserver for that some time ago [16:44:13] not to mention that if you use SGE it can be used for that [16:44:16] Platonides: storing a pid in a file doesn't do anything other than giving me a file and not doing anything if the bot dies. [16:44:32] Platonides: I assume you meant to imply a method that involves storing the pid ? [16:44:47] I mean instead of doing ps aux | grep | grep -v [16:44:57] neither phoenix nor sge are on labs, and I don't really like either of them. [16:46:00] test -d /proc/$(< mybot.pid)/cmdline || /path/to/some-bot-name.sh 1 ... [16:47:10] /proc doesn't exist on mac [16:47:25] or darwin rather [16:47:42] for it to be not testable locally is fine, but not ideal. [16:48:32] is there another way to ensure that pid exists that doesnt' involve the directory-api via /proc ? Seems a bit convoluted. [16:51:02] `ps -p $pid` should work [16:52:09] yep, though it always outputs the headers, the exit code is usable [16:52:22] combined with $(< mybot.pid) [16:52:34] it's possible that $(< is a bashism [16:53:00] so take that into account [16:59:54] Platonides: I'd probably use cat instead [16:59:58] Platonides: what do you mean by bashism? [17:00:07] ubuntu-bash specific? [17:00:20] cause I have bash in ubunto, solaris and mac/darwin [17:00:26] (or claims to be bash anyway) [17:12:49] Krinkle, bash specific [17:12:55] ie. use /bin/bash not, /bin/sh [17:12:59] right [18:05:46] Does our puppet have storeconfig enabled? [18:06:45] Coren: which one? :) [18:06:53] Coren: puppetmaster config is in puppet [18:07:10] paravoid: Ah! That's pleasantly recursive. :-) [18:11:05] Hm. The question is moot anyways, I just noticed many manifests do use exported resources. :-) [18:13:05] not many, just nagios [18:23:03] paravoid: Backups, dns, and nagios. ssh too, but apparently nobody collects the resources. :-) [18:23:22] At any rate, any number more than zero means storeconfig is enabled. :-) [18:24:17] note labs vs. production [18:24:27] and we collect ssh and nagios iirc [18:25:09] * Coren didn't have time to look at the entire pupper config yet. [18:25:51] puppet* [18:31:30] * Krinkle trouts Ryan_Lane, and thanks him for fixing the search :P [18:31:52] Do we still do trouting on Wikipedia? I haven't seen them fishes for ages. [18:32:39] heh [18:32:52] it's always a bad idea to make a change right before you leave for the night :) [18:33:49] Ryan_Lane: Do we have a documented SOP for testing new classes in puppet? [18:34:06] use labs and puppetmaster::self [18:34:40] Aha! Zat is what I was looking for. [18:34:44] Danke. [18:35:26] Coren: If you haven't already read this… https://labsconsole.wikimedia.org/wiki/Help:Self-hosted_puppetmaster [18:35:45] (I wrote that page and won't be hurt if you want to rewrite it :) ) [18:36:09] andrewbogott: I had just found it. :-) [18:39:08] !log tools Created tools-puppet-test for dev and testing of tools' puppet classes. [18:39:09] Logged the message, Master [18:49:17] Ryan_Lane: To avoid re-inventing the wheel, how should I deal with data and processes within a project. Right now I find myself chmod'ing everything I put in /data/project/cvn as 775 or 664 respectively. [18:49:24] and to execute, should I use 'nobody' ? [18:50:04] !log deployment-prep adding ram and demon to the project [18:50:04] Krinkle: depends on what you are doing.... [18:50:05] Logged the message, Master [18:50:08] At toolserver, there is a user group for each project. for example, I'm in user group 'tsusers', 'cvn' and 'krinkle' on toolserver. [18:50:16] oh. you mean for tool? [18:50:20] Coren: ^^ [18:50:24] Ryan_Lane: no [18:50:26] oh [18:50:37] Ryan_Lane: This is not a "tool" tool. CVN is a standalone project [18:50:44] * Ryan_Lane nods [18:51:02] nobody works, then [18:51:07] k [18:51:10] > Sorry, user krinkle is not allowed to execute '/bin/bash' as nobody on i-00000339.pmtpa.wmflabs. [18:51:24] change your sudo policy [18:51:28] ok :( [18:51:30] in labsconsole [18:51:30] ok :) [18:51:38] I thought I was sudo already [18:51:49] I created the vm [18:52:01] it's separate from instance creation [18:52:02] It's not a tool tool, it's a tool that isn't a tool tool? [18:52:09] the old default was no sudo in projects [18:52:37] Coren: Not everything at toolserver are simple tools. Part of migrating to labs is to better separate things that should have their own projects. [18:53:12] Krinkle: From my first impression, OSM and Render might be the ones; do you have others in mind? [18:53:29] OSM isn't coming up in Labs [18:53:40] Coren: we can talk later, busy now. [18:53:41] it's coming up in priduction [18:53:43] *production [18:53:53] Krinkle: kk [18:54:00] Ryan_Lane: root | ALL | ALL [18:54:05] https://labsconsole.wikimedia.org/w/index.php?title=Special:NovaSudoer&showmsg=setfilter [18:54:21] not sure what I should change there [18:54:26] Ryan_Lane: Makes sense. [18:54:35] I have sudo, just this command is failing [18:55:23] Krinkle: sudo su - -s /bin/bash nobody [18:55:33] Ryan_Lane: CVN has a domain name, wiki, several non-mediawiki web tools and APIs, some databases and a cluster of a dozen countervandalism bots. All tied together. [18:56:04] currently hosted across 3 different continents in different data centers, some of the simple parts are in toolserver due to lack of a more stable alternative. [18:56:08] we're not merging all of it in labs [18:56:10] now* [18:56:18] we're now migrating all of it to labs [18:56:40] Ryan_Lane: yep, that works [18:56:44] I did sudo -su nobody [18:56:55] ah [18:57:06] yeah, nobody doesn't have a shell [18:57:15] so you need to specify it [18:57:27] ok [18:57:38] makes sense, it doesn't have a home [19:08:31] Ryan_Lane: Hm.. when executing as nobody, it means it doesn't have access to the localsettings.json file which has chmod 660. [19:08:45] Ryan_Lane: Only people in the project can ssh into the vm and/or access the /data/project dir, right ? [19:08:57] yes [19:09:12] so it is safe to open up the chmod to 666 [19:09:28] since we handle access at the network level instead of file system. [19:09:31] alrighty [19:09:51] wel, 664 probably (no need to write) [19:19:17] Ryan_Lane: I don't suppose resizing instances works better now than it use to? [19:19:22] nope [19:20:14] :( [19:20:28] I could just fix ulimit I guess [19:20:41] stupid php eats all the ram when wikipedia gets busy [19:21:11] It's times like then when I want to re-write it to use a thread pool in python, then I open the code, cringe and go back to fixing java [19:24:53] Ryan_Lane: Could you review https://gerrit.wikimedia.org/r/#/c/50757/ ? [19:28:15] Krinkle: done [19:29:01] thx [19:29:01] Oh btw - whoever did notifications on labsconsole <3 [19:29:12] I actually logged in today and yay [19:29:42] Damianz: notifications? [19:29:46] you mean echo? [19:29:47] yeah [19:29:52] it has a red thing with a number [19:29:54] I click [19:29:54] yeah. thank Krenair for that [19:29:55] and [19:29:56] notifications [19:30:00] Damianz wut? [19:30:05] where huh [19:30:07] :o [19:30:20] Ryan_Lane: Also, we need a command line interface to labs console! [19:30:26] :D [19:30:26] +1 [19:30:34] we'll eventually open up the nova api [19:30:35] I hate clicking [19:30:46] my hand hurts of mouse [19:32:46] It would be awesome if I could say, if you see php nomnomnom, oom in the console log and the instance doesn't ping REBOOT..... that would fix like 60% of me having to log into labsconsole [19:33:48] * Damianz notes just clocked over 1k of unread email in main inbox.... oops [19:36:07] Ryan_Lane: hi! say, will you be at the platform/ops meeting tomorrow? [19:36:48] there's a few things I want to talk to you about, like search and tool labs... [19:37:10] DanielK_WMDE: yes, I will be [19:37:52] ok, great! [19:38:00] hm, maybe we should not do the tool labs stuff there [19:38:25] DanielK_WMDE: that should involve Coren, if so [19:38:26] would you have a minute for that at some other time? my schedule is still pretty lose. [19:39:01] i'm fine with whatever, it's just one of the things i'd like to talk about while i'm in town. i'm here until thursday evening. [19:39:15] I'm always available to join the conversation at need. [19:39:50] tools labs? isn't that like the subject you go to the pub, buy lots of beer then come up with crazy solutions for? [19:40:09] Damianz: No, that's the /ideas/ lab. :-) [20:02:59] Ryan_Lane: Interesting design question for you to mull upon when you have spare brain cycles: puppet clearly handles the "is-an-execution-node" concept for the grid; what about dynamic configuration? (I.e.: this node is on that queue). Runtime or puppetized? [20:03:58] I'll think about it [20:04:01] that's always harder [20:04:38] Parameterized class with the enc! Though yeah real time sucks, use salt states so you can enforce and push real time :D [20:04:47] I *can* puppetize this if I write a resource type for it. [20:05:20] I'm wondering if we *want* to. [20:54:52] Damianz: You say "parametrized class", but can we even invoke that for an instance from the labsconsole? [20:55:23] Coren: it should be a role class [20:55:30] that is modified by variables [20:55:32] parametrized classes? sure, but normally you'd do a wrapping class [20:56:00] Ryan_Lane: That's good for 1:1 mapping, but queue to exec hosts is many-to-many. [20:56:14] yeah [20:57:30] Reminds me... I need to kill my manifests and move my roles to a module [20:57:52] Actually, what would be really cool is if Special:Novainstance allowed arbitrary puppet verbiage to insert into the node { } [20:58:33] Damianz: I didn't take a chance and am already doing a module. :-) [21:09:42] Coren: well, it injects stuff into ldap [21:10:07] it's not completely necessary for it to do stuff this way [21:10:16] I'd actually like to move dns out of ldap [21:10:30] moving puppet out of ldap probably wouldn't hurt [21:10:55] but… there's a danger in letting people put anything they want into node definitions [21:11:31] Ryan_Lane: Any bigger danger than letting those same people have root on the boxen? [21:11:39] yes [21:11:46] they could inject stuff that runs on the servers [21:11:49] err [21:11:51] on the puppet server [21:12:17] Ryan_Lane: Ah, good point. I also just realized that you could do mean stuff with exported resources. [21:12:29] we don't use exported resources in labs [21:12:54] ... it's already used by some manifests. :-) [21:12:58] and its ignored [21:13:06] o_O [21:13:24] it's only really used for ssh public keys and nagios checks [21:13:27] ... including mine, and it's working fine. [21:13:37] yes, the exported resources are ignored [21:14:02] Well, I collect them so apparently not. :-) [21:14:17] where do you collect them? [21:14:21] they don't go into a database [21:14:36] and the server specifically says its ignoring it [21:15:08] Hm. [21:15:34] Oh, I have a single node test setup; so of course the class that collects them will see the ones defined in another class. [21:15:41] yes [21:15:58] Crap. No way I can do HBA right without exported resources. [21:16:51] Nor exec node registration. Nor shadow masters. [21:17:03] * Coren scrambles to find some other way. [21:17:07] HBA? [21:17:13] shadow masters? [21:17:40] Host based auth. The exec nodes need to be able to allow the master to ssh to it without credentials on behalf of users. [21:17:48] ah [21:18:07] shadow master = grid scheduler (master) in hot-takeover config. [21:18:25] master goes down, shadow takes over. [21:19:13] exported resources would be really insecure in labs [21:19:30] unless we used environments, which we can't, because we don't use modules [21:19:57] * Coren is writing the gridengine stuff as a module. :-) [21:20:41] Yeah, I can see how that'd be problematic -- that would place a big burden on gerrit reviews of any puppet change. [21:20:57] modules are fine [21:20:58] and wanted [21:21:01] we're moving that direction [21:21:19] the problem with exported resources is that they'd be exported across labs projects [21:21:52] Right, so not just anyone should be able to do so, which complicates matter greatly. [21:21:58] best case it's data leakage [21:22:23] worst case it can be used to own projects from other projects [21:22:49] Allright, so I need to figure out a way to do the same basic thing without 'em. At puppet time. [21:23:47] well, hopefully we'll be able to use salt in a per-project way at some point [21:23:55] that's an alternative [21:25:46] * Coren needs to rethink. [21:26:07] I think I need to give up on "adding a new node is as simple as giving the right class to an instance" idea. [22:01:46] Ryan_Lane: Would you feel it reasonable that, as a first throw, the tools config was not puppetized? Doing so properly at this time seems to have too many blockers. [22:01:56] only to a point [22:02:04] package dependencies definitely should be [22:02:18] most things can be puppetized to a point, as well [22:02:46] Yeah, I didn't intent packages to not be; I meant the more precise configuration. [22:03:16] Much of it would require me to collect information and redistribute it, something for which I'll need (at least) salt and some fancy scripting. [22:04:55] Anyone: I can haz review? https://gerrit.wikimedia.org/r/#/c/50913/ [22:26:01] I assume it can only be yes or no so why a var? [22:31:29] so that not all hosts have host based authentication enabled [22:41:48] Damianz: And that, by default, the absence of the var doesn't turn it on. :-) [22:42:41] I like explicit... assuming the default functionality doesn't change seems dodgy [22:43:37] ... I'm not sure I get what you meant. [22:43:52] Right now, the template has hardcoded 'no' [22:44:10] If you don't have the var, that stays the same. If you have it, you get to change the value to 'yes' [22:44:45] But you can make it explicitly 'no' if you like all your fields filled on the form. :-) [22:45:24] That's what forward_X11 does [22:45:28] (for instance) [22:46:20] So going back to, how is this better than using an explicit yes/no since the only value you'll ever use other than no is yes... personally I'd just make it true/false or maybe I'll just set it to 'wibble' [22:47:56] Oh, you mean, for instance, comparing the variable to 'yes' and setting 'yes' in the template in that case? [22:48:01] !log deployment-prep running database update for enwiki [22:48:03] Logged the message, Master [22:48:52] Damianz: That's work. But I did it the same way 'ssh_x11_forwarding' and 'ssh_tcp_forwarding' were done for consistency's sake. [22:48:58] That'd* [22:49:00] [bz] (8NEW - created by: 2Ryan Lane, priority: 4Unprioritized - 6normal) [Bug 45455] Cleanup and enable UserFunctions extension on labsconsole - https://bugzilla.wikimedia.org/show_bug.cgi?id=45455 [22:49:25] [bz] (8NEW - created by: 2Ryan Lane, priority: 4Unprioritized - 6normal) [Bug 45456] Have shell requests marked as uncompleted or completed automatically - https://bugzilla.wikimedia.org/show_bug.cgi?id=45456 [22:50:18] Change on 12mediawiki a page Wikimedia Labs/Interface usability improvement project was modified, changed by Ryan lane link https://www.mediawiki.org/w/index.php?diff=652471 edit summary: [+257] /* The war on clicks */ [22:50:58] I suppose it's consistant... seems weird to me to pass the var, though without reading the code I couldn't tell you a quick saner way... I'd rather keep my workflow clean like => true for features and pass as vars to templates.... or get rid of the template logic and just set the var to no by default... since your logic is spread out now [22:51:03] * Damianz thinks just nuke the whole thing [22:52:06] muscle memory will do me in somday. I've yet to type a 'git status' without having typed 'svn status' first. :-) [22:52:33] alias svn=git #scream [22:52:54] or alias 'svn status'=echo no [22:53:31] * Damianz goes to kick the shit out of exchange for starttls not working for his thunderbird making him have to use the web interface which sucks [22:53:42] Heh. I need to make an aalib version of grumpy cat with a big 'No.' caption and emit that instead. :-) [22:54:04] <^demon> I aliased git up to git pull ages ago :p [22:54:36] <^demon> git config --global alias.up "pull --ff-only" [22:56:14] ^demon: Btw, you're a certain level of crazy [22:56:29] <^demon> Indeed :) [22:56:32] I installed gerrit the other day... and spend about a day figuring out how the acls work with groups... [22:56:36] s/spend/spent/ [22:57:04] Then I saw your bug report about ldap groups not being able to be part of local groups and figured out why I was having 'problems' rofl [23:00:11] <^demon> Yeah, the 2.5.x branch is useless. [23:00:17] <^demon> Have to use master. [23:02:09] chrismcmahon: I am updating all the beta databases manually then will work on having them updated automatically :-] [23:03:48] I'm like > < close to compiling the latest - want to use gitblit and the plugin refuses to compile... also the master design is slightly nicer... it gives me a base to get zuul verifying changes to push puppet out though, which is a start [23:11:09] ... did I abandon my sshd_config change thinking I sent it twice but I didn't? [23:15:58] nope [23:16:06] it's still review in progress [23:16:26] oh [23:16:28] yeah you did [23:16:30] then restored it [23:16:33] now it's review in progress [23:25:18] Like I said. There is now a level 0 of gerrit-fu. :-) [23:25:35] Don't worry - I'm at level -1 of zuul-fu [23:27:44] Hm. I will have an arbitrary number of identical exec nodes. Do we like 'tool-exec[0-9]+' or 'tool-exec-[0-9]+'? [23:29:29] the later, or give them real names [23:30:00] Real names seem a waste since they are intended to be fungible. [23:30:32] I hate phpmyadmin [23:30:44] Ryan_Lane: Bad, Bad, Bad, Bad, Bad, Bad, Bad, Bad [23:30:52] did you see the email I just sent? [23:31:02] * Damianz looks [23:31:44] yay no bots instances, no stabbing [23:31:50] yeah [23:32:00] Ryan_Lane: You know I basically said 'DON'T FUCKING USE PHP MY ADMIN' on the help docs like a year ago, right? [23:32:02] I pushed a custom package into our repo :) [23:32:04] :D [23:32:20] at version: 10:10.10.10-1 [23:32:21] :) [23:32:42] I have a feeling it'll be a while before that version comes around [23:32:51] lol [23:32:54] Ryan_Lane: Of course you do. [23:34:22] Think I'll just move https://labsconsole.wikimedia.org/wiki/Help:Move_your_bot_to_Labs#Security to the main help second and make it more explicit :D [23:34:28] s/second/section/ [23:35:14] Also I could make the english more english... I swear it wasn't that mengish when I wrote it [23:35:18] * Damianz looks at history [23:35:36] Also could have sworn it wasn't on that page [23:35:43] * Damianz shrug... back to kicking zuul [23:36:04] oooh I know, this was the page that come from etherpad many moons ago [23:36:27] Also I should stop talking to myself, it looks weird [23:36:47] Ryan_Lane: do you think it's weird? [23:36:53] Ryan_Lane: of course not [23:37:52] Argh... stupid zuul... so if it can't talk to jenkins it says bad job not 'hey I can't talk to jenkins' -.- [23:39:12] <^demon> Tell me why [23:39:18] <^demon> Ain't nothin' but a heartache... [23:39:21] <^demon> Tell me whyyyy [23:39:25] <^demon> Ain't nothing but a mistake. [23:39:28] <^demon> Tell me why. [23:39:32] <^demon> I never wanna hear you say. [23:39:36] <^demon> I FUCKING HATE OPENJDK [23:40:18] Don't even get me started on java.... I have one app that the /vendors/ solution to it's issues is to restart it once a week >-< [23:40:28] :D [23:41:04] <^demon> So, master is broken on openjdk. But works on sunjdk. [23:41:08] <^demon> The fix that makes it work on openjdk...breaks sunjdk. [23:41:09] <^demon> I can't win. [23:41:13] lol [23:41:23] Solution - install 6 versions of java.... you know it happens [23:42:26] <^demon> Oh, it does work on both. [23:42:29] <^demon> Eclipse was just lying. [23:44:01] heh [23:44:19] Eclipse does funny stuff... don't really trust it that much [23:44:52] Java... the truly portable platform, as long as you use the same version on the same architecture. [23:46:34] Tbf to java... it generally is quite portable. I've used it to ship python apps via Jython before because it generally just works... apart from when it doesn't, then you're in a world of hell [23:49:58] !log tools Original note structure: created tools-{master,exec-01,webserver-01,webproxy} instances [23:50:00] Logged the message, Master [23:50:06] I take that back [23:50:09] java.lang.NullPointerException < ARGH [23:51:00] "gerenally quite portable" is damnation, to me, because it encourages not thinking about portability and will paint you in a corner in edge cases. [23:52:14] I use generally in a very general term... I can hardly take my crappy java code, give it to our software guys and watch then run it on a mixing console... but I can give it to my windows dude and watch him run it on server 08 [23:58:28] <^demon> I typically don't have portability problems with gerrit. The openjdk builds tend to run well on sunjdk and vice versa. Across OSX and Ubuntu. [23:58:38] <^demon> Never tried windows because I don't care.