Ansible e Jenkins a ottobre 2026: ansible-core 2.21 e Jenkins LTS 2.580

Pubblicato il 2 ottobre 2026 · Aggiornato il 2 ottobre 2026

In breve. ansible-core 2.21 (maggio 2026) richiede Python 3.12-3.14 sul controller e rimuove il plugin paramiko. Jenkins LTS 2.580.1 (30 settembre 2026) richiede Java 21 o 25 e non include più molti plugin storici. Il rischio sta nelle dipendenze: si aggiorna dopo un inventario e una prova su copia.

Due strumenti di automazione molto diffusi hanno avuto cambi che toccano le dipendenze: ansible-core 2.21 e Jenkins LTS 2.580.1. In entrambi i casi l’aggiornamento è semplice solo se prima si fa un inventario.

ansible-core 2.21

Rilasciato il 18 maggio 2026 (ultima patch confermata: 2.21.3 del 10 agosto). Fonte: changelog e ciclo di manutenzione.

  • Python sul controller: 3.12-3.14. Sui nodi gestiti: 3.9-3.14.
  • Supporto: critico fino a novembre 2026, sicurezza fino a maggio 2027, fine supporto a novembre 2027. La 2.20 termina a maggio 2027.
  • Novità: variabili registrate con “projections” (meno set_fact), nuovo oggetto implicito _task, moduli PowerShell 7 su host POSIX.
  • Cambio che può rompere: il default del servizio di negoziazione di PSRP passa da WSMAN a host; per tornare indietro si imposta ansible_psrp_negotiate_service=WSMAN.
  • Rimosso: il plugin di connessione paramiko e alcune opzioni di rilevamento dell’interprete (auto_legacy).
  • Deprecati: ansible.module_utils.six, i moduli apt_key e apt_repository (sostituiti da deb822_repository) e dedurre il fallimento dal codice di ritorno senza chiave failed.
  • Sicurezza (2.21.1): ansible-galaxy install passa i requisiti dei ruoli come argomenti posizionali contro l’iniezione tramite configurazioni git malevole.
  • Collezioni: il pacchetto community Ansible 14 si basa sulla 2.21; Galaxy esclude per default le collezioni con requires_ansible incompatibile. community.general non supporta più la 2.17.

La guida di migrazione per playbook e riga di comando non segnala cambi rilevanti. Non è verificato se ansible-lint e ansible-navigator siano compatibili con 2.21 e Python 3.12-3.14: provali nel tuo flusso.

Jenkins LTS 2.580.1

Rilasciato il 30 settembre 2026; richiede Java 21 o 25. Java 17 non è più valido dalla linea 2.555 (aprile 2026). Fonte: changelog LTS e politica Java.

  • Rischio principale: nove plugin non sono più inclusi nel pacchetto del controller (tra cui API di BouncyCastle, JAXB, SSH server, JavaMail) e, saltando da versioni molto vecchie, anche JUnit, Mailer, Matrix Authorization Strategy, Matrix Project e OWASP Markup Formatter. Configurazioni che li usano (sicurezza a matrice, job multi-configurazione, risultati dei test, email) possono non caricarsi. Fonte: guida all’aggiornamento 2.580.
  • Con accesso all’update center i plugin mancanti vengono risolti come dipendenze; senza, vanno copiati a mano prima dell’aggiornamento.
  • Sicurezza: gli avvisi di settembre 2026 (2 e 16) riguardano il nucleo e molti plugin, con problemi come bypass della sandbox, XSS e credenziali esposte. Stai su una LTS recente con i plugin aggiornati.

Buone pratiche di aggiornamento

  1. Inventario: versione di Jenkins, Java del controller e degli agent, plugin installati, versione di ansible-core e Python, collezioni usate.
  2. Backup di JENKINS_HOME e prova dell’aggiornamento su una copia.
  3. Ordine per Jenkins: installa la nuova Java, aggiorna il controller, poi i plugin; gli agent devono avere almeno la Java minima del controller.
  4. Ordine per Ansible: aggiorna Python sul controller, poi ansible-core, poi le collezioni; esegui i playbook in modalità di controllo.
  5. Salti di versione: leggi le guide di tutte le LTS saltate.
  6. Ritorno indietro: tieni pronti il backup e la versione precedente.

Cosa non è verificato

Il numero esatto dei plugin e delle vulnerabilità degli avvisi, la compatibilità di ansible-lint e ansible-navigator, la data di ansible-core 2.21.4 e l’eventuale LTS 2.580.2 non sono stati confermati.

Per mettere le pipeline come codice e automatizzare i rilasci, vedi Orchestrazione e automazione.

Serve una mano?

Se vuoi applicare questi punti al tuo caso, raccontamelo in poche righe.

Parliamone