Status Update: Gitpod ❤️ Statusfy

Christian Weichel
Jan 29, 2019 · 2 min read

A core value at Gitpod is transparency: a lot of what we do is out in the open, because we believe that that’s the best way to earn the trust of our users. Until recently there was one point where we had some catching up to do in that regard: having a status page.

We had three main requirements for our status page:

  • It had to be rock solid because if your status page is not available, how am I going to trust your product?
  • It should present the status of our service, nothing else. We already have an extensive monitoring setup (based on Prometheus/Grafana/InfluxDB) that watches over our infrastructure. No need to introduce yet another monitoring solution. A surprising amount of status page projects also do monitoring/health checks on the side.
  • It had to integrate into our existing infrastructure. If we could use Git, our existing cloud infrastructure and Gitpod to update/manage our incident reports, all the better. We already have this infrastructure in place, so if we could avoid setting up a brand new website deployment, that is a plus.

Our documentation and website are statically generated from Markdown which we edit using Gitpod, push to GitHub and build/deploy using Jenkins. This pattern works well for us, it would be nice if we could use the same process for our status page.

Hello Statusfy

Enter Statusfy, an Open Source status page system that can render the status page statically or dynamically from Markdown files. It sports a wide range of deployment options, including pushing the statically generated files to a GCP bucket.

Image for post
Image for post

Turns out that Gitpod and Statusfy are perfectly complementary. Say we just found an issue and want to update the status page, the steps are as simple as:

  1. Open the gitpod-status repository in Gitpod
  2. Create a new incident using
  3. Preview the incident to make sure everything looks alright
  4. which has Jenkins pick up the changes, re-generate the status page and push it to the Google Bucket.

This setup ticks all boxes: it’s rather solid (GCP buckets have a decent track record), deals with incidents and incidents only, and fits well in our existing infrastructure.

Getting started

It took us only a couple of hours to build our status page using Statusfy. In part that’s because we had a few things in place already, but mainly because Gitpod and Statusfy make for a great team.

If you want to replicate this setup at home, create a repo on GitHub, open Gitpod on that repo and run . The next steps and deployment options are described in Statusfy’s excellent Getting Started guide.

Gitpod

Gitpod - Online IDE for GitHub

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store