1.1.8

Preamble

  • notify all stake holders before the release.
  • for this deploy we are pulling from svn trunk
  • execute all steps in the SF ENVs first and test the application.
  • if tests pass, then execute steps on SD ENVs.
  • In the unlikely event that things go very badly, we switch over to the old application in SD.

web into MAINT mode (SF_PROD_WEB)

put the web servers into maintenance mode (SF WEB, SD WEB)

cd /var/www/html
sudo ./set_eas_mode.sh MAINT

Database Backup

Log onto the SF DB and back up the databases. The exact command line resides in the postgres user crontab.

sudo -u postgres -i
crontab -l
/home/dba/scripts/dbbackup.sh > /var/tmp/dbbackup.log

EAS ETL

Deploy new code to ETL server and run the following commands in order.

python job.py --action INIT --job migrate_to_1.1.8 --env SF_PROD
python job.py --action STAGE --job streets --env SF_PROD
python job.py --action EXECUTE --job migrate_to_1.1.8 --env SF_PROD

When we run the streets STAGE job, note that DB replication will be on. This may result in a replication delay alert from NAGIOS but it should not overwhelm replication because its well under 100K records (with line geometry).

SFGIS ETL

initialize database feature classes (delete and recreate using ArcGIS)

  • street_segments_provisional
  • street_segments_staging
  • streetnames_provisional
  • streetnames_staging
  • eas_addresses_flat_export (adds street_post_direction char(10))

deploy workspaces 

  • streets_source_to_sfgisStg_setenv.fmw
  • streets_sfgisStg_to_sfgisStg_setenv.fmw
    • change were made to account for post_direction

deploy db views

  • run sql: create_views_vw_basemap_stclines_lt.sql

Web Server

Log into SF PROD WEB and deploy the application as shown here.

# see warning at top regarding branch or trunk
cd /var/www/html
sudo ./deploy_eas_init.sh

Test the application to make sure everything works.

Deploy to SD Datacenter

If testing passes, deploy the web app to SD PROD WEB.

# see warning at top regarding branch or trunk
cd /var/www/html
sudo ./deploy_eas_init.sh

Make sure the SD web application works.

You will not be able to log into the web application in SD if DB replication is running.

Put SD PROD WEB server into STANDBY mode

cd /var/www/html
sudo ./set_eas_mode.sh STANDBY_SD

Release Notifications

  • remove 1.1.8 from road map
  • publish blog post
  • send email to stake holders using automation


    python job.py --action EXECUTE --job announce_new_release --env SF_PROD

Done!