docs: update README

This commit is contained in:
ChenjxJames
2021-11-14 11:00:03 +08:00
parent 9289a89a12
commit 7dde96b18c

170
README.md
View File

@@ -1,12 +1,9 @@
# SFTP Deploy action # SFTP Deploy action
> Use this action to deploy your files to server using `SSH Private Key` > Use this action to deploy your files to server using `SSH Private Key`
> 使用此`action`部署你的项目到服务器上,`仅支持密钥对连接` > 使用此`action`部署你的项目到服务器上,`仅支持密钥对连接`
> [使用Github Action 部署项目到云服务器](https://zhuanlan.zhihu.com/p/107545396) > [使用Github Action 部署项目到云服务器](https://zhuanlan.zhihu.com/p/107545396)
## Inputs ## Inputs
### `username` ### `username`
@@ -25,108 +22,109 @@ sftp srever port , default `22`
**Required** you can copy private_key from your `ssh_private_key.pem file`, keep format, and save at`repo/settings/secrets` **Required** you can copy private_key from your `ssh_private_key.pem file`, keep format, and save at`repo/settings/secrets`
![secret](./resource/secret.jpg)
![](./resource/secret.jpg)
### `local_path` ### `local_path`
**Required** `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). **Required** `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` ### `remote_path`
**Required** remote_path **Required** remote_path
### `args` ### `args`
args of sftp cmd, E.g.`-o ConnectTimeout=5` args of sftp cmd, E.g.`-o ConnectTimeout=5`
## Action Example
## Action Example ```yml
on: [push]
jobs:
on: [push] deploy_job:
runs-on: ubuntu-latest
jobs: name: deploy
deploy_job: steps:
runs-on: ubuntu-latest - name: Checkout
name: deploy uses: actions/checkout@v2
steps: - name: deploy file
- name: Checkout uses: ChenjxJames/SFTP-Deploy-Action@v1.3.2
uses: actions/checkout@v2 with:
- name: deploy file username: 'root'
uses: wlixcc/SFTP-Deploy-Action@v1.0 server: 'your server ip'
with: ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
username: 'root' local_path: './static/*'
server: 'your server ip' remote_path: '/var/www/app'
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }} args: '-o ConnectTimeout=5'
local_path: './static/*' ```
remote_path: '/var/www/app'
args: '-o ConnectTimeout=5'
## 1. [Deploy React App Example](https://github.com/wlixcc/React-Deploy) ## 1. [Deploy React App Example](https://github.com/wlixcc/React-Deploy)
> If you use nginx, all you need to do is upload the static files to the server after the project is built > If you use nginx, all you need to do is upload the static files to the server after the project is built
on: [push] ```yml
on: [push]
jobs:
deploy_job: jobs:
runs-on: ubuntu-latest deploy_job:
name: build&deploy runs-on: ubuntu-latest
steps: name: build&deploy
# To use this repository's private action, you must check out the repository steps:
- name: Checkout # To use this repository's private action, you must check out the repository
uses: actions/checkout@v2 - name: Checkout
uses: actions/checkout@v2
- name: Install Dependencies
run: yarn - name: Install Dependencies
- name: Build run: yarn
run: yarn build - name: Build
run: yarn build
- name: deploy file to server
uses: wlixcc/SFTP-Deploy-Action@v1.0
with:
username: 'root'
server: '${{ secrets.SERVER_IP }}'
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
local_path: './build/*'
remote_path: '/var/www/react-app'
args: '-o ConnectTimeout=5'
![](./resource/reactExample.jpg)
- name: deploy file to server
uses: ChenjxJames/SFTP-Deploy-Action@v1.3.2
with:
username: 'root'
server: '${{ secrets.SERVER_IP }}'
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
local_path: './build/*'
remote_path: '/var/www/react-app'
args: '-o ConnectTimeout=5'
```
![run](./resource/reactExample.jpg)
## 2.Deploy Umi App Example (Ant Design Pro) ## 2.Deploy Umi App Example (Ant Design Pro)
name: continuous deployment ```yml
on: [push] name: continuous deployment
on: [push]
jobs:
deploy_job: jobs:
runs-on: ubuntu-latest deploy_job:
name: build&deploy runs-on: ubuntu-latest
steps: name: build&deploy
# To use this repository's private action, you must check out the repository steps:
- name: Checkout # To use this repository's private action, you must check out the repository
uses: actions/checkout@v2 - name: Checkout
uses: actions/checkout@v2
- name: Install umi
run: yarn global add umi - name: Install umi
run: yarn global add umi
- name: Install Dependencies
run: yarn - name: Install Dependencies
- name: Build run: yarn
run: yarn build - name: Build
run: yarn build
- name: deploy file to server
uses: wlixcc/SFTP-Deploy-Action@v1.0 - name: deploy file to server
with: uses: ChenjxJames/SFTP-Deploy-Action@v1.3.2
username: 'root' with:
server: '${{ secrets.SERVER_IP }}' username: 'root'
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }} server: '${{ secrets.SERVER_IP }}'
local_path: './dist/*' ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
remote_path: '/var/www/umiapp' local_path: './dist/*'
args: '-o ConnectTimeout=5' remote_path: '/var/www/umiapp'
![](./resource/umiExample.jpg) args: '-o ConnectTimeout=5'
```
![run](./resource/umiExample.jpg)