From 7589349f24a034fb4479545f2b8c423d7790cca4 Mon Sep 17 00:00:00 2001 From: Alfred Dagenais Date: Wed, 13 Jul 2022 16:49:23 -0400 Subject: [PATCH] CHG: ajustement into documentation --- README.md | 175 ++++++++++++++++++++++++++++---------------------- entrypoint.sh | 3 - 2 files changed, 100 insertions(+), 78 deletions(-) diff --git a/README.md b/README.md index bc705db..e611d56 100644 --- a/README.md +++ b/README.md @@ -18,99 +18,124 @@ `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 `true` will delete all files in the remote path before upload. -`passowrd`| no| | SSH passsword,If a password is set, `ssh_private_key` is ignored +`password`| no| | SSH passsword,If a password is set, `ssh_private_key` is ignored `on @v1.2.4` > **Warning** > Be careful when use `delete_remote_files`, This will remove all files in your remote path before uploading +## Action Example +```yaml +on: [push] -## Action Example +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' +``` +```yaml +on: [push] - 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.3 - 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' +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 }} +``` ## 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 - 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' - +```yaml +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' +``` + ![](./resource/reactExample.jpg) ## 2.Deploy Umi App Example (Ant Design Pro) - name: continuous deployment - 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 umi - run: yarn global add umi - - - 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: './dist/*' - remote_path: '/var/www/umiapp' - sftpArgs: '-o ConnectTimeout=5' +```yaml +name: continuous deployment +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 umi + run: yarn global add umi + + - 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: './dist/*' + remote_path: '/var/www/umiapp' + sftpArgs: '-o ConnectTimeout=5' +``` ![](./resource/umiExample.jpg) diff --git a/entrypoint.sh b/entrypoint.sh index ff988ef..8ada514 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -3,7 +3,6 @@ #set -e at the top of your script will make the script exit with an error whenever an error occurs (and is not explicitly handled) set -eu - TEMP_SSH_PRIVATE_KEY_FILE='../private_key.pem' TEMP_SFTP_FILE='../sftp' @@ -13,7 +12,6 @@ if [ -z "$6" ]; then exit 1 fi - # use password if [ -z != ${10} ]; then echo 'use sshpass' @@ -67,4 +65,3 @@ sftp -b $TEMP_SFTP_FILE -P $3 $8 -o StrictHostKeyChecking=no -i $TEMP_SSH_PRIVAT echo 'Deploy Success' exit 0 -