Comment SFTP avec des actions Github?
Je souhaite utiliser les actions Github pour transférer des fichiers vers un serveur distant via SFTP (seule option pour ce serveur) lorsque je pousse vers Github.
J'utilise cette action https://github.com/marketplace/actions/ftp-deploy
J'ai créé un fichier dans mon dépôt dans .github/workflows/main.ymlet j'ai ajouté:
on: push
name: Publish Website
jobs:
FTP-Deploy-Action:
name: FTP-Deploy-Action
runs-on: ubuntu-latest
steps:
- uses: actions/[email protected]
with:
fetch-depth: 2
- name: FTP-Deploy-Action
uses: SamKirkland/[email protected]
with:
ftp-server: ${{ secrets.FTP_SERVER }} ftp-username: ${{ secrets.FTP_USERNAME }}
ftp-password: ${{ secrets.FTP_PASSWORD }}
J'ai créé un secret pour ce repo qui contient les éléments suivants:
FTP_SERVER: sftp.server.com, FTP_USERNAME: user, FTP_PASSWORD: password
Je peux voir l'action en cours d'exécution dans Github mais cela fait des erreurs sur la FTP-Deploy-Actiontâche.
## [error] Entrée requise et non fournie: serveur ftp
Ceci est secret et fonctionne avec Filezilla.
Quelqu'un saurait-il si j'ai mal configuré cela?
Réponses
J'ai pu le faire fonctionner sur mon propre repo. Je pense que le problème est peut-être lié à la configuration de vos secrets. Cette erreur apparaît généralement lorsque les paramètres requis d'une action github n'ont pas été fournis, donc curieux de savoir si les clés sont différentes ou si elles ont été enregistrées comme vides. Je supprimerais le FTP_SERVERsecret et le créerais à nouveau pour être sûr.
Exécution réussie du workflow
Code de workflow
- name: FTP-Deploy-Action
uses: SamKirkland/[email protected]
with:
ftp-server: ${{ secrets.FTP_SERVER }} ftp-username: ${{ secrets.FTP_USERNAME }}
ftp-password: ${{ secrets.FTP_PASSWORD }}
local-dir: toupload
MISE À JOUR: exemple ajouté par commentaire laissé ci-dessous,
Exemple de création de secret pour référence. Fondamentalement, créez un secret par entrée plutôt qu'un secret groupé séparé par des virgules
La source: https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets