[01:18:59] (PS2) Eileen: Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 [01:20:52] (CR) jerkins-bot: [V: -1] Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (owner: Eileen) [01:26:46] Fundraising Sprint Gondwanaland Reunification Engine, Fundraising Sprint Homebrew Hadron Collider, Fundraising Sprint Ivory Tower Defense Games, Fundraising Sprint Judgement Suspenders, and 5 others: Add buildkit/bin to path on jenkins CI environmen... - https://phabricator.wikimedia.org/T169593#3403097 [01:59:00] (PS1) Eileen: Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 [02:01:06] (CR) jerkins-bot: [V: -1] Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 (owner: Eileen) [02:04:16] (PS2) Eileen: Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 [02:06:19] (CR) jerkins-bot: [V: -1] Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 (owner: Eileen) [02:07:07] (PS3) Eileen: Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 [02:09:00] (CR) jerkins-bot: [V: -1] Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 (owner: Eileen) [03:40:05] * ejegg just discovered diff-highlight [03:40:07] https://www.viget.com/articles/dress-up-your-git-diffs-with-word-level-highlights [03:40:47] gives git -p the same style as gerrit inline diffs [03:41:31] still shows diffs line-by-line, but with word-level highlighting in the old and new lines [03:42:06] so much clearer it oughtta be a default! [04:49:23] (CR) Ejegg: [C: 2] "Diffs from upstream look sane!" [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/359898 (owner: Eileen) [04:53:37] (CR) Ejegg: [C: 2] Add index to civicrm_campaign.name [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360608 (https://phabricator.wikimedia.org/T168499) (owner: Eileen) [04:53:59] (Merged) jenkins-bot: Upgrade CiviCRM to 4.7.21 [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/359898 (owner: Eileen) [04:57:24] (CR) Ejegg: "The new code looks awesome, but the doubly-nested vendor dirs are making me sad. Would it be easy to consolidate using this composer merge" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) (owner: Eileen) [04:58:23] (Merged) jenkins-bot: Add index to civicrm_campaign.name [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360608 (https://phabricator.wikimedia.org/T168499) (owner: Eileen) [05:42:18] (PS1) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [05:43:20] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [05:55:00] (PS1) Eileen: Towards adding mailing visibility to users [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363125 [05:56:58] (CR) jerkins-bot: [V: -1] Towards adding mailing visibility to users [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363125 (owner: Eileen) [06:40:33] (CR) Ejegg: "Almost have the tests passing with the tweak mentioned inline. Also, see Ic75e5c090c28 for an attempt at vendor/ consolidation with compos" (2 comments) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) (owner: Eileen) [07:09:12] (PS2) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [07:10:20] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [08:41:34] (Restored) Hashar: Jenkins job validation (DO NOT SUBMIT) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/151840 (owner: Hashar) [08:41:40] (PS3) Hashar: Jenkins job validation (DO NOT SUBMIT) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/151840 [08:43:40] (CR) jerkins-bot: [V: -1] Jenkins job validation (DO NOT SUBMIT) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/151840 (owner: Hashar) [08:57:55] (PS1) Hashar: CI: install CiviCRM with a fake sendmail [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 [08:57:57] (Abandoned) Hashar: Jenkins job validation (DO NOT SUBMIT) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/151840 (owner: Hashar) [09:00:05] (CR) jerkins-bot: [V: -1] CI: install CiviCRM with a fake sendmail [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [09:05:20] (CR) Hashar: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [09:07:37] (CR) jerkins-bot: [V: -1] CI: install CiviCRM with a fake sendmail [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [09:11:42] (CR) Hashar: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [09:12:31] (CR) jerkins-bot: [V: -1] CI: install CiviCRM with a fake sendmail [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [14:34:01] fundraising-tech-ops, Operations, netops, ops-codfw: codfw: rack frack refresh equipment - https://phabricator.wikimedia.org/T169643#3404554 (ayounsi) [14:52:36] (PS3) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [14:55:09] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [14:57:24] (PS1) Ejegg: WIP try to fix environment [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363198 [15:00:19] (CR) jerkins-bot: [V: -1] WIP try to fix environment [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363198 (owner: Ejegg) [16:04:55] (CR) Hashar: "Seems to be enough to let Drupal complete the installation. The CI instances do not have sendmail and I would rather not install it." [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363141 (owner: Hashar) [17:00:32] fr-tech: You will remember, Watson, how the dreadful business of the Abernetty family [17:00:32] was first brought to my notice by the depth which the parsley had sunk into [17:00:32] the butter upon a hot day. [17:00:32] -- Sherlock Holmes [17:00:32] -- discuss. [17:37:51] Fundraising-Backlog, FR-Email: Can we add recurring information to TY email? - https://phabricator.wikimedia.org/T169364#3396006 (Ejegg) Good news! There is already a special paragraph in the TY letters for recurring donations. You can see it in the footer here, enclosed in [ifRecurring] [endIfRecurring]... [18:25:48] Fundraising-Backlog: SQL challenge: Mailing and donation data - https://phabricator.wikimedia.org/T169591#3402844 (Ejegg) For tier 1,the join on m1 is creating additional rows for people who received more than one mailing besides the one you want to exclude. You could instead do a LEFT JOIN m1 ON m1.email=m.... [21:03:12] (Abandoned) Eileen: CRM-20759 add ability to import to primary addresses. [wikimedia/fundraising/crm/civicrm] - https://gerrit.wikimedia.org/r/361807 (https://phabricator.wikimedia.org/T169025) (owner: Eileen) [21:15:20] Wikimedia-Fundraising-Campaigns (FY Q4 Apr-Jun 2017), Wikimedia-CentralNotice-Administration (Q2-2017): WMF Fundraising - 2016-17 - Latvia/Hungary (Jun 6 - Jul 4) - https://phabricator.wikimedia.org/T164269#3405597 (Pcoombe) Open>Resolved a:Pcoombe [21:51:19] (Abandoned) Eileen: Add support for file storage of credentials [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363108 (owner: Eileen) [21:51:38] (Abandoned) Eileen: Towards adding mailing visibility to users [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363125 (owner: Eileen) [21:51:41] (PS8) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) [21:51:43] (PS3) Eileen: Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) [21:53:30] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) (owner: Eileen) [21:54:08] (CR) jerkins-bot: [V: -1] Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [21:54:16] (CR) Ejegg: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [21:54:53] hey ejegg[m] are you working today? [21:55:13] (PS9) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) [21:55:15] (PS4) Eileen: Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) [21:55:20] eileen: a bit! [21:55:53] ah cool - am just trying to look at your review & tinker with tests a bit - although I'd like to see what happens on jenkins once your change is merged [21:56:05] that will have to wait for others tho [21:56:07] I just live-hacked the jenkins config for that job [21:56:16] ah cool - so it runs? [21:56:18] to see if it does indeed do the trick [21:57:07] (CR) jerkins-bot: [V: -1] Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [21:57:53] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) (owner: Eileen) [21:58:14] eileen: still cv not found [21:58:55] re the double vendor commit - I think some of it just got committed because I was adding tests at vendor level & running them. ie. vendor directory in the extension I committed on purpose - but within that I don't think vendors need vendors except to run the tests I added in there https://github.com/eileenmcnaughton/silverpop-php-connector/blob/master/phpunit.xml.dist [21:58:57] BOO [21:59:05] (the last is re the cv) [21:59:14] That proc_open thing must be messing with the env [21:59:34] eileen: I got to a pretty good state with the composer-merge plugin [22:00:05] re setting path - there is set for this console & set for next console that gets opened & export is the latter isn't i? [22:01:08] so, afaiu, 'export' is a shell thing that means the env var applied to all subsequent things launched from that shell [22:01:25] so the phpunit process DOES get the right path [22:02:01] but I'm not sure what proc_open does to environment variables, since it's different from the shell launching the process [22:03:29] so probably we need to set it in .profile or something because a new shell opens to run the scripts? [22:03:41] bah, doc says NULL should use the same env as the php process [22:03:56] well what the heck... [22:04:31] (PS2) Ejegg: WIP try to fix environment [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363198 [22:05:38] I'm currently getting some local fails - but they are due to some true breakage (tinkering) around dates [22:06:30] (CR) jerkins-bot: [V: -1] WIP try to fix environment [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363198 (owner: Ejegg) [22:06:33] i'm seeing all the merge tests fail locally - probably due to some unexpected data [22:06:35] actually worse - it's expecting a relative date - worked yesterday! [22:07:20] ejegg: those merge tests can fall over if you have too many mergeable contacts in your db - I think we are killing ducks & mice but there are some other sample characters that sneak in [22:09:47] k, I'll clean em up [22:10:19] ok, that hacky env thing doesn't help [22:10:37] bugger [22:18:35] (PS10) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) [22:18:37] (PS5) Eileen: Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) [22:19:35] eileen ooh, I think I put that export in the wrong step of the jenkins setup [22:20:00] moving it to the one that runs phpunit [22:20:05] :-) [22:20:23] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T161758) (owner: Eileen) [22:20:37] (CR) jerkins-bot: [V: -1] Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:20:44] (CR) Ejegg: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:22:36] (CR) jerkins-bot: [V: -1] Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:24:36] sweet! it failed for a different reason [22:24:53] yay [22:25:45] so I think I should squash those 2 gerrits - seems to be not achieving the reason I separated them [22:26:56] ooh, the phpunits are fighting [22:27:21] (PS4) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [22:27:51] Can we bet on them? [22:28:15] (PS11) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [22:28:17] it's running under php < 5.6, so my money's on phpunit 4.x :) [22:28:28] oh bugger [22:28:52] I messed with your composer.json a little to get that merge working [22:28:55] (Abandoned) Eileen: Add extension tests to phpunit.dist [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363099 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:29:23] are you using any features that aren't in phpunit 4.x ? [22:29:59] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:30:34] woot, tests are running: https://integration.wikimedia.org/ci/job/wikimedia-fundraising-civicrm/4494/console [22:31:05] (PS12) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [22:31:26] cool! [22:31:32] which commit is that testing? [22:32:02] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [22:32:04] btw - it's running locally for me - without those changes to cv that you flag [22:32:21] are you saying you need those to run locally or remotely? [22:32:48] eileen: oh yeah, I can abandon that one [22:32:49] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:33:06] locally I'm getting 3 fails - two on exchange rates [22:33:34] + [22:33:34] 1) ImportMessageTest::testDuplicateHandling [22:33:34] Undefined index: DuplicateInvoiceId [22:33:52] (Abandoned) Ejegg: WIP try to fix environment [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363198 (owner: Ejegg) [22:35:02] weird, all of those just passed in CI! [22:35:13] yeah - could be data [22:35:49] ok so CiviCRM_API3_Exception: API (Omnimailing, get) [22:35:49] [22:35:56] means the extension is not enabled! [22:36:02] ahhh [22:36:11] is that a drush command? [22:36:37] yep drush cvapi extension.install key=org.wikimedia.omnimail I think [22:36:49] just off the top of your head :) [22:37:00] well if might be name not key [22:37:35] do we add to wmf_civicrm.install? [22:38:13] hmm, we're enabling all the drupal modules in the test harness scripts - maybe there? [22:39:11] where is that? [22:39:23] ah, though that's in civicrm-buildkit's wmff config [22:39:35] civicrm-buildkit/app/config/wmff/install.sh [22:39:45] drush -y en `cat sites/default/enabled_modules` [22:42:40] but putting the civi extension enablement in wmf_install seems fine [22:43:30] yeah - if we put it in the test harness then we would block anything else working until it is merged [22:43:42] especially if it's an api thing vs drush [22:44:19] oh right, that's why i made the drupal module enablement take its list from the same repo as the modules [22:47:31] ah yeah - clever [22:47:34] (PS13) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [22:47:52] I've just tried adding those extensions to the install [22:48:22] great! [22:48:56] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:48:58] might have to squash in the composer-merge too, to deal with the phpunit mismatch [22:49:14] lemme rebase that [22:49:36] (PS5) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [22:50:11] hmm CiviCRM_API3_Exception: Unknown extension: org.wikimedia.omnimail in civicrm_api3() [22:50:51] need to set the extension path? [22:51:04] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [22:51:31] i think we're not using the default dir [22:51:46] (PS14) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [22:53:00] hmm - we set the dir in civicrm.settings.php [22:53:07] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [22:53:42] perhaps in https://github.com/civicrm/civicrm-buildkit/blob/master/app/config/wmff/install.sh [22:54:30] add drush cvapi setting.create extensionsDir=sites/default/civicrm/extensions would work [22:54:50] huh, yeah [22:55:18] (that's also helpful for dev envs) [22:55:27] are you able to hack that onto ci to test it? [22:56:02] yeah, it's a bit uglier - got to update the script on 4 machines [22:56:29] erg [22:56:35] shoot, and I've got to head out in a few min. But i'll give it a shot [22:58:41] (PS15) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [23:00:17] (CR) Ejegg: "recheck" (4 comments) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [23:00:22] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [23:00:34] (PS6) Ejegg: WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 [23:01:14] oh hey, guess I had some draft comments :) [23:01:31] eileen: I gotta head out for now. Good luck! [23:01:44] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [23:02:39] dang, drush command could not be found [23:03:01] uhh, guess I oughtta fix that before I scoot [23:03:25] I think I'm confused now :-) [23:03:35] drush cache-clear drush? [23:04:41] drush cache-clear eileen [23:05:04] which console log are you looking at? Are we setting the setting before enabling civi? [23:05:52] I think you can go & we can sort this later [23:05:58] (CR) Ejegg: "recheck" [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [23:06:31] d'oh, civicrm_install doesn't enable the civi drupal module? [23:06:38] ok, see you later! [23:07:08] (CR) jerkins-bot: [V: -1] WIP use composer-merge, reconcile versions [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/363124 (owner: Ejegg) [23:15:17] (CR) Eileen: "fixed those things" (4 comments) [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen) [23:19:20] (PS16) Eileen: Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) [23:20:17] (CR) jerkins-bot: [V: -1] Initial commit, omnimail extension & extendedmailingreport [wikimedia/fundraising/crm] - https://gerrit.wikimedia.org/r/360610 (https://phabricator.wikimedia.org/T169593) (owner: Eileen)