Giter Club home page Giter Club logo

statuspage's Introduction

Statuspage

Updates Build Status codecov.io

A statuspage generator that lets you host your statuspage for free by Github. Uses issues to display incidents and labels for severity.

Demo

DEMO

See a real status page generated by this at status.pyup.io or a demo site

Before you start

You'll need to create an GitHub API token. Go to your personal settings page on GitHub and locate the Personal access tokens tab on the left. Click on Generate new token and give it a description. Make sure to check the public_repo scope. Copy the token somewhere safe, you won't be able to see it again once you leave the page.

Installation

On Mac OS X

curl -L https://github.com/pyupio/statuspage/raw/master/dist/statuspage > /usr/local/bin/statuspage
chmod +x /usr/local/bin/statuspage

On Linux

curl -L https://github.com/pyupio/statuspage/raw/master/dist/statuspage_linux > /usr/local/bin/statuspage
chmod +x /usr/local/bin/statuspage

Create a status page

To create a new status page, run

statuspage create --token=<yourtoken>
Name: mystatuspage
Systems, eg (Website,API): Website, CDN, API

You'll be prompted for the name and the systems you want to show a status for.

  • Name: This will be the name of the github repo where your status page is hosted. It will create a new GitHub repo on your account with that name, so make sure you don't use something that already exists.
  • Systems: The systems you want to show a status for. This can be your website, your API, your CDN or whatever else you are using.

The command takes a couple of seconds to run. Once ready, it will output the URLs to the issue tracker and your new status page

Create new issues at https://github.com/<login>/mystatuspage/issues
Visit your new status page at https://<login>.github.com/mystatuspage/

Create an issue

To create a new issue, go to your newly created repo and click on New Issue.

Click on the cog icon at labels on the right. What labels you choose next will tell the generator about the affected system(s) and the severity. Your system's labels are all black.

Add a systems label, eg. Website and pick a severity eg. major outage and add them to the issue.

Now, fill in the title, leave a comment and click on Submit new issue.

Go back to your commandline and type:

statuspage update --token=<yourtoken>
Name: mystatuspage

This will update your status page and show a major outage on your Website.

If you change the issue (eg. when you add a new label, create a comment or close the issue), you'll need to run statuspage update again.

Customizing

Important: All customizations have to happen in the gh-pages branch. If you are using the command line, make sure to

git checkout gh-pages

or, on the website, select the gh-pages branch before editing things.

Template

The template is fully customizable, edit template.html.

Logo

Add a logo.png to your repo's root and change template.html to point to that file.

CSS

CSS is located at style.css in the root directory. Just edit it and commit the file.

Use a subdomain

If you want to use your own domain to host your status page, you'll need to create a CNAME file in your repository and set up a CNAME record pointing to that page with your DNS provider.

If you have e.g. the domain mydomain.com, your GitHub username is myusername and you want your status page to be reachable at status.mydomain.com

  • Create a CNAME file in the root of your repository

      status.mydomain.com
    
  • Go to your DNS provider and create a new CNAME record pointing to your

        Name     Type      Value 
        status   CNAME     myusername.github.io
    

See Using a custom domain with GitHub Pages for more info.

statuspage's People

Contributors

jayfk avatar pyup-bot avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.