Behind the Curtain: How do we run the DGC Website

If you’re a common reader of this blog (or you’ve seen me speak over the years) I very very commonly reference “the Drupal GovCon site” and or “the Drupal GovCon repository” on Github. This week I had a chance to do a webinar for Drupal4Gov to dig into how we use this repository to run https://drupalgovcon.org.

The session was recorded if you weren’t able to attend (and I’ve embedded further down in this post). But! I wanted to take a moment here to talk about why I spend so much time talking about this particular repository.

Using Drupal

I think other than composer, one of the things I struggled most with when trying to learn Drupal 8 was finding real, practical examples. So I saw all this great material at DrupalCon, I found a ton of great documentation on new and exciting things (like Dependency Injection, Dependency Management, Object Oriented PHP, etc.) but I could never find real world examples of these concepts in practice.

As a consultant at Acquia, I get to work on some of the biggest, most complex Drupal builds out there! But, in almost all circumstances I am tied by non disclosure agreements that prevent me from talking about what we did and who we did it for. So, I have a ton of great examples! But I can never share them publicly.

The GovCon codebase is that rare creature that has been developed following the methodology that our Professional Services team relies on, follows best practices with regards to local development, configuration management, continuous integration, deployment to Acquia, etc. AND it’s fully public.

If you think about many of the recent, major changes that have come from the Drupal community (things like Drupal 9, Lightning End of Life, PHP 7.4, Composer 2, etc.) these are all hurdles that the GovCon site has had to work to deal with. As a result, each of them has a pull request (or a few pull requests). The repository then not only gives you an example of how things are done in practice, but also some solid examples of performing regular maintenance or handling these major updates!

I hope you enjoy the webinar, and I hope you use the GovCon repo as an example. If you haven’t go check it out! It’s public, and you can clone it and get started using it with just a few commands:

  • git clone (to pull down the repo)

  • composer install (to install dependencies)

  • lando start (to provision the VM)

  • lando blt setup (to install Drupal)

Webinar

Related Content