8 Commits

Author SHA1 Message Date
9085f3ea5b chore: update default timeout to 10 minutes
Some checks failed
remote ssh command / Build (push) Failing after 5s
2019-11-30 23:01:49 +08:00
696aab4627 fix typos in README.md (#12)
fix typos in README.md
2019-11-23 12:12:53 +08:00
a88f6f2013 fix typos in README.md 2019-11-21 15:53:08 +01:00
6f091cd9e3 chore(ssh): remove comma splitting
Some checks failed
remote ssh command / Build (push) Failing after 4s
fix https://github.com/appleboy/ssh-action/issues/10
2019-11-21 11:10:52 +08:00
aa1ecdd19a update doc
Some checks failed
remote ssh command / Build (push) Failing after 3s
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2019-09-30 16:55:40 +08:00
bffdd4e1f4 chore(ssh): set default port as 22
fix: https://github.com/appleboy/ssh-action/issues/5

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2019-09-30 16:54:44 +08:00
f4890bec77 update action link
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2019-09-30 11:35:28 +08:00
9aaf218321 docs: update readme 2019-09-29 14:16:47 +08:00
4 changed files with 83 additions and 55 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.4-linux-amd64
ADD entrypoint.sh /entrypoint.sh ADD entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh RUN chmod +x /entrypoint.sh

View File

@ -1,6 +1,6 @@
# 🚀 SSH for GitHub Actions # 🚀 SSH for GitHub Actions
[GitHub Action](https://developer.github.com/actions/) for executing remote ssh commands. [GitHub Action](https://github.com/features/actions) for executing remote ssh commands.
![ssh workflow](./images/ssh-workflow.png) ![ssh workflow](./images/ssh-workflow.png)
@ -11,7 +11,15 @@
Executing remote ssh commands. Executing remote ssh commands.
```yaml ```yaml
- name: executing remote ssh commands using password name: remote ssh command
on: [push]
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: executing remote ssh commands using password
uses: appleboy/ssh-action@master uses: appleboy/ssh-action@master
with: with:
host: ${{ secrets.HOST }} host: ${{ secrets.HOST }}
@ -28,21 +36,21 @@ output:
whoami whoami
======END====== ======END======
out: *** out: ***
========================================== ==============================================
Successfully executed commands to all host. Successfully executed commands to all host.
========================================== ==============================================
``` ```
## Input variables ## Input variables
see the [action.yml](./action.yml) file for more detail imformation. See [action.yml](./action.yml) for more detailed information.
* host - scp remote host * host - remote host
* port - scp remote port * port - remote port, default is `22`
* username - scp username * username - ssh username
* password - scp password * password - ssh password
* timeout - timeout for ssh to remote host, default is `30s` * timeout - timeout for ssh to remote host, default is `30s`
* command_timeout - timeout for scp command, default is `1m` * command_timeout - timeout for ssh command, default is `10m`
* key - content of ssh private key. ex raw content of ~/.ssh/id_rsa * key - content of ssh private key. ex raw content of ~/.ssh/id_rsa
* key_path - path of ssh private key * key_path - path of ssh private key
* script - execute commands * script - execute commands
@ -98,6 +106,7 @@ Multiple Commands
Multiple Hosts Multiple Hosts
```diff ```diff
- name: multiple host
uses: appleboy/ssh-action@master uses: appleboy/ssh-action@master
with: with:
- host: "foo.com" - host: "foo.com"
@ -113,6 +122,7 @@ Multiple Hosts
Pass environment variable to shell script Pass environment variable to shell script
```diff ```diff
- name: pass environment
uses: appleboy/ssh-action@master uses: appleboy/ssh-action@master
+ env: + env:
+ FOO: "BAR" + FOO: "BAR"
@ -129,14 +139,29 @@ Pass environment variable to shell script
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
``` ```

View File

@ -6,6 +6,7 @@ inputs:
description: 'ssh remote host' description: 'ssh remote host'
port: port:
description: 'ssh remote port' description: 'ssh remote port'
default: 22
username: username:
description: 'ssh username' description: 'ssh username'
password: password:
@ -15,7 +16,7 @@ inputs:
default: "30s" default: "30s"
command_timeout: command_timeout:
description: 'timeout for ssh command' description: 'timeout for ssh command'
default: "1m" default: "10m"
key: key:
description: 'content of ssh private key. ex raw content of ~/.ssh/id_rsa' description: 'content of ssh private key. ex raw content of ~/.ssh/id_rsa'
key_path: key_path: