[05:39:29] _joe_: morning https://shellbox-beta.wmcloud.org/call [05:39:55] of course it's not super great, it's not puppetized. etc. [05:41:09] i'm not sure if we want it to be accessible from the public internet [05:43:47] majavah: it's key-protected [05:43:57] wouldn't work without its secret key [05:44:09] not the best protection but still [07:01:53] in grafana how do I also filter our 304 from: `routinator_rrdp_status{site="eqiad"} != 200` [07:12:15] XioNoX: you can do condition1 or condition2 [07:12:26] as a prometheus thing not a grafana thing just to be clear [07:12:45] and/or/not you get the idea [07:13:02] in case it'd be 'and' heh [07:14:01] routinator_rrdp_status{site="eqiad"} != 200 and routinator_rrdp_status{site="eqiad"} != 304 [07:14:18] to be clear, AFAIK it's not possible to say something like not in (200, 304) [07:14:41] and the !~ operator (negate regex) I think is available only for labels, correct me if I'm wrong [07:15:48] that's correct [07:28:42] good to know, thanks! [08:17:46] Do we still have a DC-switchover planned for early july? [08:19:03] if so is there a task I can look at for the details? if not is there an estimation on when it might happen? [08:31:37] week of June 28th, see https://lists.wikimedia.org/hyperkitty/list/wikitech-l@lists.wikimedia.org/thread/MR4YNIEIWVJG2LCCTSMBMEASUZUNNPZE [08:35:18] thx! [08:35:21] and switch back? [08:37:40] not sure, but I think we did three weeks last time? [08:37:51] that's usually the time more or less [08:37:59] dependong on maintenance scheduled for netops and dbas [08:38:02] :-P [08:38:38] topranks: ^ fyi [08:39:12] thanks :) [08:42:39] we want at least 1 month [08:44:46] won't be too much for us neither :) [08:45:03] especially with the 1 week off [08:58:19] sgtm :) [09:04:04] marostegui: I think that's partially my fault :D [09:04:33] <_joe_> Amir1: blaming you is our goto move anyways [09:04:39] <_joe_> either you directly, or wikibase [09:04:46] Amir1: 100% your fault [09:05:25] using goto is frowned upon https://xkcd.com/292/ [09:06:18] <_joe_> I disagree, as a FORTRAN programmer, I think goto is not flexible enough in other languages [09:06:18] marostegui: is the number of schema changes waiting for dc switchover reaching double digits? [09:06:30] <_joe_> like, you don't have the conditional goto, or the assigned goto [09:06:37] <_joe_> tsk [09:07:45] _joe_: IIRC, in a talk about kernel they said, they use goto but forward only and they think it's okay, there is only one place that uses goto to back and that's scheduler [09:08:24] I see the point of goto forward but backward is ew :D [09:08:32] <_joe_> Amir1: I found this gem in an old frotran program [09:08:36] <_joe_> goto(9,9,9,9,9,6) n-3 [09:09:19] <_joe_> which means "goto 9, unless n is equal to 9, then goto 6" [09:09:21] <_joe_> IIRC [09:10:27] one minute of silence for this masterpiece [09:10:29] <_joe_> https://docs.oracle.com/cd/E19957-01/805-4939/6j4m0vn9l/index.html [09:11:05] <_joe_> so to be precise "if n is between 3 and 8, goto 9; else if n is 9, goto 6; else continue" [09:12:15] very readable [09:12:46] <_joe_> if you're used to read equations from modern physics, it looks pretty straightforward tbh [09:16:02] _joe_: Sakurai one is pretty easy, you just give up understanding [09:16:48] <_joe_> Amir1: nothing's easy about quantum physics, and it's very easy to just follow the math instead of trying to understand how the model of reality works [09:17:12] <_joe_> the math itself isn't even simple, but simpler than understanding the ties with reality :P [09:17:31] <_joe_> (but we're OT, sorry everyone) [09:19:04] In university my approach was basically Feynman's quote ("Shut up and calculate"). I find the math quite fascinating. Not just Quantum mechanics. everything. (Except general relativity) [09:22:52] <_joe_> hey what's wrong with GR? [09:22:58] <_joe_> calculations are so easy and compact [09:24:20] I don't like Tensors :D [10:37:20] jbond: both cumin2001 and cumin2002 have puppet failures with the message `UNKNOWN: Unable to read configuration file: [Errno 13] Permission denied: '/etc/cumin/config.yaml'` [10:38:57] kormat: puppet failure? or the nrpe check for puppet aggregated failures that is failing? [10:39:08] if the latter jo.hn was working on that [10:39:21] oh, sorry, no a failure. icinga is saying there's a change on every run [10:39:26] *not a [10:40:07] kormat: i thught i pushed a fix to that, it can safley be ignore will take a look in a sec (althugh cumin1001 has clear i suspect the fix hasn;t yet made it to the others) [10:40:40] jbond: ah hah. just wanted to make sure you were aware. 👍 [10:40:48] yes thanks :) [13:25:57] jbond: is there a handy way to convert true/false into absent/present? a class i'm using defines `ensure` as `Wmflib::Ensure` [13:26:41] or do i just use a selector statement? [13:27:00] kormat: you can use $ensure.bool2str('present', 'absent'), [13:27:24] ohh. cute. thanks :) [13:27:46] :) np [14:00:07] <_joe_> "cute" [14:00:20] <_joe_> kormat: you've surrendered I see [14:00:45] _joe_: it's all relative when you're drowning in the sweet sweet agony of puppet coding [14:00:59] <_joe_> exactly my point [14:01:04] <_joe_> you've given up fighting [14:01:30] <_joe_> effie can tell you something about the deep agony of puppet coding in the last couple days :D [14:01:35] 🥀 [14:01:46] no I am good [14:01:46] :p [14:02:16] the worst part is that when you eventually write the damn thing [14:02:23] you think heh, it was easy after all [14:02:28] OH WAS IT ? [14:08:52] I can attest to writing puppet on (a) pontoon to be a not-so-bad-experience [14:10:26] <_joe_> godog: YMMV; plain puppet is ok-ish; the issue is when you start to do things like data structure mangling [14:10:38] <_joe_> then things get horrible notwithstanding your dev env [14:11:02] <_joe_> $something.map.filter.each.reduce.map.reduce [14:11:11] <_joe_> it's easy to find stuff like that in the code [14:12:01] I think that's puppet asking not to be done such things to :P [14:17:10] <_joe_> well i mean that's how you usually do stuff, by manipulating basic data structures to your specific needs :P [14:17:21] <_joe_> in programming in general I mean [14:22:05] no doubt, mine was more a remark of doing complex/many manipulations in puppet as opposed to elsewhere and feed the results to puppet, but yeah it is painful for sure [14:33:48] I think one semi-useful lens to look at things through (although it's not universal) is to think of areas of excess puppet complexity as possible indicators of excessive insufficiencies in the underlying software you're managing :) [14:34:29] in the tool-vs-product sort of sense. a well-designed product should be easy to configure for the intended purpose and need less duct taping to put things together. [14:36:34] (but if all you have is a collection of generic tools, and the result you're aiming for is a product-quality production system, then all of what could be application-layer engineering is instead happening the duct-tape/system layer) [14:42:33] <_joe_> bblack: it's desirable to have a single data structure being used by different pieces of software in their configuration [14:55:22] yeah, it's unavoidable for system-global data [16:04:34] hi robh have you received the invite for statuspage? [16:56:39] lmata: not 100% sure because of the UI, but I think I've given access to both you and Rob for both billing & to approve new users yourself, btw [16:57:04] Ooh thanks 😊