Python: Configurer le workflow GitHub Actions

Cette documentation fait partie du guide Déployer avec GitHub Actions. Consultez le guide complet ici : Comment déployer votre code Python à l'aide de GitHub Actions.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution cloud Python prête à l'emploi offrant de nombreux avantages, notamment :

  • Déployez votre application en quelques secondes avec un simple git push.
  • Utilisez votre propre nom de domaine et bénéficiez de la configuration automatique des certificats HTTPS pour une sécurité renforcée.
  • Profitez de la tranquillité d'esprit avec des sauvegardes automatiques, des mises à jour en un clic, et une tarification simple, transparente et prévisible.
  • Obtenez des performances optimales et une sécurité robuste grâce à une VM privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il ne faut que 5 minutes pour essayer la solution d'hébergement cloud Python de Stackhero !

Dans votre dépôt Git, créez un dossier nommé .github/workflows s'il n'existe pas déjà. Ajoutez ensuite un fichier nommé deploy-to-stackhero.yml à l'intérieur.

# Fichier : .github/workflows/deploy-to-stackhero.yml

name: Deploy to Stackhero
run-name: Deploy branch "${{ github.ref_name }}" to Stackhero

on:
  push:
    # Liste des branches qui déclencheront l'action de déploiement lors d'un git push.
    # N'oubliez pas de créer un environnement correspondant au nom de la branche sur GitHub (dans "Settings"/"Environments").
    # Ajoutez ensuite le secret correspondant "STACKHERO_SSH_PRIVATE_KEY" et la variable "STACKHERO_ENDPOINT" dans cet environnement.
    branches: [ "production", "staging" ]

jobs:
  Deploy:
    environment: ${{ github.ref_name }}
    runs-on: ubuntu-latest
    steps:
    - uses: stackhero-io/github-actions-deploy-to-stackhero@v1
      with:
        # Le secret "STACKHERO_SSH_PRIVATE_KEY" et la variable "STACKHERO_ENDPOINT" doivent être définis dans l'environnement de branche correspondant sur GitHub dans "Settings"/"Environments".
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Une fois le fichier de workflow ajouté, vous pouvez valider vos modifications :

git add -A .
git commit -m "Ajout de GitHub Actions pour déployer sur Stackhero"

Vous pouvez créer une branche production avec :

git checkout -b production

Et pousser vos modifications sur GitHub :

git push --set-upstream origin production

Cela poussera votre code sur la branche production de GitHub et déclenchera GitHub Actions, qui déploiera votre code sur votre instance Stackhero.

Pour vérifier le statut de votre déploiement, rendez-vous simplement sur la page de votre projet GitHub et cliquez sur Actions.

GitHub Actions ayant déployé en productionGitHub Actions ayant déployé en production

Voilà, vous avez maintenant des déploiements automatiques en production grâce à GitHub Actions.