Esplorare diversi approcci CI/CD
Finora sono stati esaminati due approcci per supportare CI/CD per l'app nativa del cloud. L'app è stata distribuita manualmente nel servizio Azure Kubernetes ed è stata usata GitHub Actions per compilare e distribuire l'app. Microsoft supporta un terzo approccio, Azure Pipelines. Entrambi gli approcci automatizzati sono validi; scegli quella più adatta alle tue esigenze.
In che modo GitHub actions e Azure Pipelines sono diversi?
Si inizierà esaminando il modo in cui questi due approcci sono gli stessi. GitHub Actions e Azure Pipelines sono entrambi strumenti CI/CD. Entrambi supportano:
- Compilazione e distribuzione dell'app.
- File YAML per definire i passaggi per compilare e distribuire l'app.
- Trigger per avviare il processo di compilazione e distribuzione.
- Monitoraggio del processo di compilazione e distribuzione.
- Rollback di una distribuzione.
I diversi livelli di supporto per le funzionalità variano in base ai due approcci. Esaminiamo queste differenze.
Azioni di GitHub | Azure Pipelines |
---|---|
Gratuito per i repository pubblici | Gratuito per i progetti open source |
Gratuito per un massimo di 2000 minuti al mese per i repository privati | Gratuito per un massimo di 1800 minuti al mese per i repository privati |
Limitato a 20 processi simultanei | Limitato a 10 processi simultanei |
Azure Pipelines offre un vantaggio rispetto a GitHub Actions perché supporta molti repository di origine diversi. Azure Pipelines supporta GitHub, GitHub Enterprise Server, Bitbucket Cloud, Git Repos di Azure e TFVC, Subversion e External Git. GitHub Actions supporta solo GitHub.
Se sono presenti flussi di lavoro CD/CD più complessi, è possibile ridimensionare Azure Pipelines per supportare le esigenze. Azure Pipelines supporta più fasi, più processi e più passaggi. GitHub Actions supporta solo un singolo processo con più passaggi. Questa flessibilità può essere combinata con scenari di test automatizzati.
Nota
Quando si crea un nuovo progetto in DevOps, i minuti gratuiti di Azure Pipeline potrebbero non essere disponibili. Per richiedere una concessione di parallelismo gratuito, compilare il modulo di richiesta di parallelismo. È necessario eseguire questa operazione prima di completare l'esercizio successivo.
Disabilitare GitHub Action
Dopo aver esaminato le differenze, si decide di modificare l'app per usare Azure Pipelines.
Passare al repository con fork, nella Actions scheda .
Selezionare il Build and deploy an app to AKS flusso di lavoro a sinistra.
Selezionare il menu altre opzioni in alto a destra.
Selezionare Disabilita flusso di lavoro.
Il flusso di lavoro di GitHub Action è stato disabilitato. Si creerà ora una pipeline di Azure per compilare e distribuire l'app.