chore(ssh): remove comma splitting

fix https://github.com/appleboy/ssh-action/issues/10
This commit is contained in:
Bo-Yi Wu 2019-11-20 23:49:31 +08:00
parent aa1ecdd19a
commit 6f091cd9e3
3 changed files with 58 additions and 39 deletions

View file

@ -43,7 +43,9 @@ jobs:
# key: ${{ secrets.KEY }} # key: ${{ secrets.KEY }}
# port: ${{ secrets.PORT }} # port: ${{ secrets.PORT }}
# script_stop: true # script_stop: true
# script: "mkdir abc/def,ls -al" # script: |
# mkdir abc/def
# ls -al
- name: pass environment - name: pass environment
uses: appleboy/ssh-action@master uses: appleboy/ssh-action@master
@ -56,5 +58,5 @@ jobs:
port: ${{ secrets.PORT }} port: ${{ secrets.PORT }}
envs: FOO envs: FOO
script: | script: |
echo "I am $FOO" echo "I am $FOO, thanks"
echo "I am $BAR" echo "I am $BAR, thanks"

View file

@ -1,4 +1,4 @@
FROM appleboy/drone-ssh:1.5.2-linux-amd64 FROM appleboy/drone-ssh:1.5.3-linux-amd64
ADD entrypoint.sh /entrypoint.sh ADD entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh RUN chmod +x /entrypoint.sh

View file

@ -36,9 +36,9 @@ output:
whoami whoami
======END====== ======END======
out: *** out: ***
========================================== ==============================================
Successfully executed commands to all host. Successfully executed commands to all host.
========================================== ==============================================
``` ```
## Input variables ## Input variables
@ -106,45 +106,62 @@ Multiple Commands
Multiple Hosts Multiple Hosts
```diff ```diff
uses: appleboy/ssh-action@master - name: multiple host
with: uses: appleboy/ssh-action@master
- host: "foo.com" with:
+ host: "foo.com,bar.com" - host: "foo.com"
username: ${{ secrets.USERNAME }} + host: "foo.com,bar.com"
key: ${{ secrets.KEY }} username: ${{ secrets.USERNAME }}
port: ${{ secrets.PORT }} key: ${{ secrets.KEY }}
script: | port: ${{ secrets.PORT }}
whoami script: |
ls -al whoami
ls -al
``` ```
Pass environment variable to shell script Pass environment variable to shell script
```diff ```diff
uses: appleboy/ssh-action@master - name: pass environment
+ env: uses: appleboy/ssh-action@master
+ FOO: "BAR" + env:
with: + FOO: "BAR"
host: ${{ secrets.HOST }} with:
username: ${{ secrets.USERNAME }} host: ${{ secrets.HOST }}
key: ${{ secrets.KEY }} username: ${{ secrets.USERNAME }}
port: ${{ secrets.PORT }} key: ${{ secrets.KEY }}
+ envs: FOO port: ${{ secrets.PORT }}
script: | + envs: FOO
echo "I am $FOO" script: |
echo "I am $BAR" echo "I am $FOO"
echo "I am $BAR"
``` ```
Stop script after first failure. ex: missing `abc` folder Stop script after first failure. ex: missing `abc` folder
```yaml ```diff
- name: stop script if command error - name: stop script if command error
uses: appleboy/ssh-action@master uses: appleboy/ssh-action@master
with: with:
host: ${{ secrets.HOST }} host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }} username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }} key: ${{ secrets.KEY }}
port: ${{ secrets.PORT }} port: ${{ secrets.PORT }}
script_stop: true + script_stop: true
script: "mkdir abc/def,ls -al" script: |
mkdir abc/def
ls -al
```
output:
```sh
======CMD======
mkdir abc/def
ls -al
======END======
2019/11/21 01:16:21 Process exited with status 1
err: mkdir: cannot create directory abc/def: No such file or directory
##[error]Docker run failed with exit code 1
``` ```