diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5b39ee3..3626f98 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -43,7 +43,9 @@ jobs: # key: ${{ secrets.KEY }} # port: ${{ secrets.PORT }} # script_stop: true - # script: "mkdir abc/def,ls -al" + # script: | + # mkdir abc/def + # ls -al - name: pass environment uses: appleboy/ssh-action@master @@ -56,5 +58,5 @@ jobs: port: ${{ secrets.PORT }} envs: FOO script: | - echo "I am $FOO" - echo "I am $BAR" + echo "I am $FOO, thanks" + echo "I am $BAR, thanks" diff --git a/Dockerfile b/Dockerfile index da0a38f..ffe5adc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -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 RUN chmod +x /entrypoint.sh diff --git a/README.md b/README.md index a7fb5e5..77554c7 100644 --- a/README.md +++ b/README.md @@ -36,9 +36,9 @@ output: whoami ======END====== out: *** -========================================== -Successfully executed commands to all host. -========================================== +============================================== +✅ Successfully executed commands to all host. +============================================== ``` ## Input variables @@ -106,45 +106,62 @@ Multiple Commands Multiple Hosts ```diff - uses: appleboy/ssh-action@master - with: -- host: "foo.com" -+ host: "foo.com,bar.com" - username: ${{ secrets.USERNAME }} - key: ${{ secrets.KEY }} - port: ${{ secrets.PORT }} - script: | - whoami - ls -al + - name: multiple host + uses: appleboy/ssh-action@master + with: +- host: "foo.com" ++ host: "foo.com,bar.com" + username: ${{ secrets.USERNAME }} + key: ${{ secrets.KEY }} + port: ${{ secrets.PORT }} + script: | + whoami + ls -al ``` Pass environment variable to shell script ```diff - uses: appleboy/ssh-action@master -+ env: -+ FOO: "BAR" - with: - host: ${{ secrets.HOST }} - username: ${{ secrets.USERNAME }} - key: ${{ secrets.KEY }} - port: ${{ secrets.PORT }} -+ envs: FOO - script: | - echo "I am $FOO" - echo "I am $BAR" + - name: pass environment + uses: appleboy/ssh-action@master ++ env: ++ FOO: "BAR" + with: + host: ${{ secrets.HOST }} + username: ${{ secrets.USERNAME }} + key: ${{ secrets.KEY }} + port: ${{ secrets.PORT }} ++ envs: FOO + script: | + echo "I am $FOO" + echo "I am $BAR" ``` Stop script after first failure. ex: missing `abc` folder -```yaml -- name: stop script if command error - uses: appleboy/ssh-action@master - with: - host: ${{ secrets.HOST }} - username: ${{ secrets.USERNAME }} - key: ${{ secrets.KEY }} - port: ${{ secrets.PORT }} - script_stop: true - script: "mkdir abc/def,ls -al" +```diff + - name: stop script if command error + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.HOST }} + username: ${{ secrets.USERNAME }} + key: ${{ secrets.KEY }} + port: ${{ secrets.PORT }} ++ script_stop: true + 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 ```