Introduzione a GitHub Actions
Comprenda i concetti fondamentali di GitHub Actions, inclusi workflow, eventi, job e step.
Introduzione a GitHub Actions è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Introduzione a GitHub Actions
Benvenuto in GitHub Actions! Questa potente funzionalità di GitHub consente di automatizzare le attività direttamente nel repository.
Immaginala come il Suo assistente robot personale per il codice. Può compilare i progetti, eseguire i test e persino distribuire automaticamente il sito web ogni volta che apporta modifiche.
In questa lezione esploreremo i concetti fondamentali: workflow, eventi, job e passaggi.
Workflow: il modello per l'automazione
Il cuore di GitHub Actions è il workflow. Un workflow è una procedura automatizzata che esegue uno o più job.
- I workflow sono definiti in file YAML.
- Questi file si trovano nella directory
.github/workflowsdel repository. - Ogni file di workflow rappresenta un processo di automazione separato.
Quando si verificano determinati eventi, ad esempio il push del codice, i workflow si attivano!
Anatomia di un file di workflow
I workflow di GitHub Actions sono scritti in YAML, uno standard di serializzazione dei dati leggibile dagli esseri umani. Ecco una struttura di base:
name: My First Workflow
on: [push]
jobs:
my_first_job:
runs-on: ubuntu-latest
steps:
- name: Greet Me
run: echo "Hello CoddyKit!"Eventi: trigger per l'automazione
Gli eventi sono attività specifiche che attivano l'esecuzione del workflow. Indicano a GitHub Actions quando avviare il processo di automazione.
Tra gli eventi più comuni troviamo:
push: quando il codice viene inviato al repository.pull_request: quando una pull request viene aperta, aggiornata o chiusa.schedule: per eseguire il workflow in orari specifici, come con un cron job.
È possibile specificare uno o più eventi nel file di workflow usando la parola chiave on:.
name: On Push Example
on: [push, pull_request] # This workflow runs on push or pull request events
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Run a simple command
run: echo "Code was pushed or PR updated!"Job: attività organizzate
Un job è un insieme di passaggi eseguiti sullo stesso runner. I workflow sono costituiti da uno o più job, che possono essere eseguiti in parallelo o in sequenza.
- Ogni job viene eseguito in una nuova istanza dell'ambiente virtuale specificato da
runs-on. - Tra i valori comuni di
runs-ontroviamoubuntu-latest,windows-latestemacos-latest.
I job definiscono ciò che deve essere eseguito, ad esempio la compilazione di un'applicazione o l'esecuzione dei test.
Passaggi: istruzioni singole
All'interno di un job, i passaggi sono singole attività che vengono eseguite. Un passaggio può essere:
- Uno script da riga di comando, usando
run. - Un'azione, usando
uses, ovvero una porzione di codice riutilizzabile.
I passaggi vengono eseguiti nell'ordine in cui sono definiti. Se un passaggio non va a buon fine, per impostazione predefinita il job fallisce e i passaggi successivi vengono ignorati.
name: Steps Demo
on: [push]
jobs:
my_job:
runs-on: ubuntu-latest
steps:
- name: Step 1: Say Hello
run: echo "Hello from Step 1!"
- name: Step 2: List files
run: ls -la
- name: Step 3: Echo another message
run: echo "Step 3 completed."Actions: blocchi di codice riutilizzabili
Le Actions sono l'unità di automazione più elementare. Sono porzioni di codice riutilizzabili che eseguono un'attività specifica.
Invece di scrivere script complessi per le attività comuni, è possibile usare le actions disponibili nel GitHub Marketplace o crearne di proprie.
- Usare la parola chiave
uses:per fare riferimento a un'action. - Le actions possono provenire da GitHub, ad esempio
actions/checkout, da un'immagine Docker o da un file JavaScript.
In questo modo si risparmia tempo e si favorisce la coerenza!
name: Using Actions
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository code
uses: actions/checkout@v4 # This action checks out your repo
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm installCreazione di un workflow completo
Uniamo tutto ciò che abbiamo imparato in un unico esempio di workflow eseguibile. Questo workflow si limiterà a estrarre il codice e a stampare un messaggio di saluto.
Questo file YAML verrebbe salvato come .github/workflows/greeting.yml nel repository.
name: Simple Greeting Workflow
on: [push] # Triggers on any push to the repository
jobs:
greet_job:
runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
steps:
- name: Checkout the repository
uses: actions/checkout@v4 # Action to get your code
- name: Say hello
run: echo "Hello, GitHub Actions User!" # A simple command-line step
- name: Show current directory
run: pwd # Another command to show where we areEsecuzione di un workflow
Quando si verifica un evento, ad esempio un push, GitHub Actions:
- Legge il file YAML del workflow pertinente da
.github/workflows/. - Inizializza una macchina virtuale, chiamata runner, per ogni job.
- Esegue in sequenza ogni passaggio del job.
- Comunica lo stato, riuscito o non riuscito, di ogni passaggio e del job complessivo.
È possibile monitorare questo processo nella scheda "Actions" del repository GitHub.
Verifica rapida: componenti di un workflow
Quali dei seguenti sono componenti essenziali presenti in un file di workflow di GitHub Actions?
Riepilogo: introduzione a GitHub Actions
Ottimo lavoro! Ha appreso i concetti fondamentali di GitHub Actions:
- Workflow: i modelli di automazione nei file YAML.
- Eventi: i trigger che avviano i workflow.
- Job: insiemi di passaggi eseguiti su un runner.
- Passaggi: comandi singoli o actions riutilizzabili.
- Actions: unità di lavoro riutilizzabili per le attività comuni.
Ora approfondiremo la creazione di workflow CI/CD più pratici!
Domande Frequenti
La lezione «Introduzione a GitHub Actions» è gratuita?
Sì — il testo completo di «Introduzione a GitHub Actions» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Introduzione a GitHub Actions»?
Comprenda i concetti fondamentali di GitHub Actions, inclusi workflow, eventi, job e step. Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Introduzione a GitHub Actions»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Introduzione a GitHub Actions
- Creazione di workflow CI/CD
- Action personalizzate e Marketplace
- Segreti e variabili d’ambiente nelle Actions