Sezione Squadra
Il posto da cui la squadra prende il proprio ambiente. Invece di passarsi un file in chat — che è quello che fa condividere uno scenario — lo scenario vive in un catalogo e ciascuno lo adotta quando gli serve.
La sezione compare solo se c’è un catalogo configurato. Se non vedi «Squadra» nella
barra laterale non ti manca nulla nell’installazione: questo progetto non ha catalogo, e
si configura in aseptic.project.yml.
Che cosa si vede
Sezione intitolata “Che cosa si vede”L’elenco di ciò che la squadra condivide. Selezionando una voce, il dettaglio risponde alle due domande che ci si fa prima di adottare qualsiasi cosa:
- Che cosa porta — quanti servizi, quanti mock e quante impostazioni di avvio. Se porta solo la definizione dello scenario, lo dice anche.
- Che cosa manca qui — ciò di cui questo scenario ha bisogno e che la tua macchina non ha ancora: una connessione di base dati a cui il pacchetto fa riferimento, una credenziale senza valore, un repository che non è nel tuo spazio di lavoro, o un micro registrato su un altro ramo.
Quel secondo elenco è la ragione per cui il dettaglio esiste. Adottare alla cieca e scoprire il buco quando lo scenario non parte è esattamente il tempo che questo risparmia.
Adottare
Sezione intitolata “Adottare”Adotta porta dentro lo scenario e lo riconcilia con il tuo catalogo senza sovrascriverlo: è lo stesso percorso dell’import di un file, con le stesse politiche di conflitto.
Quando manca qualcosa, il dettaglio lo dice con il rimedio accanto: quale credenziale definire, quale repository resta da clonare, su quale ramo è stato registrato ogni servizio. E se preferisci sistemarlo dopo, puoi adottare lo stesso: lo scenario finisce nel tuo catalogo e non partirà finché il buco non è coperto, il che è meglio che non poterlo portare affatto.
Se il team lo cambia
Sezione intitolata “Se il team lo cambia”Adottare lascia un filo: lo scenario resta annotato con la voce da cui proviene e con la versione esatta che è stata portata. È questo che permette all’applicazione di dire poi qualcosa che prima non poteva dire: questo non è più ciò che condivide il team.
Nell’elenco, ogni voce porta il suo stato:
- Aggiornato — ciò che c’è qui è ciò che pubblica il team.
- È cambiato — qualcuno l’ha ripubblicato dopo che era stato adottato.
- (senza contrassegno) — non è ancora stato portato su questa macchina.
Le voci senza contrassegno sono la maggioranza in un catalogo grande, ed è per questo che non ne portano nessuno: se fosse contrassegnato tutto, l’unico contrassegno che chiede qualcosa si perderebbe fra gli altri.
Aprendo una voce già adottata, il dettaglio aggiunge Cosa cambia: quali servizi differiscono da quelli presenti qui e in quali campi concreti. E il pulsante passa da Adotta a Aggiorna, perché è ciò che fa: riscrive lo scenario che c’è già, non lascia una copia accanto. Adottare tre volte non produce più «Pagamenti QA», «Pagamenti QA (2)» e «Pagamenti QA (3)».
Ciò che si confronta è il contenuto, quindi ripubblicare la stessa cosa non conta come cambiamento. Un avviso che scatta senza che nessuno abbia toccato nulla smette presto di essere letto, e con lui quello che conta davvero.
Se qualcuno ritira una voce dal catalogo, lo scenario che ne è uscito continua a funzionare qui — ma la sezione lo dice in alto, invece di lasciarlo sparire in silenzio: dietro non c’è più nessuno che lo aggiornerà.
Pubblicare
Sezione intitolata “Pubblicare”Pubblica uno scenario… lo mette a disposizione di tutta la squadra, con una riga che spieghi a che cosa serve. Ci si arriva dall’intestazione della sezione, o dallo scenario stesso con Condividere con il team… nel suo menu. Quella riga è ciò che vedrà chi lo trova nell’elenco, quindi vale la pena scriverla.
Il tuo strato di avvio locale non viaggia. I flag e le variabili con cui tu tiri su un micro sono della tua macchina e non devono per forza valere su quella di un altro; quel che si pubblica sono lo scenario, i suoi manifesti e i suoi mock.
Ritirare una voce la toglie dal catalogo di tutta la squadra, non solo dal tuo. Per questo chiede conferma: non stai cancellando qualcosa di tuo.
La chiave della squadra
Sezione intitolata “La chiave della squadra”Quando il catalogo è ospitato, è cifrato end-to-end: quello che il server conserva sono blocchi che il server non può aprire. La chiave è della squadra e non esce dalle sue macchine.
Si genera una volta — Genera una chiave nuova — e si incolla sulle altre macchine — Inserisci la chiave della squadra. L’app chiede di ripeterla al salvataggio, ed è il modo in cui verifica che l’hai davvero copiata da qualche parte prima di andare avanti.
Vale la pena leggere l’avviso accanto al pulsante e crederci: se la squadra perde la chiave, il catalogo non si recupera. Non c’è nessun «ripristina» che tenga, perché nessun altro ce l’ha. Il suo posto è dove la squadra tiene gli altri segreti.
Un catalogo servito via Git non ha bisogno di chiave: lì il controllo d’accesso è quello del repository stesso.
La stessa cosa dal terminale
Sezione intitolata “La stessa cosa dal terminale”Tutto questo esiste anche nella CLI, ed è ciò che permette di montare l’ambiente in un job di integrazione continua o sulla macchina di chi è appena arrivato:
aseptic team list # che cosa condivide la squadraaseptic team status # è ancora quello che condivide il team?aseptic team adopt pagos-qa --apply # portalo e adottalo quiaseptic start "Pagos QA"Senza --apply, adopt mostra solo il piano e che cosa manca su questa macchina — lo
stesso elenco del dettaglio della sezione. Dettaglio completo in Comandi della
CLI.
Che cosa non è
Sezione intitolata “Che cosa non è”Non è un posto dove tenere il codice dei tuoi micro: i repo restano repo. Quel che si
condivide è come si combinano — quali micro, in quale modalità, con quali mock e quali
dipendenze risolte —, che è precisamente ciò che non sta in un README e finisce per
tramandarsi a voce.