This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

# Statuspage

[![Updates](https://pyup.io/repos/github/jayfk/statuspage/shield.svg)](https://pyup.io/repos/github/jayfk/statuspage/) [![Python 3](https://pyup.io/repos/github/jayfk/statuspage/python-3-shield.svg)](https://pyup.io/repos/github/jayfk/statuspage/) [![Build Status](https://travis-ci.org/jayfk/statuspage.svg?branch=master)](https://travis-ci.org/jayfk/statuspage) [![codecov.io](https://codecov.io/github/jayfk/statuspage/coverage.svg?branch=master)](https://codecov.io/github/jayfk/statuspage?branch=master)

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

## Demo

![DEMO](https://github.com/jayfk/statuspage/blob/master/demo.gif)

See a real status page generated by this at [status.pyup.io](http://status.pyup.io/) or a [demo site](https://jayfk.github.io/statuspage-demo/)

## Quickstart

Install statuspage with pip:

pip install statuspage

There are also binaries for macOS and Linux available, see [installation](docs/installation.md) for more.

Now, create an GitHub API token:

  • Go to your [Personal Access tokens](https://github.com/settings/tokens) page.
  • Click on Generate new token.
  • Make sure to check the public_repo and write:repo_hook scope.
  • Copy the token somewhere safe, you won’t be able to see it again once you leave the page.

To create a new status page, run:

statuspage create –token=<yourtoken>

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

Name: mystatuspage Systems, eg (Website,API): Website, CDN, API

Please note: This will generate a new repo under that name. Make sure it doesn’t exist already.

The command takes a couple of seconds to run. Once ready, it will output links 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/

Next, you will be asked if you want to automate the update process, so that you don’t have to run the statuspage update command whenever you change anything on your repo.

Set up automation? [y/N]: y

If you want use the service, choose y and grab a key at the [shop](https://www.statuspage-backend.com).

If you don’t want to use the service, choose n. The generator will then print the statuspage update command filled with all the details you need to update your page.

## Create an issue

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

  • Click on the cog icon next to labels on the right.
  • Choose the affected systems (black labels)
  • Choose a severity label (major outage, degraded performance, investigating)
  • Fill in the title, leave a comment and click on Submit new issue.

![Add New Issue](docs/new_issue.png)

Now, update your status page. Go back to your commandline and type:

statuspage update –token=<yourtoken> Name: mystatuspage

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.

## Adding and removing systems

In order to add or remove a system, run:

statuspage add_system –token=<token> –name=<repo> –system=<system to add> statuspage remove_system –token=<token> –name=<repo> –system=<system to remove>

## Upgrading from previous versions

First, install the latest version with pip, or grab the latest [binary](docs/installation.md):

pip install statuspage –upgrade

Updating your page to the latest version is now as simple as running:

statuspage upgrade –token=<token> –name=<repo>

followed by an update:

statuspage update –token=<token> –name=<repo>

## Translations The generated status page is translated via JavaScript on the client side using [webL10n](https://github.com/fabi1cazenave/webL10n). It detects the visitors preferred language and translates all strings automatically.

Translations are available for the following languages:

  • en
  • de

Want to add a translation? Open translations.ini and add it. Pull requests welcome!

## Customizing Want to change styles, the logo, or the footer? Check out [customizing](docs/customizing.md).

## Options

Want to create a status page for an organisation, or a private one? See [options](docs/options.md).

# Change Log All enhancements and patches to statuspage will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).

## 0.8.1 [2016-09-6] - Fixed a silly encoding error on legacy python

## 0.8.0 [2016-09-2] - Added client side translation. - Added german translation. - It’s now possible to add/remove systems from the CLI.

## 0.7.0 [2016-07-31] - Added markdown support. - Added upgrade command. - Added support for localtime. - Added support for a config file.

## 0.6.0 [2016-07-26] - Added an option to automate the update process. - Switch to PyGithub as pygithub-redux is no longer needed - Added an option to create private repositories - Beefed up the docs

## 0.5.1 [2016-07-26] - Updated dependencies: tqdm and pygithub-redux

## 0.5.0 [2016-07-26] - Systems and Panels are now ordered to make sure that no commit is issued when nothing changes (#12) - Refactored the code to make it easier to read

## 0.4.1 [2016-07-25] - Fixed a bug on python 3 where the hash function wasn’t working.

## 0.4.0 [2016-07-25] - Only commit if content differs (@Jcpetrucci)

## 0.3.3 [2016-07-13] - issued new pypi release

## 0.3.2 [2016-07-13] - fixed packaging problems by using a module - minified and merged style.css with milligram.min.css

## 0.3.1 [2016-07-12] - fixed packaging problems

## 0.3 [2016-07-12] - statuspage is now available on PyPi

## 0.2 [2016-03-08] - Added support for GitHub organizations - Makes sure that non-collaborator issues/comments are not displayed

## 0.1 [2016-03-07] - Initial release

Release History

Release History

0.8.1

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.8.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.7.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.6.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.5.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.5.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.4.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.4.0

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3.3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3.2.dev2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3.2.dev1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.2.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
statuspage-0.8.1-py2-none-any.whl (97.2 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Sep 6, 2016
statuspage-0.8.1.tar.gz (86.5 kB) Copy SHA256 Checksum SHA256 Source Sep 6, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting