Skip to content

Commit

Permalink
feat: bootstrap upptime
Browse files Browse the repository at this point in the history
  • Loading branch information
emmanuelgautier committed Sep 30, 2024
1 parent 4aef26f commit 3a6b613
Show file tree
Hide file tree
Showing 94 changed files with 58 additions and 944 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/graphs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Generate graphs
uses: upptime/[email protected]
with:
command: "graphs"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
4 changes: 2 additions & 2 deletions .github/workflows/response-time.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Update response time
uses: upptime/[email protected]
with:
command: "response-time"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}
14 changes: 7 additions & 7 deletions .github/workflows/setup.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,41 +31,41 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Update template
uses: upptime/[email protected]
with:
command: "update-template"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
- name: Update response time
uses: upptime/[email protected]
with:
command: "response-time"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}
- name: Update summary in README
uses: upptime/[email protected]
with:
command: "readme"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
- name: Generate graphs
uses: benc-uk/workflow-dispatch@v1
with:
workflow: Graphs CI
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Generate site
uses: upptime/[email protected]
with:
command: "site"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
- uses: peaceiris/actions-gh-pages@v4
name: GitHub Pages Deploy
with:
github_token: ${{ secrets.GH_PAT || github.token }}
github_token: ${{ secrets.PAT || github.token }}
publish_dir: "site/status-page/__sapper__/export/"
force_orphan: "false"
user_name: "Upptime Bot"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,17 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Generate site
uses: upptime/[email protected]
with:
command: "site"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
- uses: peaceiris/actions-gh-pages@v4
name: GitHub Pages Deploy
with:
github_token: ${{ secrets.GH_PAT || github.token }}
github_token: ${{ secrets.PAT || github.token }}
publish_dir: "site/status-page/__sapper__/export/"
force_orphan: "false"
user_name: "Upptime Bot"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/summary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Update summary in README
uses: upptime/[email protected]
with:
command: "readme"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
4 changes: 2 additions & 2 deletions .github/workflows/update-template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Update template
uses: upptime/uptime-monitor@master
with:
command: "update-template"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
4 changes: 2 additions & 2 deletions .github/workflows/updates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Update code
uses: upptime/updates@master
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
4 changes: 2 additions & 2 deletions .github/workflows/uptime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,11 @@ jobs:
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT || github.token }}
token: ${{ secrets.PAT || github.token }}
- name: Check endpoint status
uses: upptime/[email protected]
with:
command: "update"
env:
GH_PAT: ${{ secrets.GH_PAT || github.token }}
GH_PAT: ${{ secrets.PAT || github.token }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}
54 changes: 28 additions & 26 deletions .upptimerc.yml
Original file line number Diff line number Diff line change
@@ -1,36 +1,38 @@
# Change these first
owner: upptime # Your GitHub organization or username, where this repository lives
repo: upptime # The name of this repository
owner: cerberauth
repo: upptime

sites:
- name: Google
url: https://www.google.com
- name: Wikipedia
url: https://en.wikipedia.org
- name: Hacker News
url: https://news.ycombinator.com
- name: Test Broken Site
url: https://thissitedoesnotexist.koj.co
- name: IPv6 test
url: forwardemail.net
port: 80
- name: CerberAuth Auth
url: https://auth.cerberauth.com/health/ready
- name: CerberAuth OpenID Connect Provider
url: https://oauth.cerberauth.com/health/ready
- name: TestID
url: https://testid.cerberauth.com/health/ready
- name: CerberAuth Schemas
url: https://schemas.cerberauth.com
- name: CerberAuth
url: https://www.cerberauth.com
- name: VulnAPI
url: https://vulnapi.cerberauth.com
- name: Nacho
url: https://nacho.cerberauth.com
- name: Taco
url: https://taco.cerberauth.com
- name: Status Page
url: https://status.cerberauth.com
- name: Telemetry
url: telemetry.cerberauth.com
port: 443
check: "tcp-ping"
ipv6: true

status-website:
# Add your custom domain name, or remove the `cname` line if you don't have a domain
# Uncomment the `baseUrl` line if you don't have a custom domain and add your repo name there
cname: demo.upptime.js.org
# baseUrl: /your-repo-name
cname: status.cerberauth.com
logoUrl: https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/icon.svg
name: Upptime
introTitle: "**Upptime** is the open-source uptime monitor and status page, powered entirely by GitHub."
introMessage: This is a sample status page which uses **real-time** data from our [GitHub repository](https://github.com/upptime/upptime). No server required — just GitHub Actions, Issues, and Pages. [**Get your own for free**](https://github.com/upptime/upptime)
name: CerberAuth Status
introTitle: "CerberAuth Status"
introMessage: "Monitor CerberAuth's services uptime and status"
navbar:
- title: Status
href: /
- title: GitHub
href: https://github.com/$OWNER/$REPO

# Upptime also supports notifications, assigning issues, and more
# See https://upptime.js.org/docs/configuration
href: https://github.com/$OWNER
93 changes: 7 additions & 86 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,12 @@
# [![Upptime](https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/logo.svg)](https://upptime.js.org)
# CerberAuth Services Uptime

<!--start: description-->
[![Uptime CI](https://github.com/cerberauth/upptime/workflows/Uptime%20CI/badge.svg)](https://github.com/cerberauth/upptime/actions?query=workflow%3A%22Uptime+CI%22)
[![Response Time CI](https://github.com/cerberauth/upptime/workflows/Response%20Time%20CI/badge.svg)](https://github.com/cerberauth/upptime/actions?query=workflow%3A%22Response+Time+CI%22)
[![Graphs CI](https://github.com/cerberauth/upptime/workflows/Graphs%20CI/badge.svg)](https://github.com/cerberauth/upptime/actions?query=workflow%3A%22Graphs+CI%22)
[![Static Site CI](https://github.com/cerberauth/upptime/workflows/Static%20Site%20CI/badge.svg)](https://github.com/cerberauth/upptime/actions?query=workflow%3A%22Static+Site+CI%22)
[![Summary CI](https://github.com/cerberauth/upptime/workflows/Summary%20CI/badge.svg)](https://github.com/cerberauth/upptime/actions?query=workflow%3A%22Summary+CI%22)

**Upptime** (https://upptime.js.org) is the open-source uptime monitor and status page, powered entirely by GitHub Actions, Issues, and Pages. It's made with 💚 by [Anand Chowdhary](https://anandchowdhary.com), supported by [Pabio](https://pabio.com).

> I find Upptime an incredible clever usage of \[GitHub Actions]. You essentially get a free configurable uptime monitor for whatever you want. – [CSS Tricks](https://css-tricks.com/upptime/)
Upptime is used by [**1,000+**](https://github.com/topics/upptime) people and teams to ensure they know when their endpoints go down.

<!--end: description-->

[![Uptime CI](https://github.com/upptime/upptime/workflows/Uptime%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Uptime+CI%22)
[![Response Time CI](https://github.com/upptime/upptime/workflows/Response%20Time%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Response+Time+CI%22)
[![Graphs CI](https://github.com/upptime/upptime/workflows/Graphs%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Graphs+CI%22)
[![Static Site CI](https://github.com/upptime/upptime/workflows/Static%20Site%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Static+Site+CI%22)
[![Summary CI](https://github.com/upptime/upptime/workflows/Summary%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Summary+CI%22)

## [📈 Live Status](https://demo.upptime.js.org): <!--live status--> **🟧 Partial outage**
## [📈 Live Status](https://status.cerberauth.com): <!--live status--> **🟧 Partial outage**

<!--start: status pages-->
<!-- This summary is generated by Upptime (https://github.com/upptime/upptime) -->
Expand All @@ -32,75 +22,6 @@ Upptime is used by [**1,000+**](https://github.com/topics/upptime) people and te

<!--end: status pages-->

<!--start: docs-->

## ⭐ How it works

- GitHub Actions is used as an uptime monitor
- Every 5 minutes, a workflow visits your website to make sure it's up
- Response time is recorded every 6 hours and committed to git
- Graphs of response time are generated every day
- GitHub Issues is used for incident reports
- An issue is opened if an endpoint is down
- People from your team are assigned to the issue
- Incidents reports are posted as issue comments
- Issues are locked so non-members cannot comment on them
- Issues are closed automatically when your site comes back up
- Slack notifications are sent on updates
- GitHub Pages is used for the status website
- A simple, beautiful, and accessible PWA is generated
- Built with Svelte and Sapper
- Fetches data from this repository using the GitHub API

_Upptime is not affiliated to or endorsed by GitHub._

[![Screenshot of status website](https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-status.png)](https://upptime.js.org)

## 👩‍💻 [Documentation](https://upptime.js.org)

1. [How it works](https://upptime.js.org/docs)
1. [Getting started](https://upptime.js.org/docs/get-started)
1. [Configuration](https://upptime.js.org/docs/configuration)
1. [Triggers](https://upptime.js.org/docs/triggers)
1. [Notifications](https://upptime.js.org/docs/notifications)
1. [Badges](https://upptime.js.org/docs/badges)
1. [Packages](https://upptime.js.org/docs/packages)
1. [Contributing](https://upptime.js.org/docs/contributing)
1. [Frequently Asked Questions](https://upptime.js.org/docs/faq)

### Concepts

#### Issues as incidents

When the GitHub Actions workflow detects that one of your URLs is down, it automatically opens a GitHub issue ([example issue #67](https://github.com/upptime/upptime/issues/67)). You can add incident reports to this issue by adding comments. When your site comes back up, the issue will be closed automatically as well.

<table>
<tr>
<td>
<img alt="Screenshot of GitHub issue" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-issue.png">
</td>
<td>
<img alt="Screenshot of incident page" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-incident.png">
</td>
</tr>
</table>

#### Commits for response time

Four times per day, another workflow runs and records the response time of your websites. This data is committed to GitHub, so it's available in the commit history of each file ([example commit history](https://github.com/koj-co/upptime/commits/master/history/wikipedia.yml)). Then, the GitHub API is used to graph the response time history of each endpoint and to track when a site went down.

<table>
<tr>
<td>
<img alt="Screenshot of GitHub commits" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-history.png">
</td>
<td>
<img alt="Screenshot of live status" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-live-status.png">
</td>
</tr>
</table>
<!--end: docs-->

## 📄 License

- Code: [MIT](./LICENSE) © [Anand Chowdhary](https://anandchowdhary.com), supported by [Pabio](https://pabio.com)
Expand Down
1 change: 0 additions & 1 deletion api/google/response-time-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/response-time-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/response-time-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/response-time-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/response-time.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/uptime-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/uptime-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/uptime-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/uptime-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/google/uptime.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/response-time-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/response-time-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/response-time-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/response-time-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/response-time.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/uptime-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/uptime-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/uptime-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/uptime-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/hacker-news/uptime.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/response-time-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/response-time-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/response-time-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/response-time-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/response-time.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/uptime-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/uptime-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/uptime-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/uptime-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/i-pv6-test/uptime.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/response-time-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/response-time-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/response-time-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/response-time-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/response-time.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/uptime-day.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/uptime-month.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/uptime-week.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/uptime-year.json

This file was deleted.

1 change: 0 additions & 1 deletion api/test-broken-site/uptime.json

This file was deleted.

Loading

0 comments on commit 3a6b613

Please sign in to comment.