Updating Staging to Live – WP engine and Gravity forms

Gravity forms keeps entries in the website database, this is very useful, but can be an issue if you are using wpengine to work on staging and pushing and then deploy the site and database onto the live environment, entries made on the live site could get lost.

Luckily there is the option to select which tables to deploy from staging to live – unluckily there isn’t the option to do this from staging. Below is the best process i can currently see for deploying and not breaking the gravity entries on the live site.

When a client works on the live site and there is a major set of change to be made to the site.

  • Deploy live site to staging
  • Inform users not to make changes to the live site or change permission levels
  • Make changes to staging site
  • Get sign off on staging
  • Deploy staging to live, including tables BUT excluding any tables that might have changed on the live site in the interim (e.g. gravity forms tables normally starting wp-rg- )

If the client wants to work in staging environment:

  • All changes are made in staging
  • If we deploy it for them:
    • We push live, selecting suitable tables (as above)
    • Make sure client doesn’t access or change live site
    • If client wants to view form entries, we push live back to staging when required, or they access live site just for form entries.
  • If the client deploys:
    • Client has access to both sites and shouldn’t make changes in live environment
    • They understand which tables to deploy.
    • They can access form entries in live site.