Barrels of Kerosene, and Plenty of Matches to Spare

Fire! Fire! Fire!

It all started with this series of tweets.

It’s kind of a joke for those of us who have been around long enough to suffer through multiple iterations of site redesigns and upgrades, but as someone who is largely responsible for administrating his own site I’ve got to keep on top of patches and security fixes. This year Drupal released a number of emergency patches for somewhat severe exploits that caused me to drop everything and patch like mad.

I don’t say this as criticism. As far as I’m concerned, Drupal handed that exactly right. Drupal 7 and Drupal 8 both received the security patches they needed, and I was able to apply them with little fuss, and the world went on. My Drupal 7 site continued to be, at least as best as I was able to make it so, secure.

But it won’t always be that way, because I’m running Drupal 7, which is no longer the latest version of Drupal. Drupal is now at version 8, and they’ve been talking about version 9 for some time. They still support version 7, still patch version 7… but they won’t do it forever. And ever since v8 came out, I’ve been trying to figure out how to migrate from my current setup to the latest. The answer to that question (at least, the only answer I’ve found so far) can only be described as deeply unsatisfying.

The answer: you can’t, really, unless you are familiar enough with php to script something or are willing to pay someone who is to migrate your site for you.

Drupal 8 appears to have introduced a few changes and optimizations into its database. These changes have made some of the database tables I’m using… go away? As best I can figure. So when I try to use their manual migration tools, content on my site remains in unused, unaccessed parts of my database and all of the images on my site disappear. In some cases, text disappears. It’s not gone, but Drupal 8 won’t show it until I convert it over to something it recognizes. Which none of its migration tools will do.

Apparently.

That is what led to the tweet I linked at the top of the article. I’ve always been kind of frustrated with Drupal’s upgrade process–it’s never been particularly easy–but this began to feel like a deliberate act of backstabbing. Drupal 6 had a clearer upgrade path to 8 than D7 did. I felt after they cajoled and threatened me on to D7 (which was a painful and mind-breaking upgrade process in its own right) they decided to offer me up as a sacrificial lamb, because figuring out how to adequately support D7 to D8 migration would be too goddamn hard and they didn’t want to put in the work.

So screw ’em. I’m migrating to WordPress.

I’ve already made a fair amount of progress. So far I’ve moved over:

  • All articles
  • All fiction
  • Kernel Panic, Old Skool Webcomic, and PCTown archives

But there are still a few outstanding items:

  • Help Desk archives (this is obviously a rather large outstanding task)
  • Podcasts (most of the very old ones will be going away)
  • Forums
  • Static Pages (comic info pages, fiction info pages, etc)
  • Comic archive pages
  • First comic/last comic navigation elements

I have a plugin that will let me migrate user accounts, but I haven’t decided if I’m going to use it yet. Right now on eviscerati.org, bot accounts outnumber real accounts by a ratio of about 12,000:1. It might be easier just to have everyone create brand-new WordPress accounts, if they really want them).

All of this is eminently doable. The question is: when will it all be done?

The answer is “sooner, rather than later.” The biggest thing to move over are all the Help Desk comics, but I’ve already uploaded all the comic images. Recreating the archives will be a somewhat painful process, but I already know the process and it’s not horrible. I was able to get the Kernel Panic archives up in an evening–that’s 114 comics. So 2300 Help Desk comics could be done inside a month if I really wanted to get it over and done with. Once that is out of the way, then the new site goes forward in much the same way the old one did, only as a WordPress site instead of as a Drupal one.

That’s where we are today. The site migration is currently taking place over at dtcweb.com, please feel free to kick the tires and flag bugs as you find them.

3 comments

Leave a Reply

Your email address will not be published. Required fields are marked *