S’ha incorporat a la v5 dels reusable workflows de SIC+ una nova funcionalitat anomenada Orquestrador de Releases, la qual permet coordinar i seqüenciar el desplegament de múltiples components d’una mateixa aplicació de forma centralitzada.
Fins ara, cada component d’una aplicació requeria una execució manual i independent del seu workflow de CD. Amb l’Orquestrador de Releases, es pot definir l’ordre i les dependències entre components, automatitzant tot el procés de release des d’un únic punt.
L’orquestrador s’executa des del nou repositori application-metadata de cada aplicació, des d’on es defineix quins components formen part de la release, els inputs necessaris, en quin ordre han de desplegar-se, els tests del MAT, i els paràmetres generals com els valors d’ITSM.
A grans trets, el procés que segueix l’orquestrador és el següent:
flowchart LR
A["Release manager:<br/>crea el release-plan<br/>i executa el workflow"] --> B["Validació d'esquema<br/>i processament dels fitxers<br/>(application.yaml +<br/>release-plan.yaml)"]
B --> C{"PRE-CHECKS<br/>correctes?"}
C -->|"No"| C1["Es cancel·la<br/>el desplegament"]
C -->|"Sí"| D["Crea un únic ticket CRQ<br/>(estat: In Progress)"]
D --> E["Desplega els components<br/>per nivells de dependències<br/>(cada nivell en paral·lel)"]
E --> F{"Desplegament<br/>correcte?"}
F -->|"No"| G["Rollback segons auto_rollback,<br/>tanca la CRQ (error) i<br/>mou el pla a plans/failed/"]
F -->|"Sí"| H["Tests del MAT<br/>(functional, regression,<br/>performance, api)"]
H --> I["Tanca la CRQ (èxit) i<br/>mou el pla a plans/completed/"]
I --> J["Actualitza els fitxers d'estat<br/>i crea el tag de la release<br/>al repositori central"]
Per a més informació sobre com configurar i utilitzar aquesta funcionalitat, consulteu la documentació de l’Orquestrador de Releases.
En cas de requerir suport per part de l’equip del SIC, cal obrir un tiquet d’acompanyament al servei JIRA ACOCLDSIC.