I don't want to have to run annpm command, answer some questions, and then push to a repo in order to update the status page; I might not even be a person capable of doing some or all of those things. Given this uses a GitHub repo, I want to open/close a GitHub issue and have that create/resolve the incident on the status page. This PR mostly does that :)
You need to set up the issue labels, add a GitHub token as an environment variable (for fetching the issues), add a Netlify incoming hook, and set up a GitHub webhook to post to that whenever an issue/issue comment changes; once that's done, opening/closing issues, leaving comments, changing labels, etc. should all update the status page within however many seconds it takes to deploy.
It works with a script fetching all issues from the GitHub repo and constructing the corresponding incident Markdown files, rather than touch any of the existing build process. It also removes the hardcoded systems from the repository, instead using any labels coloured white #ffffff in the repo.
It would also be nice to perhaps remove the hard-coded severity so you have different levels by having different labels there too, but I thought this was enough for now! I realise this might not be something you'd want to change to, but perhaps working it in as a configuration option would be nice.
I don't want to have to run an
npm
command, answer some questions, and then push to a repo in order to update the status page; I might not even be a person capable of doing some or all of those things. Given this uses a GitHub repo, I want to open/close a GitHub issue and have that create/resolve the incident on the status page. This PR mostly does that :)I have an example running at https://statuspage.netlify.com/ (this also includes the fixes from my other PRs, hence why the top looks okay :) ). The source repo is https://github.com/dracos/netlify-statuskit-example so you can see the issues there.
You need to set up the issue labels, add a GitHub token as an environment variable (for fetching the issues), add a Netlify incoming hook, and set up a GitHub webhook to post to that whenever an issue/issue comment changes; once that's done, opening/closing issues, leaving comments, changing labels, etc. should all update the status page within however many seconds it takes to deploy.
It works with a script fetching all issues from the GitHub repo and constructing the corresponding incident Markdown files, rather than touch any of the existing build process. It also removes the hardcoded systems from the repository, instead using any labels coloured white
#ffffff
in the repo.It would also be nice to perhaps remove the hard-coded severity so you have different levels by having different labels there too, but I thought this was enough for now! I realise this might not be something you'd want to change to, but perhaps working it in as a configuration option would be nice.