- Bash o Zsh
Esportare la variabile NUOVO_ANNO sul terminale utilizzato per le operazioni, questo aiuterà ad avere una procedura riutilizzabile salvo cambiare il valore di $NUOVO_ANNO per ogni nuova annualità.
Nell'esempio qui sotto, immaginiamo che il nuovo anno per cui si stanno creando i calendari sia il 2024
$ export NUOVO_ANNO=2024Dopo aver clonato questo repository, posizionarsi sul branch Development
$ git checkout developmentCreare un nuovo "feature branch" dove risiederanno le modifiche per i calendari del nuovo anno
$ git checkout -b feature/calendari-$NUOVO_ANNOModificare il file run_me.sh nella parte alta, inserendo il nuovo anno e mantenendo SOLO quello precedente. E' necessario rimuovere l'anno più vecchio per fare in modo che vengano gestite solamente 2 annualità.
es:
# Mantenere gli ultimi due anni (quello nuovo e quello precedente)
declare -A years=(
["2023"]="2023"
["2024"]="2024"
)L'array associativo è formato in modo che la chiave sia l'etichetta che verrà utilizzata per dare un nome alla release, il valore invece costituisce l'anno come definito sul sito della raccolta rifiuti. Sebbene spesso la chiave ed il valore corrispondano, distinguerli ci da la possibilità di separare le due informazioni, nel caso in cui l'anno della release NON corrisponda con l'annualità definita dal Consorzio (ad esempio chiave=2025_NEW, valore=2026).
Qualora il Consorzio Chierese avesse aggiunto un nuovo comune o riorganizzato le zone di raccolta, aggiornare la lista dei comuni nel file comuni.txt.
Creare il file con le coordinate per il nuovo anno
$ cp coordinates/coordinates_template_2023.csv coordinates/coordinates_template_$NUOVO_ANNO.csvIpotizzando che si stia creando il file di coordinate per l'anno 2024, controllare che dopo il comando appena eseguito sia presente il file coordinates/coordinates_template_2024.csv.
Occorre ora modificare il file coordinates/coordinates_template_$NUOVO_ANNO.csv in modo che contenga tutte le informazioni (tra cui le coordinate dei punti del PDF da cui estrarre i dati) necessarie a generare i calendari ICS e CSV.
Per ottenere le coordinate dei punti dal file PDF ed inserirle nel file, fare riferimento all'apposita documentazione.
Una volta modificato in maniera opportuna il file coordinates/coordinates_template_$NUOVO_ANNO.csv, eseguire
$ ./generate_coordinates.sh $NUOVO_ANNOLo script crea la cartella coordinates/$NUOVO_ANNO con all'interno un file per ogni comune/zona, contenente le informazioni necessarie per estrapolare i dati dal PDF messo a disposizione dal Consorzio Chierese per i Servizi.
Svolte le operazioni elencate qui sopra, è sufficiente fare il merge del feature branche sul branch development per scatenare la pipeline di generazione dei calendari. Per coloro che hanno forkato questo repo sul loro account GitHub, è necessario aprire pull request.