...
1 - Preamble
- eas changeset id: <eas-changeset-id>identifier: e7696197ffe0
- sfeas_config changeset id: <sfeas_config-changeset-id>identifier: 91ac3c3c21bf
This deployment will consist of the follow following general steps:
- Send an email to DT-EAS-User-Group and CC-ed to DT-SFGIS-User-Group to let them know that the version release has begun.
- Perform the steps below in the San Francisco production environment (SF PROD *) and then test the application in that environment.
- If the application passes its tests, then perform the steps below in the disaster recovery production environment (DR PROD *) and then test the application in that environment.
- In the unlikely event that things go very badly, we would switch over to the previous version of the application in the disaster recovery production environment (DR PROD *).
...
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd /var/www/html
sudo ./set_eas_mode.sh MAINT |
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd /var/www/html
sudo ./set_eas_mode.sh MAINT |
...
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
sudo -u postgres -i
/home/dba/scripts/dbbackup.sh > /var/tmp/dbbackup.log |
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
# You should receive an email notifying you of the status of the backup.
# The database backup log file is another source of information about the
# outcome of the backups. Note that an empty database backup log file
# indicates that the backups were successful.
ls -la /var/tmp/dbbackup.log
cat /var/tmp/dbbackup.log
# The existence of the database backups can also be confirmed directly
# from the command line:
ls -la /mnt/backup/pg/daily/easproddb.sfgov.org-* |
- Database backup was verified
4 - Deploy Automation Scripts (SF only)
There is no DR PROD AUTO machine.
- Deploy the automation scripts to SF PROD AUTO per the instructions that are on * * AUTO Server. If you staged the compressed repositories ahead of time, then you can use these commands to deploy the automation scripts:
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd C:\apps\
python eas_automation_deploy.py eas_automation |
5 - Deploy the Web Application (SF)
- Deploy the Web application to SF PROD WEB per the Deployment Workaround for 2018 TLS 1.2 Compatibility Issueinstructions that are on * * WEB Server. If you stage staged the uncompressed repositories ahead of time, then you can use these commands to deploy the Web application:
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd /var/www/html
sudo ./deploy_eas_init.sh <eas-changeset-id> <sfeas_config-changeset-id>e7696197ffe0 91ac3c3c21bf samuelvaldez |
- Test the application to make sure everything works.
...
6 - Deploy the Web Application (DR)
Note |
---|
title | Disable Database Replication? |
---|
|
You will not be able to log into the Web application in the disaster recovery production environment (DR PROD WEB) if database replication is running. |
- If testing in the San Francisco production environment (SF PROD *) is successful, then deploy the Web application to the disaster recovery production environment (DR PROD *) with steps that parallel those that were used performed in the San Francisco production environment (* PROD WEB only).
- Make sure that the disaster recovery production environment Web application functions correctly.
- Testing the disaster recovery production environment Web application surfaced this issue: DR PROD WEB/GEO cannot connect to DR PROD DB
- Place the disaster recovery Web server (DR PROD WEB) into standby mode:
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd /var/www/html
sudo ./set_eas_mode.sh STANDBY_DR |
...
7 - Release Notifications
- Remove 1.3.7 8 from the road map.
- Publish the blog post for this release. Ideally, this blog post would have already been drafted. An example is Release 1.3.6.
- Log on to the automation machine (SF PROD AUTO) and run the following job to send the release announcement to stake holders:
Code Block |
---|
language | bash |
---|
linenumbers | true |
---|
|
cd C:\apps\eas_automation\automation\src
python job.py --action EXECUTE --job announce_new_release --env SF_PROD |
...
- This release announcement will also be sent to the Yammer All Company group, so check your email inbox for the request from Yammer to post the release announcement there.
- Return to Step 18 26 of the release checklist because you are all done here!
...