Ruby: 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 Ruby à l'aide de GitHub Actions.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Ruby cloud prête à l'emploi qui offre 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 Ruby cloud hosting de Stackhero !

Sur votre machine locale, dans votre dépôt Git, créez un dossier nommé .github/workflows. À l'intérieur de ce dossier, créez un fichier appelé deploy-to-stackhero.yml.

# 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 "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 sous "Settings"/"Environments".
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Après avoir créé le fichier de workflow, vous pouvez valider vos modifications.

git add -A .
git commit -m "Add GitHub Actions to deploy to Stackhero"

Ensuite, créez une branche production.

git checkout -b production

Enfin, poussez vos modifications sur GitHub.

git push --set-upstream origin production

Ce dernier git push va envoyer votre code sur la branche production de GitHub. GitHub Actions va alors démarrer automatiquement et déployer votre code sur votre instance Stackhero.

Pour voir votre workflow en action, rendez-vous sur la page GitHub de votre projet et cliquez sur Actions. GitHub Actions ayant déployé en productionGitHub Actions ayant déployé en production

Félicitations, vous venez de mettre en place le déploiement continu en production avec GitHub Actions.