Ticket #582 (assigned maintenance)

Opened 3 years ago

Last modified 3 years ago

TN.org platform and sites

Reported by: jim Owned by: sam
Priority: major Milestone: Maintenance
Component: Drupal modules & settings Keywords:
Cc: ed, sam, jim Estimated Number of Hours: 2.5
Add Hours to Ticket: 0 Billable?: yes
Total Hours: 4.8

Description (last modified by jim) (diff)

The TN.org platform and Drupal site updates are to be tracked in this ticket.

Current PROD platform build = P009
Current STG platform build = S010

Updates pending:

  • SECURITY UPDATE - NO RISK: Pressflow core 6.30 is due, but the security holes fixed do not affect us, low priority. Platforms: present in S010, but not in P009.

Change History

comment:1 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.15
  • Total Hours changed from 0.0 to 0.15

comment:2 follow-up: ↓ 3 Changed 3 years ago by ed

anything about a software as a service to analyse TN.org to find the load spikes?

comment:3 in reply to: ↑ 2 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.05
  • Total Hours changed from 0.15 to 0.2

Replying to ed:

anything about a software as a service to analyse TN.org to find the load spikes?

New Relic integration is at the BOA/server level, and all Drupal sites hosted will automatically start reporting their stats once set up... So that's unrelated to this.

comment:4 Changed 3 years ago by ed

open atrium?

comment:5 Changed 3 years ago by jim

Per ticket:590#comment:28, we need to apply the patch for blockcache_alter (no grants) to Drupal core...

comment:6 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.05
  • Total Hours changed from 0.2 to 0.25

Regarding Location module patch -- our old version with the changes to the French Departments est ici: https://github.com/i-jk/OBSOLETE-Transition-Network/blob/610d54daa7bd5bc1480157241b7f5f273c6c3ba8/sites/all/modules/location/supported/location.fr.inc

Will compare current Locaton 6.x-dev with our old version and combine the best.

comment:7 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.1
  • Total Hours changed from 0.25 to 0.35
  • Description modified (diff)

Adding (per Proposal N on #590): need to get latest admin menu 3.x branch.

And these are the changes in functions I patched in LoginToboggan? -- need to make a patch in our repo and submit '@' part back to the project:

---- [Removed LOWER() in the queries ] ----
function logintoboggan_user($op, &$edit, &$user_edit, $category = NULL) {
[[snip]]
      if (isset($edit['name']) && db_result(db_query("SELECT uid FROM {users} WHERE mail = '%s' AND uid <> %d", $edit['name'], $uid))) {
        form_set_error('name', t('This name has already been taken by another user.'));
      }
      // Check that no user is using this email address for their name.
      if (isset($edit['mail']) && db_result(db_query("SELECT uid FROM {users} WHERE name = '%s' AND uid <> %d", $edit['mail'], $uid))) {
        form_set_error('mail', t('This e-mail has already been taken by another user.'));
[[snip]]
}


---- [ added '@' check and removed LOWER() in query] ----
function logintoboggan_user_login_validate($form, &$form_state) {
if (isset($form_state['values']['name']) && $form_state['values']['name'] &&
    strpos($form_state['values']['name'], '@') > 0) {
    if ($name = db_result(db_query("SELECT name FROM {users} WHERE mail = '%s'", $form_state['values']['name']))) {
      form_set_value($form['name'], $name, $form_state);
    }
  }
}

comment:8 Changed 3 years ago by jim

  • Description modified (diff)

As part of Proposal N #590, I'll be adding https://drupal.org/project/advagg to the site, too.

comment:9 Changed 3 years ago by jim

  • Description modified (diff)

Include Term Node Count too...

Given the downtime today and the meeting for tomorrow I'll wait for the all-clear before doing these updates. Pushed back 1 week for now...

comment:10 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.25
  • Total Hours changed from 0.35 to 0.6
  • Description modified (diff)

I've changed to use comment_notify instead of notifications_extra - better, simpler module.

Committed: Advagg, comment_notify and node_term_count added, admin_menu updated to 3.x-dev.

comment:11 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.15
  • Total Hours changed from 0.6 to 0.75
  • Description modified (diff)

Checked modules & update, all good, no changes needed to makefile and all relevant contrib updates will be brought into the next platform.

TO DO here:

  • GMap revert to our old version
  • Location and LoginToboggan? patches created and applied

Postponing captions issue on #596 until after this is settled - that'll happen on that ticket.

comment:12 Changed 3 years ago by jim

Also: add views_content_cache!

comment:13 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.25
  • Total Hours changed from 0.75 to 1.0

Update:

Now just the GMap module to look into...

comment:14 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.05
  • Total Hours changed from 1.0 to 1.05
  • Description modified (diff)

description update.

comment:15 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 1.05 to 1.55

Platform now ready to build (tonight):

comment:16 Changed 3 years ago by jim

  • Description modified (diff)

comment:17 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.25
  • Total Hours changed from 1.55 to 1.8

Have corrected a couple of minor issues/typos in makefile and am building the updated platform for testing with STG...

comment:18 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 1.8 to 2.3

Had a couple more issues that were my fault (typos) in the patch files I made, now fixed.

STG is NOT migrating though... opening a separate ticket for this as I think we need Octopus updating in line with the recent Barracuda updates.

comment:20 Changed 3 years ago by jim

Please note the patch I submitted before for the French Departments has been accepted and applied! Next time we can just use the stock version of the Location module.

comment:21 Changed 3 years ago by jim

FYI I'm waiting on the BOA update #629 now.

comment:22 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.75
  • Total Hours changed from 2.3 to 3.05

This is no longer blocked by #629, but seems still affected by #610 -- more over there on that.

Regarding updates:

  • Makefile updated to use latest D6 Pressflow core.
  • Minor tweaks too to clean up patches not needed.
  • Hang occurred on provision verify of 'Transition Network D6 S008' platform -- seems intact though, deleted and tried again
  • New platform 'Transition Network D6 S008' created manually (see command below), will clone Stg2 site into it now to test it.

The commands for making a new TN D6 platform is:

[log in as Aegir user, or sudo to root and run totn]
cd static
rm transitionnetwork.org-d6.make ; wget https://raw.github.com/transitionnetwork/transitionnetwork.org-d6.profile/master/transitionnetwork.org-d6.make ; drush make transitionnetwork.org-d6.make transition-network-d6-s008

The second line above removes any old makefile, gets the latest, runs it with Drush Make into directory in ~/static/transition-network-d6-s008 <-- edit the directory name increment number!

comment:23 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.35
  • Total Hours changed from 3.05 to 3.4

Since #610 is now fixed, I'll now build a new TN PROD platform via Aegir, then migrate news and www sites to it. The platform and process was tested over on #610 with STG being cloned from PROD then migrated, so no further tests are required on the near-identical PROD sites.

For the benefit of future Aegir users, I'll quickly outline the process as I do it...

  1. Add new platform: Name = Transition Network D6 P009, makefile = https://raw.github.com/transitionnetwork/transitionnetwork.org-d6.profile/master/transitionnetwork.org-d6.make, Drush make option = Normal -> 'Save'.
  2. When built go to news.transitionnetwork.org -> Migrate -> Transition Network D6 P009 -> Migrate.
  3. Test news works ok (it does).
  4. Go to www.transitionnetwork.org -> Migrate -> Choose Transition Network D6 P009 -> Migrate.
  5. Test www works ok (it does).

In addition to the above sites, I've also migrated the Space site, and cleaned up the various STG sites, plus the old (now empty) platforms.

Note that this work is actually around 15 mins to complete, but once I'd set up all the tasks then left Aegir to do the work, it took around 1/2 hour to complete. Hence the process for future Aegir users is:

  1. Do the prep/planning/makefile tweaks
  2. Build the platforms for STG and PROD, migrate STG, test
  3. Set the PROD sites to migrate.
  4. Set the (soon to be) empty platform to delete -- best to do STG only to start, so it's still possible to roll back PROD if needs be.
  5. Make tea, eat a sandwich, have a doobie, cook your scag etc.
  6. Final testing/tweaks/cleanup. Done.

comment:24 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.25
  • Total Hours changed from 3.4 to 3.65

Hmm... hit an interesting 'Gotcha' moment during this update:

  1. Everything worked as planned...
  2. BUT the platform was newly-created, and therefore did not have the [platform root]/modules/o_contrib folder symlinked into it -- this happens as part of the /var/xdrago/daily.sh script which is run at 6.45 every day and does a bunch of things.
  3. This meant that though the site was ok and ran fine for the User1 account, anonymous users got a white screen that was caused by the lack of Block Cache Alter module (provided by the o_contrib folder).
  4. Rebuilding the registry fixed the issue, then I ran /var/xdrago/daily.sh when logged in as root to fix the problem.
  5. I then manually re-enabled Block Cache Alter to fix the issue.

There is an issue over on Drupal.org for this, and I added my comment: Add o_contrib modules and Boost cache dir on new platforms when created.

The simple (but slightly annoying) solution (in lieu of a proper fix) is to include the required modules in the Makefile...


So left on this ticket is:
A) Add Block Cache Alter (any any other required modules in o_contrib) to the makefile.
B) Apply Patch in comment:7 to LoginToboggan.
C) Possibly make a GMap patch and add to our makefile so our custom markers appear ok -- per #615.

comment:25 Changed 3 years ago by jim

  • Priority changed from critical to major
  • Status changed from new to assigned

Downgrading, only task A, B and C in comment:24 required at this point, all other updates done.

comment:26 Changed 3 years ago by ed

where will you document teh simple but annoying solution in lieu of a proper fix ?

comment:27 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.2
  • Total Hours changed from 3.65 to 3.85
  • Description modified (diff)

Hmmm... Drupal core has just had a security update! 6.30 is now available.

But according to https://drupal.org/SA-CORE-2014-001, none of the risks affect us. We can therefore wait for the next sensible time to update.

I also note that

Updating summary...

comment:28 Changed 3 years ago by jim

  • Cc sam added
  • Add Hours to Ticket changed from 0.0 to 0.05
  • Total Hours changed from 3.85 to 3.9
  • Description modified (diff)
  • Summary changed from Updates to TN.org -- Sept 2013 to TN.org platform and sites

Better title/description.

Also cc Sam FYI.

comment:29 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.05
  • Total Hours changed from 3.9 to 3.95

FYI I've added a note to the TN.org Update Status admin page and told it to ignore 6.30 as the security risk/fix simply does not apply to us.

Also, these notes are provided by Update Status Advanced module, and should be kept up to date and mirror any key pins/ignores in the makefile.

I'll try to do the GMap patch and associated makefile tweaks later tonight so we can then have just 'normal' update tracking on this ticket.

comment:30 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.5
  • Total Hours changed from 3.95 to 4.45

I've made a few commits to the makefile and patches folder that:

Note to make a patch that includes the binary files (marker PNGs) I had to follow the instructions here: http://mediatribe.net/en/node/63 -- e.g.

[after I had made the changes to a freshly cloned gmap-6.x-2.x-dev branch]
git diff --full-index --binary > tn03_gmap-tn-markers.patch

The key bits being the --full-index and --binary to tell Git to include non-text files in the patch.

I'll now try building the new platform to test.

comment:31 Changed 3 years ago by jim

  • Cc jim added
  • Add Hours to Ticket changed from 0.0 to 0.1
  • Description modified (diff)
  • Owner changed from jim to sam
  • Total Hours changed from 4.45 to 4.55

The S010 platform built properly, and the 'transition' folder with our markers is present here: /data/disk/tn/static/transition-network-d6-s010/sites/all/modules/contrib/gmap/markers

So the last 'non-standard' thing with our modules has been resolved and this ticket is able to just track the updates as they come in now. Reassigning to Sam for now, and updating main description so the current/best practice TN.org platform build numbers are documented.

Sam: I'll stay CCed on this ticket so can answer questions and help out as needed. Otherwise we're in great shape so it's all yours! (or delegate as you see fit!)

comment:32 Changed 3 years ago by jim

  • Add Hours to Ticket changed from 0.0 to 0.25
  • Total Hours changed from 4.55 to 4.8

There was a simple Tagadelic module security update. The latest would have been covered by the makefile anyway, but I've done a hotfix on PROD anyway as it was a drop-in replacement (no db update). So there is no need to update PRoD now...

STG and STG2 should be migrated to the S010 platform when possible, I've updated the module there too. (they're on S008 now).

Note: See TracTickets for help on using tickets.