Como fazer SFTP com ações do Github?
Eu quero usar as ações do Github para transferir arquivos para um servidor remoto via SFTP (única opção para este servidor) quando eu for empurrar para o Github.
Estou usando esta ação https://github.com/marketplace/actions/ftp-deploy
Eu criei um arquivo em meu repo .github/workflows/main.ymle adicionei:
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 }}
Criei um segredo para este repo que contém o seguinte:
FTP_SERVER: sftp.server.com, FTP_USERNAME: user, FTP_PASSWORD: password
Eu posso ver a ação em execução no Github, mas há erros na FTP-Deploy-Actiontarefa.
## [erro] Entrada necessária e não fornecida: servidor ftp
Isso está em segredo e funciona com o Filezilla.
Alguém saberia se eu configurei isso incorretamente?
Respostas
Consegui colocá-lo em funcionamento no meu próprio repo. Acho que o problema pode estar possivelmente em como seus segredos foram configurados. Esse erro geralmente aparece quando os parâmetros obrigatórios de uma ação do github não foram fornecidos, tão curioso se as chaves são diferentes ou se foram salvas como vazias. Gostaria de deletar o FTP_SERVERsegredo e criá-lo novamente para ter certeza.
Execução de sucesso do fluxo de trabalho
Código de Fluxo de Trabalho
- 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
ATUALIZAÇÃO: Adicionado exemplo por comentário deixado abaixo,
Exemplo de criação de segredo para referência. Basicamente, cria um segredo por entrada, em vez de um segredo agrupado separado por vírgulas
Fonte: https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets