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 dans la documentation Stackhero !

Stackhero offre une solution Python cloud clé en main conçue pour simplifier vos déploiements :

  • Déployez votre application en production en quelques secondes grâce à un simple git push.
  • Utilisez votre propre nom de domaine, avec une configuration automatique du certificat HTTPS pour des connexions sécurisées gérées pour vous.
  • Profitez de sauvegardes automatiques, de mises à jour en un clic et d'une tarification prévisible, afin que vous puissiez vous concentrer sur votre code plutôt que sur la gestion de l'infrastructure.
  • Bénéficiez d'une performance et d'une sécurité accrues sur une infrastructure privée et dédiée. Votre environnement est isolé et protégé.

Gagnez du temps et simplifiez votre workflow : votre code peut être en ligne avec l'hébergement Python cloud de Stackhero en seulement 5 minutes.

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.