Tra gli avvenimenti più "spaventosi" che possono capitare ad uno sviluppatore, è facile citare quei casi in cui ci si accorge, magari tramite la ricezione di un avviso automatico via mail, che la pipeline di build del nostro progetto è fallita. Magari proprio quando avevamo
direttamente sul
.
Pensando a questa simpatica considerazione, e trovandosi a ridosso di Halloween, Martin Woodward (direttore del reparto DevRel di GitHub) ha pensato bene di rendere questo genere di situazione ancora più "accattivante", mettendo in pratica una simpatica idea: realizzare una zucca di Halloween che si illumina quando la build fallisce. Il tutto sfruttando un
, una zucca
, ed un po' di software che integri tutto quanto.
In questo articolo cercheremo di riassumere gli step messi in pratica da Woodward, per permettere anche ai lettori di HTML.it che ne hanno voglia, di riprodurre questa simpatica idea (magari non per forza utilizzando una zucca).
Preparare l'occorrente
La prima cosa da fare è preparare tutto l'occorrente per questo progetto. Come già anticipato, il progetto originale di Woodward prevede l'uso di una zucca stampata in 3D, il cui
può essere facilmente reperito online. Ciò non ci evita, comunque, la possibilità di realizzare un modello diverso, sfruttando software di modellazione come
o
. L'utilizzo, poi, di un materiale particolarmente adatto (che sia ad esempio trasparente, o in grado di diventare fosforescente al buio) renderà il risultato finale ancor migliore.
Una volta ottenuto il nostro "contenitore", il progetto di Woodward prevede l'uso di:
- Raspberry Pi Zero, comprensivo di Micro SD
-
[!] Ci sono problemi con l'autore. Controllare il mapping sull'Author Manager
, componente che consiste in una matrice di LED controllabili, che saranno utilizzati come fonte di illuminazione
In questo articolo eviteremo di scendere nei dettagli del montaggio, focalizzandoci per lo più sulla parte relativa al software. Chi volesse approfondire potrà fare riferimento al
.
Ottenere il codice
Tutto il software necessario si trova su un
, appositamente realizzato dall'autore. Di conseguenza, il codice è liberamente scaricabile. Una volta ottenuto, dovremo innanzitutto formattare la microSD, ed installare Raspberry Pi OS Lite. Fatto ciò, accediamo via SSH al dispositivo (
), e scarichiamo il software per l'interazione con Unicorn HAT, come segue:
curl -sS https://get.pimoroni.com/unicornhat | bash
Il software che sfrutteremo utilizza
, ed in particolare sarà necessario installare il modulo requests
. A tale scopo, sfruttiamo
:
sudo pip install requests
quindi il repository summenzionato, sfruttando
:
git clone https://github.com/martinwoodward/PumpkinPi.git
L'ultimo passo è consiste nella configurazione dello script. Troveremo il file di configurazione di esempio nel repository appena clonato, in src/local_settings.sample
. Rinominiamolo in local_settings.py
e definiamo al suo interno l'URL da cui dovremo scaricare il badge (utilizzato per verificare se la build è stata passata con successo, o se è invece fallita), e l'intervallo di refresh, utilizzato per effettuare il controllo su questa URL. I valori di default che troveremo sul file del repository sono i seguenti:
BADGE_LINK = "https://github.com/martinwoodward/calculator/workflows/CI/badge.svg?branch=main"
REFRESH_INTERVAL = 300
Non resta quindi che lanciare lo script:
sudo python ./src/pumpkinpi.py &
La foto seguente mostra il risultato dei test svolti dallo stesso Woodward: