Setting Up WordPress for CI/CD

For long term maintenance of a WordPress ELN site, there are several considerations that we should take into account.

  • No Data Loss – Data is usually of vital importance to experiments, so in most cases we need to be careful to not lose data and have good ways of archiving the data and easily finding and using it as needed. Adherence to FAIR Data principles is important for most research data.
  • Reliable Ease of Use of the WordPress installation – In most cases, researchers want to be able to focus on their research and not on maintaining the software. Therefore, the installation should be low maintenance, function well, and be reliable as much as is feasible.

In other words, we want to run our experiments, save and analyze our data, and worry as little as possible about our ELN platform. This page is a consideration of how we might be able to do that well.

Developing and maintaining professional software in a reliable way has moved more and more towards a DevOps model for continuous integration. While this approach is not as widely used with WordPress, there are definite advantages to using DevOps for WordPress if done well. This is true for professional site-building and maintenance, but can also be applied to a graduate student keeping up an ELN on WordPress, as long as they have the right information. The right information in this case would optimally include the following pieces of information.

  1. How to build the ELN website from the ground up plugin by plugin
  2. How to easily export and import your data
  3. How to automate the above capabilities using scripting

The first piece of information is straightforward because this is how we first built our ELN website. We installed WordPress and then added appropriate plugins and set them up. The second piece of information can be straightforward also if we utilize a plugin like the Directories Pro plugin that we document in this Knowledge Base or something similar where the data can be exported in a few files and then import again using the same files.

The new piece of information concerns how these steps can be automated.