When I wrote the May 29 blog entry, “Taking a Break,” I really wasn’t trying to be prescient. But what was meant to be a gentle reminder for community members to take mental health breaks, turned into the next-to-last blog posting on this site for over a month’s time.
That’s because when the May 31 post was attempted to publish, we discovered some serious issues on the previous content management system that prevented the automated CI process from clearing content to be posted on this site.
This was most certainly not the first time this has happened. The previous system rendered markdown files hosted on a GitHub repo using the Ruby-based tool Middleman. When it worked, it was great; users could create content on a local clone of the GitHub repo and then test render the content on their local machines. Once everything looked good, content could be pushed up to remote repo and the a pull request could be created for review.
But unfortunately over the years, Middleman proved to be too fragile for regular use for our team.
The problem, really, lay not with Middleman proper but the fact that many of our users (myself included) run Fedora on our primary work machines, as opposed to RHEL or CentOS. And, as a consequence, we tend to update our machines with each new Fedora release. I can’t speak for everyone, but it’s a big reason why I run Fedora in the first place.
With each update, however, there was a chance of a mismatch between the Ruby tools installed on the Community server and someone’s local machine. Typically, this was a an every-six-month pain in the neck, but fixable. This last time, however, all attempts to correct the problem did not work.
So, a decision was made: migrate the site to a WordPress instance.
The advantages of such a move are clear:
- WordPress is stable
- WordPress is well-known and thus has a shallower learning curve
The disadvantages, though, are also clear:
- Content would not be able to be openly hosted on a public repo
- Dynamic content management systems pose higher security risks
The first disadvantage was mitigated by the fact that to date, no contributor outside Red Hat ever submitted a pull request for content of any kind. So we felt fairly sure this would not be a show stopper. The second disadvantage is a real concern, and we will maintain vigilance, while investigating other static-based solutions, just as Jekyll.
Is this the best long-term solution? Possibly. At this point, we wanted to get something in place so we could start delivering content now. Middleman is a very good tool, but it was not working for us in our use case, so we had to move forward. Questions or comments? Feel free to add comments below!