release 1.9.4: restore aptdeploy mon pages in GOA inventory
This commit is contained in:
parent
ea95fb3d8d
commit
229ef9383e
5 changed files with 23 additions and 16 deletions
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
1.9.3
|
||||
1.9.4
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ Git tags: `vMAJOR.FEATURE.FIX` (e.g. `v1.8.0`). File `VERSION` omits the `v` pre
|
|||
|
||||
| Tag | Date (UTC) | Notes |
|
||||
|-----|------------|--------|
|
||||
| **v1.9.4** | 2026-07-19 | **Fix:** restore **taler-monitoring-aptdeploy(+_err)** as first-class GOA mon page (catalog + monpages path allow + surface docs). Mail/mattermost stay folded into surface. |
|
||||
| **v1.9.3** | 2026-07-19 | **Bugfix (suite):** monpages merchant **code 21** always ERROR (bare no longer soft-WARN); apply hints use absolute `/home/hernani/koopa-caddy/…`; ship `host-agent/apply-monitoring-live.sh` (smoke array, bare check); fix ROOT-ON-KOOPA wrong `redir /path/ 302` examples. |
|
||||
| **v1.9.2** | 2026-07-19 | **Bugfix:** Caddy bare-path redir footgun — inside `handle` use `redir * /path/ 302` (not `redir /path/ 302`, which becomes `Location: 302` and bare URLs fall through to merchant **code 21**). Snippet + ROOT-APPLY: absolute apply path (`/home/hernani/koopa-caddy/…`, not `~` as root). |
|
||||
| **v1.9.1** | 2026-07-19 | **Bugfix:** stale path confusions in repo — sticky `pages_i3` no longer lists mail/mattermost/aptdeploy mon pages; lib.sh/android-test drop `scripts/taler-monitoring/`; monpages/host-agent hints match v1.8 layout; clarify GIT vs GUI vs CLI `*AUTOMATION-NOTES.md` (three files by design). |
|
||||
|
|
|
|||
|
|
@ -99,16 +99,17 @@ _host_allowed() {
|
|||
esac
|
||||
}
|
||||
|
||||
# Public page layout (v1.8.0+ simplified):
|
||||
# Public page layout (v1.9.4+):
|
||||
# • 9 landing stacks → /monitoring/ (+ /monitoring_err/ when present)
|
||||
# • ecosystem software/versions inventory → only
|
||||
# https://taler.hacktivism.ch/taler-monitoring-surface/
|
||||
# https://taler.hacktivism.ch/taler-monitoring-surface_err/
|
||||
# Legacy /taler-monitoring-{mail,mattermost,aptdeploy}* are NOT first-class pages.
|
||||
# • ecosystem software/versions → taler.hacktivism.ch/taler-monitoring-surface(+_err)/
|
||||
# • apt-src deploy tests → taler.hacktivism.ch/taler-monitoring-aptdeploy(+_err)/
|
||||
# Legacy /taler-monitoring-{mail,mattermost}* stay folded into surface (no first-class pages).
|
||||
|
||||
_path_allowed() {
|
||||
case "$1" in
|
||||
monitoring|monitoring_err|taler-monitoring-surface|taler-monitoring-surface_err) return 0 ;;
|
||||
monitoring|monitoring_err|\
|
||||
taler-monitoring-surface|taler-monitoring-surface_err|\
|
||||
taler-monitoring-aptdeploy|taler-monitoring-aptdeploy_err) return 0 ;;
|
||||
*) return 1 ;;
|
||||
esac
|
||||
}
|
||||
|
|
@ -147,8 +148,9 @@ _catalog_urls() {
|
|||
for h in bank.hacktivism.ch exchange.hacktivism.ch taler.hacktivism.ch; do
|
||||
printf 'https://%s/monitoring/\n' "$h"
|
||||
done
|
||||
# ecosystem surface only (versions / software found in Taler universe)
|
||||
# ecosystem surface (versions / software) + apt-src deploy mon page
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-surface/\n'
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-aptdeploy/\n'
|
||||
;;
|
||||
fp)
|
||||
for h in $MON_HOSTS; do
|
||||
|
|
@ -158,12 +160,13 @@ _catalog_urls() {
|
|||
done
|
||||
;;
|
||||
all|nine)
|
||||
# optional: all nine landings + surface
|
||||
# optional: all nine landings + surface + aptdeploy
|
||||
while IFS= read -r h; do
|
||||
[ -n "$h" ] || continue
|
||||
printf 'https://%s/monitoring/\n' "$h"
|
||||
done < <(_landing_nine)
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-surface/\n'
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-aptdeploy/\n'
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
|
@ -192,15 +195,16 @@ build_urls() {
|
|||
case "$inv" in
|
||||
job)
|
||||
_job_urls
|
||||
# v1.9.0: normal GOA runs always require surface page (content-checked)
|
||||
# GOA: always require surface + aptdeploy pages (content-checked)
|
||||
if [ "$fam" = "goa" ]; then
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-surface/\n'
|
||||
printf 'https://taler.hacktivism.ch/taler-monitoring-aptdeploy/\n'
|
||||
fi
|
||||
;;
|
||||
full|auto|*)
|
||||
# Always include this job’s paths (host-agent post-check).
|
||||
_job_urls
|
||||
# Stack inventory: GOA = landings + surface; FP = only FP mon hosts.
|
||||
# Stack inventory: GOA = landings + surface + aptdeploy; FP = only FP mon hosts.
|
||||
if [ "$fam" = "goa" ] || [ "$fam" = "fp" ]; then
|
||||
_catalog_urls "$fam"
|
||||
# On-disk discovery (err pages only exist after failed runs; extras welcome)
|
||||
|
|
@ -489,7 +493,7 @@ if [ "$ec" -ne 0 ]; then
|
|||
echo " FP: only FP mon hosts are checked — wire Infomaniak vhost for /monitoring*"
|
||||
fi
|
||||
if [ "$_fam" = "goa" ]; then
|
||||
echo " GOA: bank/exchange/taler /monitoring/ + taler-monitoring-surface (v1.8+ layout)"
|
||||
echo " GOA: bank/exchange/taler /monitoring/ + surface + aptdeploy (v1.9.4+ layout)"
|
||||
fi
|
||||
# Staging vs public diagnosis (host-agent sets MONPAGES_STAGING_BASE / HTML_OUT)
|
||||
_stg="${MONPAGES_STAGING_BASE:-${HTML_OUT:-${HTML_BASE:-$HOME/monitoring-sites-staging}}}"
|
||||
|
|
|
|||
|
|
@ -5,9 +5,11 @@
|
|||
# https://taler.hacktivism.ch/taler-monitoring-surface/
|
||||
# https://taler.hacktivism.ch/taler-monitoring-surface_err/
|
||||
#
|
||||
# This single page covers remote ecosystem inventory: host/port probes, nmap OS
|
||||
# This page covers remote ecosystem inventory: host/port probes, nmap OS
|
||||
# fingerprint, Mattermost, mail (firefly + anastasis), package/version signals.
|
||||
# There are NO separate public pages for mail / mattermost / aptdeploy.
|
||||
# There are NO separate public pages for mail / mattermost (folded here).
|
||||
# Apt-src deploy tests keep their own page + timer:
|
||||
# run-aptdeploy-monitoring.sh → /taler-monitoring-aptdeploy(+_err)/
|
||||
#
|
||||
# Landing-stack reports stay on each of the 9 fronts as /monitoring(/_err).
|
||||
#
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ def ui(lang: str, key: str, **kwargs) -> str:
|
|||
"pages_summary": "Public sticky-bar reports · phase monpages · part of taler-monitoring",
|
||||
"pages_i1": "These HTML reports are generated by taler-monitoring (site-gen/console_to_html.py + host-agent)",
|
||||
"pages_i2": "Landing stacks (9): /monitoring(+_err)/ on bank/exchange/merchant fronts (GOA + FP stage + FP prod)",
|
||||
"pages_i3": "Ecosystem page only: https://taler.hacktivism.ch/taler-monitoring-surface(+_err)/ — no separate mail/mattermost mon pages",
|
||||
"pages_i3": "GOA: /monitoring/ on bank+exchange+taler; surface + aptdeploy on taler.hacktivism.ch — mail/mattermost folded into surface",
|
||||
"pages_i4": "Phase monpages: outside-in check (existence + top/bottom content markers; not merchant JSON code 21)",
|
||||
"pages_i5": "Host-agent: staging → DEPLOY_WWW_ROOT; reverse-proxy must serve /monitoring* and /taler-monitoring-surface*",
|
||||
"pages_i6": "This page host: {host} · path label: {label}",
|
||||
|
|
@ -141,7 +141,7 @@ def ui(lang: str, key: str, **kwargs) -> str:
|
|||
"pages_summary": "Rapports publics sticky-bar · phase monpages · partie de taler-monitoring",
|
||||
"pages_i1": "Ces rapports HTML sont générés par taler-monitoring (site-gen/console_to_html.py + host-agent)",
|
||||
"pages_i2": "Piles landing (9) : /monitoring(+_err)/ sur bank/exchange/merchant (GOA + FP stage + FP prod)",
|
||||
"pages_i3": "Page écosystème seule : https://taler.hacktivism.ch/taler-monitoring-surface(+_err)/ — pas de pages mail/mattermost séparées",
|
||||
"pages_i3": "GOA : /monitoring/ bank+exchange+taler ; surface + aptdeploy sur taler.hacktivism.ch — mail/mattermost dans surface",
|
||||
"pages_i4": "Phase monpages : existence + marqueurs haut/bas (pas JSON merchant code 21)",
|
||||
"pages_i5": "Host-agent : staging → DEPLOY_WWW_ROOT ; le reverse-proxy sert /monitoring* et /taler-monitoring-surface*",
|
||||
"pages_i6": "Hôte de cette page : {host} · libellé : {label}",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue