Fundraising tech/Paymentswiki upgrade

How to apply a security update edit

  • fetch the upstream LTS release with e.g. 'git fetch origin REL1_31'
    • If you are on vagrant, you may have to edit your .gitconfig to allow fetching other branches - just deleting the 'fetch' section seems to work
  • look at the changes with git diff origin/REL1_31 or git log -p HEAD..origin/REL1_31
  • get a clean changelog with git log --oneline --reverse --no-merges HEAD..origin/REL1_31 | cat
  • do the merge: git merge origin/REL1_31
  • resolve any conflicts. Note that the fundraising version of the LTS release has images added and has a different set of submodules, so be sure the merge does not delete images or add or delete submodules.
  • test locally!
  • review, merge to fundraising/REL1_31 and deploy.

Upgrade scenarios edit

Schema upgrade required edit

  • Confirm a recent database backup.
  • Disable campaigns.
  • Disable paymentswiki using LocalSettings variable.
  • Update the code to the new release.
  • Enable writability on the master wiki database (payments1001)
  • Login to payments1001, cd to the wiki root directory, and run "php maintenance/update.php".
  • Reenable paymentswiki and test.
  • Reenable campaigns.
  • Watch logs for 1 hr.

Risky, but code-only changes edit

  • Disable campaigns.
  • Disable paymentswiki using LocalSettings variable.
  • Update the code to the new release.
  • Reenable paymentswiki and test.
  • Reenable campaigns.
  • Watch logs for 1 hr.

Safe, code-only changes edit

  • Update the code to the new release.
  • Watch logs for 1 hr.