Criando Action no Github para atualizar uma aplicação via FTP
Olá Gente!
Em muitos projetos ainda se utiliza o FTP, porem, ter que enviar ao Github e depois enviar ao FTP se torna demorado.
Para isto, podemos configurar uma Action para que sempre que um Push for feito no repositório os arquivos sejam sincronizados com um ftp.
Antes de tudo, acesse seu repositório e clique em “Settings” e depois em “Secrets and variables” e em “Actions”:
Através deste caminho podemos criar variáveis secretas para serem utilizadas nas Actions.
Aqui precisamos criar as varáveis secretas:
- FTP_USERNAME
- FTP_PASSWORD
- FTP_PORT
- FTP_SERVER
Segue exemplo:
Agora volte ao seu repositório e crie um arquivo dentro da pasta “.github/workflows/” de seu repositório.
No meu caso, utilizo nome “release.yml”.
Agora defina o nome de sua Action:
name: Release
Agora iremos configurar para que esta ação seja executada toda vez que um Push for feito:
on: push
Agora iremos começar a configurar os “jobs”.
jobs:
web-deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Get latest code
uses: actions/checkout@v2
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@4.3.3
with:
server: ${{ secrets.ftp_server }}
port: ${{ secrets.ftp_port }}
username: ${{ secrets.ftp_username }}
password: ${{ secrets.ftp_password }}
Devemos ter um arquivo “release.yml” similar a arquivo abaixo:
name: Release
on: push
jobs:
web-deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Get latest code
uses: actions/checkout@v2
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@4.3.3
with:
server: ${{ secrets.ftp_server }}
port: ${{ secrets.ftp_port }}
username: ${{ secrets.ftp_username }}
password: ${{ secrets.ftp_password }}
Vamos entender o que esta sendo feito:
- Carregamos “actions/checkout@v2” que é necessário para toda ação
- Carregamos o repositório “SamKirkland/FTP-Deploy-Action@4.3.3” que é uma Action para enviar arquivos via FTP
- Definimos as variáveis dentro do campo “with”
Pronto! Agora sempre que um Push for feito os arquivos serão sincronizados com o FTP.
Por hoje é só, pessoal! 👩💻
Até a próxima! 👋