La nota piattaforma di code sharing Github si occupa da tempo dello sviluppo di numerosi progetti dedicati ai developer, come ad esempio Electron o Atom IDE. La compagnia condivide infatti con il resto della community i tool che i suoi sviluppatori utilizzano quotidianamente e, in questi giorni, è stato presentato un nuovo progetto chiamato Actions dedicato alla workflow automation, l'automatizzazione dei processi di lavoro.
GitHub Actions permette non solo di hostare codice tramite Github, ma anche di eseguirlo e di creare delle azioni automatizzate e personalizzate. Non si tratta di una nuova piattaforma cloud come ad esempio AWS di Amazon, ma più propriamente di una soluzione simile a IFTTT. Actions è dunque un servizio dedicato ai developer che vogliono automatizzare il proprio ambiente di lavoro e i propri task quotidiani. Github Actions può infatti integrarsi senza problemi con la delivery pipeline di un progetto, gestendo notifiche e task automatizzati basati su trigger.
Sam Lambert, head of platform di GitHub, definisce Actions come una delle evoluzioni più importanti di GitHub. Il servizio è stato pensato per far si che i developer possano creare delle azioni automatiche in un container in modo da garantire la continuità del workflow senza interventi manuali. Gli utenti GitHub potranno sfruttare Actions per realizzare una delivery pipeline molto più fluida, incrementando la produttività e diminuendo anche i carichi di lavoro per il singolo sviluppatore.
Applicando i principi dell'open source all'automazione del flusso di lavoro, GitHub Actions ti consente di associare gli strumenti di sviluppo con varie azioni personalizzate o condivise dalla community GitHub (in modo molto simile a quanto avviene su IFTTT), indipendentemente dalle lingue o dalle piattaforme che sceglie di usare. Si possono sviluppare e condividere azioni preimpostate per automatizzare qualsiasi attività, basandosi su un ecosistema di opzioni e trigger già pacchettizzati da Github. È possibile ad esempio pacchettizzare un modulo NPM, inviare un avviso tramite SMS o distribuire in parallelo codice pronto per la produzione nel cloud.
L'obiettivo del team di Github è sfruttare la conoscenza collettiva della comunità e dunque condividere in modo più efficiente i dati e le metodologie di automazione, in modo da non dover risolvere gli stessi problemi individualmente.
Tali forme di automazione sono anche molto utili per migliorare il rilevamento delle vulnerabilità di sicurezza e, ovviamente, anche la loro correzione. Actions può essere sfruttato anche per aiutare i team di sviluppo ad identificare e affrontare in modo proattivo le minacce alla sicurezza presenti nel codice. Proprio per questo il team di Github ha anche rilasciato le nuove GitHub Security Advisory API, progettate per fornire consigli sulla sicurezza. Con tale API i dati di sicurezza saranno sempre a portata di mano e pronti per essere integrati negli strumenti e nei servizi della piattaforma.
Attualmente gli avvisi di sicurezza integrati in Action funzionano senza problemi con vari linguaggi e framework come ad esempio Java, Javascript, .NET, Python e Ruby. Dunque gli amministratori di sistema possono ricevere notifiche automatiche quando vengono rilevante vulnerabilità già note senza quindi sfruttare tool di analisi esterni a Github.
Actions dispone anche di un comodo tool chiamato GitHub Token Scanning che, se attivato, andrà ad analizzare i vari repository pubblici per scoprire se i propri token (e chiavi) sono stati accidentalmente resi pubblici. Se ciò viene rilevato si riceve un notifica per contattare il proprietario del repository in questione e per richiedere un nuovo token.
Via GitHub