Wie SFTP mit Github-Aktionen?
Ich möchte Github-Aktionen verwenden, um Dateien über SFTP (einzige Option für diesen Server) auf einen Remote-Server zu übertragen, wenn ich auf Github hochschiebe.
Ich benutze diese Aktion https://github.com/marketplace/actions/ftp-deploy
Ich habe eine Datei in meinem Repo erstellt .github/workflows/main.ymlund hinzugefügt:
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 }}
Ich habe ein Geheimnis für dieses Repo erstellt, das Folgendes enthält:
FTP_SERVER: sftp.server.com, FTP_USERNAME: user, FTP_PASSWORD: password
Ich kann sehen, dass die Aktion in Github ausgeführt wird, aber bei der FTP-Deploy-ActionAufgabe tritt ein Fehler auf .
## [Fehler] Eingabe erforderlich und nicht angegeben: FTP-Server
Dies ist geheim und funktioniert mit Filezilla.
Würde jemand wissen, ob ich das falsch eingerichtet habe?
Antworten
Ich konnte es auf meinem eigenen Repo zum Laufen bringen. Ich denke, das Problem könnte möglicherweise darin liegen, wie Ihre Geheimnisse eingerichtet wurden. Dieser Fehler zeigt normalerweise an, wenn erforderliche Parameter einer Github-Aktion nicht so neugierig angegeben wurden, ob die Schlüssel unterschiedlich sind oder ob sie als leer gespeichert wurden. Ich würde das FTP_SERVERGeheimnis löschen und es erneut erstellen, um sicherzugehen.
Erfolgreicher Workflow-Lauf
Workflow-Code
- 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
UPDATE: Beispiel pro Kommentar unten hinzugefügt,
Beispiel für eine geheime Erstellung als Referenz. Erstellen Sie grundsätzlich ein Geheimnis pro Eintrag und kein durch Kommas getrenntes gruppiertes Geheimnis
Quelle: https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets