Funzionalità di AWS CodePipeline
Perché scegliere CodePipeline?
AWS CodePipeline è un servizio di integrazione e distribuzione continue (CI/CD) che permette di aggiornare applicazioni e infrastruttura in modo rapido e affidabile. È possibile utilizzare CodePipeline per personalizzare e automatizzare il processo di rilascio di software.
Generali
Apri tuttoUna pipeline definisce il flusso di lavoro di un processo di rilascio e descrive in che modo una modifica al codice avanza attraverso tale processo. È composta da una serie di fasi (ad esempio build, test e distribuzione) che fungono da divisioni logiche in un flusso di lavoro. Ogni fase è costituita da una sequenza di operazioni, ovvero attività quali la creazione di codice o la distribuzione in ambienti di test. CodePipeline fornisce un'interfaccia utente grafica con cui creare, configurare e gestire la pipeline e relative fasi e operazioni, consentendo di visualizzare e modificare con semplicità il flusso di lavoro del processo di rilascio.
Esecuzione in parallelo
CodePipeline può essere utilizzato per definire le operazioni di build, test e distribuzione in modo che vengano eseguite in parallelo per accelerare il flusso di lavoro.
CodePipeline può estrarre il codice sorgente per una pipeline direttamente da AWS CodeCommit, GitHub, Amazon Elastic Container Registry (Amazon ECR) oppure Amazon Simple Storage Service (Amazon S3). Può eseguire build e test unitari in AWS CodeBuild. CodePipeline può implementare le modifiche utilizzando AWS CodeDeploy, AWS Elastic Beanstalk, Amazon Elastic Container Service (Amazon ECS) o AWS Fargate.
È possibile impostare operazioni di AWS CloudFormation che consentano di allocare, aggiornare ed eliminare risorse AWS durante il processo di rilascio. Questo consentirà di distribuire in maniera continuativa applicazioni serverless create utilizzando AWS Lambda, Gateway Amazon API e Amazon DynamoDB con Modello di applicazione serverless AWS (AWS SAM).
È inoltre possibile attivare funzioni personalizzate definite dal codice in qualsiasi fase della pipeline utilizzando l'integrazione di CodePipeline con Lambda. Ad esempio, è possibile attivare una funzione Lambda che verifica se un'applicazione web è stata implementata correttamente.
CodePipeline consente di configurare una pipeline che collega questi servizi con strumenti di sviluppatori di terze parti e sistemi personalizzati.
CodePipeline permette di integrare strumenti di sviluppatori terzi, ad esempio GitHub o Jenkins, in qualunque fase del processo di rilascio con un solo clic. È possibile utilizzare strumenti di terze parti per controllo del codice sorgente, creazione di build, testing e distribuzione. Scopri di più sulle nostre integrazioni.
CodePipeline permette di integrare sistemi personalizzati. È possibile registrare un'operazione personalizzata che permetta di collegare i server alla pipeline integrando l'agente open source di CodePipeline con essi. È anche possibile avvalersi del plug-in Jenkins di CodePipeline per registrare con la massima semplicità i server di build esistenti attraverso un'operazione personalizzata.
CodePipeline permette di definire la struttura di una pipeline utilizzando un documento JSON dichiarativo che illustra il flusso di lavoro di rilascio e le relative fasi e operazioni. Questi documenti consentono di aggiornare le pipeline esistenti e offrono modelli dai quali partire per creare nuove pipeline.
CodePipeline impiega AWS Identity and Access Management (IAM) per definire quali utenti possono apportare modifiche a un flusso di lavoro di rilascio e quali lo controllano. È possibile concedere l'accesso utilizzando utenti IAM, ruoli IAM e le directory integrate con SAML.
Puoi creare notifiche per eventi che incidono sulle pipeline. Le notifiche arriveranno sotto forma di notifiche Amazon Simple Notification Service (Amazon SNS). Ogni notifica include un messaggio sullo stato e un link alle risorse il cui evento ha generato la notifica in questione.