d22ef502ed
- Dateien nach Windmill-Naming-Konvention umbenannt (ssh-key_aus_db_testen, flow-fehler_per_nextcloud_talk_melden, bitwarden_(fallback)) - testpause-Schritt aus flow.yaml entfernt (Debugging abgeschlossen) - Neue Flows: f/Reporting/exchange_logins, f/Reporting/run_sql_events - mail_to_talk: Dateinamen nach Windmill-Konvention synchronisiert Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
106 lines
3.7 KiB
YAML
106 lines
3.7 KiB
YAML
summary: Run SQL Events for Reporting
|
|
description: ''
|
|
value:
|
|
modules:
|
|
- id: get_event_def_rows
|
|
summary: Liest EVENT_DEFINITION für das MySQL-Event (Zeilen vom Hubskript)
|
|
value:
|
|
type: script
|
|
input_transforms:
|
|
mysql_conn:
|
|
type: static
|
|
value: $res:u/sebastianserfling/fascinating_mysql
|
|
query:
|
|
type: javascript
|
|
expr: "`SELECT EVENT_DEFINITION FROM information_schema.EVENTS WHERE EVENT_NAME
|
|
= '${flow_input.event_name ?? 'all_create'}' ORDER BY
|
|
(EVENT_SCHEMA = DATABASE()) DESC LIMIT 1`"
|
|
path: hub/17540/mysql/execute_query
|
|
- id: extract_event_def
|
|
summary: Extrahiert EVENT_DEFINITION-String aus den Zeilen
|
|
value:
|
|
type: rawscript
|
|
content: '!inline extrahiert_event_definition-string_aus_den_zeilen.ts'
|
|
input_transforms:
|
|
rows:
|
|
type: javascript
|
|
expr: results.get_event_def_rows
|
|
lock: '!inline extrahiert_event_definition-string_aus_den_zeilen.lock'
|
|
language: bun
|
|
- id: parse_calls
|
|
summary: Extrahiert alle CALL-Statements aus dem EVENT_DEFINITION-Body
|
|
value:
|
|
type: rawscript
|
|
content: '!inline
|
|
extrahiert_alle_call-statements_aus_dem_event_definition-body.ts'
|
|
input_transforms:
|
|
event_definition:
|
|
type: javascript
|
|
expr: results.extract_event_def.event_definition
|
|
lock: '!inline
|
|
extrahiert_alle_call-statements_aus_dem_event_definition-body.lock'
|
|
language: bun
|
|
- id: loop_calls
|
|
summary: Führt jede CALL einzeln aus und sendet bei Fehler Pushover
|
|
value:
|
|
type: forloopflow
|
|
modules:
|
|
- id: run_call
|
|
summary: Führt eine einzelne CALL aus, sendet bei Fehler Pushover und liefert
|
|
Ergebnis
|
|
value:
|
|
type: rawscript
|
|
content: '!inline
|
|
führt_eine_einzelne_call_aus,_sendet_bei_fehler_pushover_und_liefert_ergebnis.ts'
|
|
input_transforms:
|
|
call_sql:
|
|
type: javascript
|
|
expr: flow_input.iter.value
|
|
database_resource_path:
|
|
type: static
|
|
value: $res:u/sebastianserfling/fascinating_mysql
|
|
pushover_token:
|
|
type: javascript
|
|
expr: flow_input.pushover_token
|
|
pushover_user:
|
|
type: javascript
|
|
expr: flow_input.pushover_user
|
|
lock: '!inline
|
|
führt_eine_einzelne_call_aus,_sendet_bei_fehler_pushover_und_liefert_ergebnis.lock'
|
|
language: bun
|
|
iterator:
|
|
type: javascript
|
|
expr: results.parse_calls || []
|
|
parallel: false
|
|
skip_failures: true
|
|
squash: false
|
|
- id: compose_email
|
|
summary: Erstellt Betreff und Body mit allen Ergebnissen der CALLs
|
|
value:
|
|
type: rawscript
|
|
content: '!inline erstellt_betreff_und_body_mit_allen_ergebnissen_der_calls.ts'
|
|
input_transforms:
|
|
event_name:
|
|
type: javascript
|
|
expr: flow_input.event_name ?? 'all_create'
|
|
results_array:
|
|
type: javascript
|
|
expr: results.loop_calls
|
|
subject_prefix:
|
|
type: javascript
|
|
expr: flow_input.email_subject_prefix ?? ''
|
|
lock: '!inline erstellt_betreff_und_body_mit_allen_ergebnissen_der_calls.lock'
|
|
language: bun
|
|
groups: []
|
|
schema:
|
|
$schema: https://json-schema.org/draft/2020-12/schema
|
|
type: object
|
|
order:
|
|
- event_name
|
|
properties:
|
|
event_name:
|
|
type: string
|
|
description: Name des MySQL Events
|
|
default: all_create
|
|
required: []
|