[x] Create a fresh backup of the live pantheon environment. Choose from one of the options below:
[x] Option A - the Pantheon recommended way: Create a live-backup version of the live site: terminus multidev:delete --delete-branch ghgprotocol-d9.live-backupterminus multidev:create ghgprotocol-d9.live live-backup
-- OR --
[ ] Option B - for small sites with few files: Create a regular backup attached to the live site terminus backup:create ghgprotocol-d9.live
Develop Deploy:
[ ] Merge this PR (the one created in Setup above, and that you are reading this task from) into main. Wait for circleci to finish the merge tests before proceeding, then check the dev site to verify your changes went up.
[ ] For consistency's sake give the deployment the name and link for the PR(s) to main that you're deploying: this one, plus (if it was needed) the one you merged in the "If there is config to export" section above.
[ ] If the site is in Maintenance Mode, take it out of Maintenance Mode and clear your cache
[ ] Get the Pantheon main tag from the last push. You can get that running this command:
git ls-remote --tags $(terminus connection:info ghgprotocol-d9.dev --field=git_url) | grep _live_ | sort -t '/' -k 3 -V | tail -- choose the last tag in the list, without the ^{} on it.
[ ] Add that tag as a release on the main branch of the Github repo.
git checkout maingit pullgit tag -a '[pantheon_live_ABC]' -m "[Deployment message -- usually in the form of the date.]"git push --tags
[ ] Merge the main branch into the develop branch (and, if you did this on your local, push to GH).
[ ] Delete the #-ups branch and multi-dev and any other no-longer-necessary branches or multi-devs
Post-deploy tasks
[ ] Review the Content Editor's Guide, focussing on any sections just changed by the deployment and update as needed. See the wiki page for Documents or Helpful Implementation links for the location of this file.
[ ] Review the live site's list of administrators for any ThinkShout names. Remove any users who have left the company. Repeat for the Pantheon site and github repo, if individuals are listed there.
Deploying
Setup
[x] Create a fresh backup of the live pantheon environment. Choose from one of the options below:
terminus multidev:delete --delete-branch ghgprotocol-d9.live-backup
terminus multidev:create ghgprotocol-d9.live live-backup
-- OR --
terminus backup:create ghgprotocol-d9.live
Develop Deploy:
Test Deploy: Pushing up changes to test
main
that you're deploying: this one, plus (if it was needed) the one you merged in the "If there is config to export" section above.terminus remote:drush ghgprotocol-d9.test -- cr
terminus remote:drush ghgprotocol-d9.test -- updb -y
terminus remote:drush ghgprotocol-d9.test -- config-import -y
Live deploy: Pushing up changes to live/prod
live-backup
multidev is complete and successful.terminus remote:drush ghgprotocol-d9.live -- cr
terminus remote:drush ghgprotocol-d9.live -- updb -y
terminus remote:drush ghgprotocol-d9.live -- config-import
git ls-remote --tags $(terminus connection:info ghgprotocol-d9.dev --field=git_url) | grep _live_ | sort -t '/' -k 3 -V | tail
-- choose the last tag in the list, without the^{}
on it.main
branch of theGithub
repo.git checkout main
git pull
git tag -a '[pantheon_live_ABC]' -m "[Deployment message -- usually in the form of the date.]"
git push --tags
main
branch into the develop branch (and, if you did this on your local, push to GH).#-ups
branch and multi-dev and any other no-longer-necessary branches or multi-devsPost-deploy tasks