1 Star 0 Fork 0

Chen/SFTP-Deploy-Action

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

SFTP Deploy action

Use this action to deploy your files to server using SSH Private Key

使用此action部署你的项目到服务器上,中文介绍链接:使用Github Action 部署项目到云服务器

1. Inputs

Name Required Default Description
username yes SSH username
server yes Remote host
port yes 22 Remote host port
ssh_private_key no You can copy private key from your ssh_private_key file, and save torepo/settings/secrets
local_path yes ./* local_path of you project, if you want put single file:use path like ./myfile, if you want put directory: use path like ./static/*, it will put all files under static directory. Default to ./*(will put all files in your repo).
remote_path yes Remote path
sftp_only no If your port only accepts the sftp protocol, set this option to true. However, please note that when this option is set to true, the remote folder will not be created automatically.
args sftpArgs no other args yor want to use of sftp, E.g.-o ConnectTimeout=5
delete_remote_files no false Set to true will delete remote path folder and all files in it.
password no SSH passsword,If a password is set, ssh_private_key is ignored. for @v1.2.4 and greater

Warning

Be careful when use delete_remote_files, This will delete remote path folder and all files in it


2.Action Examples

on: [push]

jobs:
    deploy_job:
    runs-on: ubuntu-latest
    name: deploy
    steps:
        - name: Checkout
        uses: actions/checkout@v2
        - name: deploy file
        uses: wlixcc/SFTP-Deploy-Action@v1.2.4
        with:
            username: 'root'
            server: 'your server ip'
            ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }} 
            local_path: './static/*'
            remote_path: '/var/www/app'
            sftpArgs: '-o ConnectTimeout=5'
on: [push]

jobs:
    deploy_job:
    runs-on: ubuntu-latest
    name: deploy
    steps:
        - name: Checkout
        uses: actions/checkout@v2
        - name: Deploy file
        uses: wlixcc/SFTP-Deploy-Action@v1.2.4
        with:
            username: ${{ secrets.FTP_USERNAME }}
            server: ${{ secrets.FTP_SERVER }}
            port: ${{ secrets.FTP_PORT }}
            local_path: './static/*'
            remote_path: '/var/www/app'
            sftp_only: true
            password: ${{ secrets.FTP_PASSWORD }}

3. Deploy React App Example

on: [push]

jobs:
    deploy_job:
    runs-on: ubuntu-latest
    name: build&deploy
    steps:
        # To use this repository's private action, you must check out the repository
        - name: Checkout
        uses: actions/checkout@v2

        - name: Install Dependencies
        run: yarn
        - name: Build
        run: yarn build

        - name: deploy file to server
        uses: wlixcc/SFTP-Deploy-Action@v1.2.4
        with:
            username: 'root'
            server: '${{ secrets.SERVER_IP }}'
            ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
            local_path: './build/*'
            remote_path: '/var/www/react-app'
            sftpArgs: '-o ConnectTimeout=5'


4.Invalid format? You need keep format

If you use the Ed25519 algorithm to generate an SSH key pair ssh-keygen -t ed25519 -C "your_email@example.com", you need to note that the last line of the private key is a blank line. You need to keep this line when adding Repository secrets, otherwise it may lead to an invalid format error.

空文件

简介

暂无描述 展开 收起
Shell 等 2 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dawningw/SFTP-Deploy-Action.git
git@gitee.com:dawningw/SFTP-Deploy-Action.git
dawningw
SFTP-Deploy-Action
SFTP-Deploy-Action
master

搜索帮助

A270a887 8829481 3d7a4017 8829481