...
Create Wordpress Instance
Replicate Production
Sitemap Screenshots
Deploy theme
Deploy plugins
Verify Screenshots
Perform a test of a Wordpress
...
upgrade
We check for wordpress and nginx upgrades with a github actions cron job. This is a more complex process that involves several workflows over multiple repositories.
Every Monday at midnight, a workflow from the wordpress-deploy-digimod repository compares the version found in the dockerfile of the build configuration for wordpress, and compares it to the latest version found in dockerhub. If these are not the same, it updates the dockerfile in the repository.
A second workflow is then triggered when the dockerfile is updated, which builds the image and updates the image in openshift, under the ‘latest’ tag.
A third workflow in the wordpress-digimod repository operates on a cron job scheduled at 1AM on Monday, one hour after the first workflow is executed. It checks the status of the second workflow; if it is successful, it deploys the new version of wordpress to digital-latest. It first deploys from the dev tag, then takes screenshots, deploys from the latest tag, and then compares.
Configure the SSO for a site
WordPress deployments can be configured for SSO integration with Keycloak. The integrations are managed through the CSS app. SSO is managed on the client side with the MiniOrange OAuth plugin. Sites in Dev, Test, and Prod all must use different client credentials, so they must be set up differently. This can be set up by running the Reconfigure SSO workflow. Note that both the MiniOrange OAuth plugin and the digimod-misc plugin (which contains the wordpress script for changing the MiniOrange configuration) must already be installed on the site for this to work. This can be done either from an Export from production, deploy plugins, or deploy plugin workflow.
Export from
...
production
You can perform a site backup from production and import it to the specified environment
for digital-site-name
.apps.gov.bc.ca. This can be done by running the Site Export from Production workflow.
Migration to production
You can perform a migration to production and import it from the specified environment
and site digital-site-name
.apps.gov.bc.ca. This can be done by running the Site Export from Production workflow.