Semaphore v2.18 introduce nuove funzionalità e miglioramenti per l’automazione dell’infrastruttura e i team DevOps. Questa release si concentra sul miglioramento dell’esperienza degli sviluppatori e sulla semplificazione dei flussi di lavoro infrastructure-as-code.
Integrazione con i gestori di secret cloud
Le organizzazioni che utilizzano piattaforme cloud hanno bisogno di un modo per recuperare i secret direttamente dal servizio di gestione dei secret del proprio provider cloud in fase di esecuzione, evitando la duplicazione delle credenziali e sfruttando le politiche di rotazione esistenti. Questa funzionalità aggiunge integrazioni native con AWS Secrets Manager e Azure Key Vault come capacità esclusive della versione Enterprise.

Enterprise
- Integrazione con AWS Secrets Manager — recupera i secret in fase di esecuzione da AWS Secrets Manager utilizzando ruoli IAM, chiavi di accesso o ruoli assunti. Supporta secret strutturati in JSON con estrazione dei campi e rotazione automatica. (#2248)
- Integrazione con Azure Key Vault — recupera i secret in fase di esecuzione da Azure Key Vault utilizzando l’autenticazione tramite identità gestita o service principal. Supporta secret, chiavi e certificati con rotazione automatica. (#2248, #3170)
Carica i secret da archiviazione remota
Semaphore ora può importare automaticamente i secret da HashiCorp Vault, AWS Secrets Manager, Azure Key Vault e Devolutions Server nell’archivio chiavi e mantenerli sincronizzati.

Collega un’archiviazione di secret a HashiCorp Vault, AWS Secrets Manager, Azure Key Vault o Devolutions Server, quindi definisci uno o più percorsi di sincronizzazione per controllare l’importazione:
- Percorso — da quale cartella/sottoalbero dell’archivio remoto importare.
- Prefisso — una stringa anteposta a ogni nome di chiave generato, per poter assegnare uno spazio dei nomi alle importazioni (ad es. prod-).
- Separatore — come le posizioni annidate dei secret vengono appiattite in un unico nome di chiave leggibile (vengono applicati valori predefiniti ragionevoli per ciascun provider).
Semaphore rileva automaticamente il tipo di chiave corretto (chiave SSH, login/password o stringa secret). Le importazioni vengono eseguite su richiesta tramite Sincronizza ora, oppure secondo una pianificazione in background che imposti in minuti. Ogni sincronizzazione riconcilia completamente la copia speculare — aggiungendo, aggiornando e rimuovendo le chiavi per corrispondere alla sorgente — lasciando intatte le chiavi create manualmente. Nelle installazioni ad alta disponibilità, le sincronizzazioni pianificate vengono eseguite su un singolo nodo per evitare importazioni duplicate.
I percorsi di sincronizzazione funzionano sia a livello di archivio chiavi (chiavi condivise del progetto) sia a livello di gruppo di variabili (variabili d’ambiente).

Più gruppi di variabili per modello

Semaphore ora supporta il collegamento di più gruppi di variabili (ambienti) a ciascun modello di attività. In precedenza era possibile collegare un solo gruppo di variabili, costringendo gli utenti a duplicare le variabili tra i gruppi quando più modelli condividevano impostazioni comuni, oppure a creare gruppi di variabili monolitici che contenevano tutto. I modelli possono ora comporre più gruppi di variabili, e questa release risolve numerosi bug nella gestione delle variabili — serializzazione, precedenza, propagazione e ciclo di vita delle variabili di survey.
Salta l’installazione di galaxy
Prima di eseguire un playbook, Semaphore esegue un passaggio ansible-galaxy install per scaricare i ruoli e le collection dichiarati nel tuo requirements.yml. In molte configurazioni questo passaggio non è necessario: le dipendenze sono già integrate nell’immagine del runner, incluse nel repository o servite da un mirror interno. Eseguirlo a ogni attività aggiunge solo latenza — e negli ambienti air-gapped senza accesso a internet fallisce del tutto.
Questa release aggiunge un’opzione Salta l’installazione di galaxy alle impostazioni del modello di attività. Quando è abilitata, Semaphore ignora il passaggio di preparazione ansible-galaxy install e procede direttamente all’esecuzione del playbook. Questo accelera l’avvio delle attività ed elimina la dipendenza rigida dall’accesso ad Ansible Galaxy e Git in fase di esecuzione, il che è particolarmente utile per runner offline e pre-provisionati.

