Scrivere filtri per la shell per divertimento e profitto

Perché? Durante il mio lavoro quotidiano mi capita a volte di dover fare il debug di job di test openQA falliti. Uno dei mantra del testing è riprodurre il problema e per questo compito la community di openQA ha sviluppato alcuni strumenti. In pratica, ho spesso un output come questo qui sotto proveniente da alcune operazioni di clonazione dei job: Cloning parents of sle-15-SP4-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit 1 job has been created: - sle-15-SP4-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit -> https://openqa.suse.de/tests/16425390 Cloning parents of sle-15-SP5-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit 1 job has been created: - sle-15-SP5-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit -> https://openqa.suse.de/tests/16425391 Cloning parents of sle-15-SP4-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit 1 job has been created: - sle-15-SP4-Server-DVD-Updates-x86_64-Build20250112-1-fips_ker_mode_gnome@64bit -> https://openqa.suse.de/tests/16425392 E quando voglio monitorare quei job, dovrei copiare e incollare tutti gli URL dei job e passarli come argomenti alla fantastica utilità openqa-mon, che mostrerà e mi notificherà lo stato dei job nel terminale. ...

19 gennaio 2025 · Andrea Manzini

Un approccio diverso alle interfacce utente da terminale

Introduzione Bubbletea è un framework con una filosofia basata su The Elm Architecture: Per farla semplice, si divide in tre parti: Model: lo stato della tua applicazione View: un modo per trasformare il tuo stato in qualcosa da mostrare a schermo Update: un modo per aggiornare lo stato in base ai messaggi Il runtime del framework gestisce tutto il resto: dall’orchestrazione dei messaggi ai dettagli di rendering a basso livello. Esempio Ipotizziamo di voler creare la classica lista di cose da fare (to-do list): ...

3 maggio 2024 · Andrea Manzini

This site does not use cookies or collect any personal data. © 2026 Andrea Manzini.