koopa-admin-log/scripts/taler-monitoring/GIT-AUTOMATION-NOTES.md
Hernâni Marques cce1fcbe09
docs: git commit/push cadence 7–11 min + helper script
Match historical area: message style; optional cadence commit/push helper.
2026-07-17 20:03:46 +02:00

5.1 KiB
Raw Blame History

Git / automation notes (taler-monitoring + mobile)

Notes for automated checks around the Taler stacks (GOA, stage TESTPAYSAN, …). CLI monitoring lives in this directory; Android wallet UI automation is separate tooling and is not installed on the default ops laptop yet.


Git commit / push cadence (existing model)

Observed in koopa-admin-log and francpaysan-admin-log histories (active work on 2026-07-17):

Rule Practice
Interval About 711 minutes between publishable steps while a topic is open (bursts of 02min are fine for tiny follow-ups)
Message area: short description — e.g. monitoring: …, landings: …, docs: …, scripts: …, todo: …
Size One logical change (or a tight bundle), not end-of-day megacommits
Push After each commit when the remote accepts auth (git push origin …)

Agent / human workflow

  1. Finish a small slice of work.
  2. git status / diff → commit with the area-prefix style.
  3. git push (or run the helper below).
  4. Continue; next commit window ~711 min later (or sooner if the next slice is ready).

Helper script

From the admin-log root:

# dry-run
CADENCE_DRY=1 ./scripts/git-cadence-commit-push.sh

# commit + push this repo if dirty (skips secrets.env / *password* / *token*)
./scripts/git-cadence-commit-push.sh

# other checkout
./scripts/git-cadence-commit-push.sh ~/taler/src/francpaysan-admin-log

Optional timer (every 9min ≈ mid of 711):

# user crontab example
*/9 * * * * $HOME/src/koopa/koopa-admin-log/scripts/git-cadence-commit-push.sh >>$HOME/.cache/git-cadence-koopa.log 2>&1
*/9 * * * * $HOME/src/koopa/koopa-admin-log/scripts/git-cadence-commit-push.sh $HOME/taler/src/francpaysan-admin-log >>$HOME/.cache/git-cadence-lfp.log 2>&1

Auth note (this host): francpaysan-admin-logssh://git@git.gnunet.org/… works.
koopa-admin-loghttps://git.hacktivism.ch/… needs credentials / SSH key for git.hacktivism.ch (push may stay local until that is fixed).

What runs without Android

Phase Needs
urls / sanity public HTTPS only
inside / versions SSH (koopa or francpaysan-stage-user)
e2e / ladder taler-wallet-cli + bank/merchant secrets
./taler-monitoring.sh -d stage.lefrancpaysan.ch urls
./taler-monitoring.sh -d stage.lefrancpaysan.ch e2e   # after secrets.env

Mobile app checks (manual withdraw/pay, then automation) are out of band until the software below is present.


Android automation software — required (not installed yet)

To automate GNU Taler Wallet on Android (stable + master builds; manual then auto withdraw; fixed + variable pay) against stage TESTPAYSAN, the following must be available on the runner host.

Status on this host (2026-07-17)

Component Status
Java (OpenJDK 21) present (/usr/bin/java)
aapt / aapt2 present
adb (platform-tools) missing (package was removed: android-tools-adb rc)
Android SDK (ANDROID_HOME / ANDROID_SDK_ROOT) missing / empty
Emulator + AVD missing
Appium / Maestro / uiautomator2 missing
scrcpy missing (optional)

Must install before mobile automation

  1. Android platform-tools — at least adb
    • Debian: android-tools-adb (and preferably full SDK platform-tools)
  2. Android SDK command-line toolssdkmanager, platforms, build-tools
    • set ANDROID_HOME (or ANDROID_SDK_ROOT) permanently
  3. System image + AVD — for emulator runs (x86_64 or host-matching ABI)
    • emulator, avdmanager, KVM/acceleration if available
  4. UI automation stack (pick one, prefer the leaner path for wallet flows):
    • Maestro, or
    • Appium + UiAutomator2 (+ Node/Python bindings as needed)
  5. Optional: scrcpy for live view during manual debugging

Explicitly out of scope until freigabe

  • Installing production wallet APKs and driving real stage withdraw/pay
    without a human go-ahead
  • Committing secrets, device serials, or APK binaries into git

Operator still needs to supply

  • Stable / master APK (or store/build URLs) for the wallet
  • USB debugging consent on a physical device, or agreement to use AVD only
  • Which flows are in-scope first (withdraw communal QR → shop pay, …)

Suggested freigabe prompt (for an agent)

See session notes: full copy-paste block under “Android-Automatisierung vollständig einrichten” — install tooling, verify adb devices + emulator, document paths; no real wallet payments until approved.


Doc Role
README.md how to run taler-monitoring.sh
TESTS.md grouped check IDs
secrets.env.example e2e secrets layout
francpaysan-admin-log/TODO.md stage wallet mobile test backlog

When Android tooling is installed, append a short “installed on …” section here (date, adb version, AVD name, ANDROID_HOME).