Python: Configurare il workflow di GitHub Actions
Questa documentazione fa parte della guida Distribuire con GitHub Actions. Consulta la guida completa qui: Come distribuire il proprio codice Python utilizzando GitHub Actions.
👋 Benvenuto nella documentazione di Stackhero!
Stackhero offre una soluzione Python cloud pronta all'uso, progettata per semplificare il processo di deployment:
- Distribuisci la tua applicazione in produzione in pochi secondi con un semplice
git push.- Utilizza il tuo nome di dominio, con configurazione automatica del certificato HTTPS per connessioni sicure gestite direttamente da noi.
- Affidati a backup automatici, aggiornamenti con un clic e prezzi prevedibili, così puoi concentrarti sul tuo codice invece che sulla gestione dell'infrastruttura.
- Approfitta di elevate prestazioni e sicurezza su un'infrastruttura privata e dedicata. Il tuo ambiente è isolato e protetto.
Risparmia tempo e semplifica il tuo workflow: il tuo codice può essere operativo con il Python cloud hosting di Stackhero in soli 5 minuti.
Nel vostro repository Git, create una cartella chiamata .github/workflows se non esiste già. Poi aggiungete al suo interno un file chiamato deploy-to-stackhero.yml.
# File: .github/workflows/deploy-to-stackhero.yml
name: Deploy to Stackhero
run-name: Deploy branch "${{ github.ref_name }}" to Stackhero
on:
push:
# Elenco dei branch che attiveranno l'azione di deploy dopo un git push.
# Non dimenticate di creare un ambiente corrispondente al nome del branch su GitHub (in "Settings"/"Environments").
# Poi aggiungete il secret corrispondente "STACKHERO_SSH_PRIVATE_KEY" e la variabile "STACKHERO_ENDPOINT" in quell'ambiente.
branches: [ "production", "staging" ]
jobs:
Deploy:
environment: ${{ github.ref_name }}
runs-on: ubuntu-latest
steps:
- uses: stackhero-io/github-actions-deploy-to-stackhero@v1
with:
# Il secret "STACKHERO_SSH_PRIVATE_KEY" e la variabile "STACKHERO_ENDPOINT" devono essere definiti nell'ambiente branch corrispondente su GitHub in "Settings"/"Environments".
ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
endpoint: ${{ vars.STACKHERO_ENDPOINT }}
Una volta aggiunto il file workflow, potete effettuare il commit delle modifiche:
git add -A .
git commit -m "Aggiungi GitHub Actions per il deploy su Stackhero"
Potete creare un branch production con:
git checkout -b production
E inviare le modifiche su GitHub:
git push --set-upstream origin production
Questo invierà il vostro codice al branch production su GitHub e attiverà GitHub Actions, che distribuirà il codice sulla vostra istanza Stackhero.
Per verificare lo stato del deployment, visitate semplicemente la pagina del vostro progetto GitHub e cliccate su Actions.
GitHub Actions che ha distribuito in produzione
Ecco fatto. Ora avete il deployment automatico in produzione tramite GitHub Actions.