Una delle funzionalità sicuramente più utilizzate quando si parla di pipeline in Azure DevOps, è la possibilità di poter aggiungere dei summary al termine dell'esecuzione di un job. Questi summary possono essere dei semplici file di testo, oppure codice markdown che può essere utilizzato per mostrare, per esempio, report, dati aggregati e risultati dell'esecuzione dei test, custom log (per esempio i warning di msbuild) e così via.
Questa funzionalità era assente in GitHub Action che, appunto, non permetteva nessuna aggiunta all'esecuzione del workflow. Infatti, per poter ovviare alla limitazione, spesso si impostavano dei commenti, automaticamente, nelle pull request che triggheravano l'esecuzione del workflow stesso.
Con l'aggiunta della variabile d'ambiente $GITHUB_STEP_SUMMARY è ora possibile, invece, realizzare lo stesso comportamento:
steps: - name: Adding markdown run: echo '### Hello world! :rocket:' >> $GITHUB_STEP_SUMMARY
Con questo semplicissimo script andiamo a salvare del codice markdown direttamente nella variabile d'ambiente e, questa, andrà a salvare il contenuto nel summary.

Chiaramente è anche possibile mettere contenuti multi-riga o più complessi, come nel caso seguente:
- name: Generate list using Markdown run: | echo "This is the lead in sentence for the list" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY # this is a blank line echo "- Lets add a bullet point" >> $GITHUB_STEP_SUMMARY echo "- Lets add a second bullet point" >> $GITHUB_STEP_SUMMARY echo "- How about a third one?" >> $GITHUB_STEP_SUMMARY
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Cancellare una run di un workflow di GitHub
Selettore CSS :has() e i suoi casi d'uso avanzati
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Disabilitare le run concorrenti di una pipeline di Azure DevOps
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Creare una custom property in GitHub
Eliminare una project wiki di Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Eseguire script pre e post esecuzione di un workflow di GitHub
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API