Compare commits

..

2 Commits

Author SHA1 Message Date
Adam Janiš 66bab8d9c7 fix: config indentation 2022-02-06 12:20:45 +01:00
My Name is Tito 81b35546c3 updated 2022-02-06 19:32:57 +13:00
12 changed files with 72 additions and 110 deletions
+4
View File
@@ -0,0 +1,4 @@
# These are supported funding model platforms
github: eidam
ko_fi: eidam
@@ -22,12 +22,13 @@ jobs:
env:
NODE_ENV: production
- name: Publish
uses: cloudflare/wrangler-action@v3
uses: cloudflare/wrangler-action@1.3.0
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
preCommands: |
wrangler kv:namespace create KV_STATUS_PAGE || true
export KV_NAMESPACE_ID=$(npx @cloudflare/wrangler@1 kv:namespace list 2> >(tee stderr.log >&2) | head -1 | node -pe "JSON.parse(fs.readFileSync('/dev/stdin').toString()).find(kv => kv.title.includes('KV_STATUS_PAGE')).id")
wrangler kv:namespace create KV_STATUS_PAGE
apt-get update && apt-get install -y jq
export KV_NAMESPACE_ID=$(wrangler kv:namespace list | jq -c 'map(select(.title | contains("KV_STATUS_PAGE")))' | jq -r ".[0].id")
echo "[env.production]" >> wrangler.toml
echo "kv_namespaces = [{binding=\"KV_STATUS_PAGE\", id=\"${KV_NAMESPACE_ID}\"}]" >> wrangler.toml
[ -z "$SECRET_SLACK_WEBHOOK_URL" ] && echo "Secret SECRET_SLACK_WEBHOOK_URL not set, creating dummy one..." && SECRET_SLACK_WEBHOOK_URL="default-gh-action-secret" || true
-1
View File
@@ -1,5 +1,4 @@
# Cloudflare Worker - Status Page
[![Deploy](https://github.com/LAX18/cf-workers-status-page/actions/workflows/deploy.yml/badge.svg)](https://github.com/LAX18/cf-workers-status-page/actions/workflows/deploy.yml)
Monitor your websites, showcase status including daily history, and get Slack notification whenever your website status changes. Using **Cloudflare Workers**, **CRON Triggers,** and **KV storage**. Check [my status page](https://status-page.eidam.dev) out! 🚀
+28 -89
View File
@@ -1,7 +1,7 @@
settings:
title: 'Status Page'
title: 'Killzone Gaming Status'
url: 'https://status-page.eidam.dev' # used for Slack messages
logo: LAX18.jpeg # image in ./public/ folder
logo: logo-192x192.png # image in ./public/ folder
daysInHistogram: 90 # number of days you want to display in histogram
collectResponseTimes: true # collects avg response times from CRON locations
@@ -15,98 +15,37 @@ settings:
dayInHistogramNotOperational: ' incident(s)' # xx incident(s) recorded
monitors:
- id: nicholaspease.com
name: Portfolio
url: 'https://www.nicholaspease.com/'
- id: www-kzg-gg # unique identifier
name: kzg.gg | Killzone Gaming Forums
description: '' # default=empty
url: 'https://kzg.gg' # URL to fetch
method: GET # default=GET
expectStatus: 200 # operational status, default=200
followRedirect: false # should fetch follow redirects, default=false
linkable: false # allows the title to be a link, default=true
- id: www-bans-kzg-gg
name: bans.kzg.gg | Killzone Gaming SourceBans
description: 'Built for anything connected to the Internet.'
url: 'https://stats.kzg.gg'
method: GET
expectStatus: 200
linkable: true # allows the title to be a link, default=true
- id: stats-kzg-gg
name: stats.kzg.gg | Killzone Gaming Statistics
url: 'https://stats.kzg.gg'
method: GET
expectStatus: 200
- id: server1.nicholaspease.com
name: Server1 Homepage
url: 'https://server1.nicholaspease.com/'
- id: steamid-kzg-gg
name: steamid.kzg.gg | Killzone Gaming SteamID
url: 'https://steamid.kzg.gg'
method: GET
expectStatus: 200
- id: plex.nicholaspease.com
name: Plex
url: 'https://plex.nicholaspease.com/'
method: GET
expectStatus: 401
- id: radarr.nicholaspease.com/
name: Radarr
url: 'https://radarr.nicholaspease.com/'
method: GET
expectStatus: 401
- id: sonarr.nicholaspease.com
name: Sonarr
url: 'https://sonarr.nicholaspease.com/'
- id: shorturl-kzg-gg
name: kzg.link | Killzone Gaming URL Shortner
url: 'https://kzg.link'
method: GET
expectStatus: 200
- id: bittorrent.nicholaspease.com
name: qBittorrent
url: 'https://bittorrent.nicholaspease.com/'
method: GET
expectStatus: 200
- id: prowlarr.nicholaspease.com
name: Prowlarr
url: 'https://prowlarr.nicholaspease.com/'
method: GET
expectStatus: 401
- id: bazarr.nicholaspease.com
name: Bazarr
url: 'https://bazarr.nicholaspease.com/'
method: GET
expectStatus: 200
- id: petio.nicholaspease.com
name: Petio
url: 'https://petio.nicholaspease.com/'
method: GET
expectStatus: 200
- id: tautulli.nicholaspease.com
name: Tautulli
url: 'https://tautulli.nicholaspease.com/'
method: GET
expectStatus: 303
- id: gitea.nicholaspease.com
name: Gitea
url: 'https://gitea.nicholaspease.com/explore/repos'
method: GET
expectStatus: 200
- id: coder.nicholaspease.com
name: Coder
url: 'https://coder.nicholaspease.com/'
method: GET
expectStatus: 200
- id: drone.nicholaspease.com
name: Drone CI
url: 'https://drone.nicholaspease.com/'
method: GET
expectStatus: 303
- id: waakaapi.nicholaspease.com
name: WakaAPI
url: 'https://wakaapi.nicholaspease.com/'
method: GET
expectStatus: 200
- id: proxmox.nicholaspease.com
name: Proxmox
url: 'https://proxmox.nicholaspease.com/'
method: GET
expectStatus: 302
- id: netdata.nicholaspease.com
name: Netdata
url: 'https://netdata.nicholaspease.com'
method: GET
expectStatus: 302
+1 -1
View File
@@ -23,7 +23,7 @@
"devDependencies": {
"autoprefixer": "^10.0.2",
"node-fetch": "^2.6.1",
"postcss": "^8.2.13",
"postcss": "^8.2.10",
"postcss-cli": "^8.3.0",
"prettier": "^2.2.0",
"tailwindcss": "^2.0.1",
+20 -1
View File
@@ -88,7 +88,26 @@ export default function Index({ config, kvMonitors, kvMonitorsLastUpdate }) {
/>
)
})}
<div className="flex flex-row justify-between mt-4 text-sm">
<div>
Powered by{' '}
<a href="https://workers.cloudflare.com/" target="_blank">
Cloudflare Workers{' '}
</a>
&{' '}
<a href="https://flareact.com/" target="_blank">
Flareact{' '}
</a>
</div>
<div>
<a
href="https://github.com/eidam/cf-workers-status-page"
target="_blank"
>
Get Your Status Page
</a>
</div>
</div>
</div>
</div>
)
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

+1 -1
View File
@@ -64,7 +64,7 @@ export async function notifySlack(monitor, operational) {
}
export async function notifyTelegram(monitor, operational) {
const text = `Monitor *${monitor.name.replaceAll(
const text = `Monitor *${monitor.name.replace(
'-',
'\\-',
)}* changed status to *${getOperationalLabel(operational)}*
+1 -1
View File
@@ -6,7 +6,7 @@ webpack_config = "node_modules/flareact/webpack"
compatibility_date = "2021-07-23"
[triggers]
crons = ["*/5 * * * *"]
crons = ["*/2 * * * *"]
[site]
bucket = "out"
+13 -13
View File
@@ -2874,9 +2874,9 @@ events@^3.0.0:
integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==
eventsource@^1.0.7:
version "1.1.1"
resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.1.1.tgz#4544a35a57d7120fba4fa4c86cb4023b2c09df2f"
integrity sha512-qV5ZC0h7jYIAOhArFJgSfdyz6rALJyb270714o7ZtNnw2WSJ+eexhKtE0O8LYPRsHZHf2osHKZBxGPvm3kPkCA==
version "1.0.7"
resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.0.7.tgz#8fbc72c93fcd34088090bc0a4e64f4b5cee6d8d0"
integrity sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==
dependencies:
original "^1.0.0"
@@ -4609,9 +4609,9 @@ nan@^2.12.1:
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
nanoid@^3.1.12, nanoid@^3.1.22:
version "3.3.4"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
version "3.1.23"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.23.tgz#f744086ce7c2bc47ee0a8472574d5c78e4183a81"
integrity sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==
nanomatch@^1.2.9:
version "1.2.13"
@@ -5862,10 +5862,10 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2
source-map "^0.6.1"
supports-color "^6.1.0"
postcss@^8.1.6, postcss@^8.2.13:
version "8.2.13"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.13.tgz#dbe043e26e3c068e45113b1ed6375d2d37e2129f"
integrity sha512-FCE5xLH+hjbzRdpbRb1IMCvPv9yZx2QnDarBEYSN0N0HYk+TcXsEhwdFcFb+SRWOKzKGErhIEbBK2ogyLdTtfQ==
postcss@^8.1.6, postcss@^8.2.10:
version "8.2.10"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.10.tgz#ca7a042aa8aff494b334d0ff3e9e77079f6f702b"
integrity sha512-b/h7CPV7QEdrqIxtAf2j31U5ef05uBDuvoXv6L51Q4rcS1jdlXAVKJv+atCFdUXYl9dyTHGyoMzIepwowRJjFw==
dependencies:
colorette "^1.2.2"
nanoid "^3.1.22"
@@ -7256,9 +7256,9 @@ urix@^0.1.0:
integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
url-parse@^1.4.3:
version "1.5.10"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1"
integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==
version "1.5.1"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.1.tgz#d5fa9890af8a5e1f274a2c98376510f6425f6e3b"
integrity sha512-HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==
dependencies:
querystringify "^2.1.1"
requires-port "^1.0.0"