chore: support running commands from a file (#341)
This commit is contained in:
		
							parent
							
								
									ab698e59d8
								
							
						
					
					
						commit
						362a7f1677
					
				
							
								
								
									
										9
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							@ -42,6 +42,15 @@ jobs:
 | 
			
		||||
            set -e
 | 
			
		||||
            whoami
 | 
			
		||||
 | 
			
		||||
      - name: ssh commands from a file
 | 
			
		||||
        uses: ./
 | 
			
		||||
        with:
 | 
			
		||||
          host: ${{ env.REMOTE_HOST }}
 | 
			
		||||
          username: linuxserver.io
 | 
			
		||||
          password: password
 | 
			
		||||
          port: 2222
 | 
			
		||||
          script_path: testdata/test.sh
 | 
			
		||||
 | 
			
		||||
  check-ssh-key:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										14
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								README.md
									
									
									
									
									
								
							@ -46,6 +46,7 @@ See [action.yml](./action.yml) for more detailed information.
 | 
			
		||||
| proxy_cipher              | Allowed cipher algorithms for the proxy                                                  |               |
 | 
			
		||||
| proxy_use_insecure_cipher | Include more ciphers with use_insecure_cipher for the proxy                              | false         |
 | 
			
		||||
| script                    | Execute commands                                                                         |               |
 | 
			
		||||
| script_file               | Execute commands from a file                                                             |               |
 | 
			
		||||
| script_stop               | Stop script after first failure                                                          | false         |
 | 
			
		||||
| envs                      | Pass environment variables to shell script                                               |               |
 | 
			
		||||
| envs_format               | Flexible configuration of environment value transfer                                     |               |
 | 
			
		||||
@ -222,6 +223,19 @@ ssh-keygen -t ed25519 -a 200 -C "your_email@example.com"
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
#### Commands from a file
 | 
			
		||||
 | 
			
		||||
```yaml
 | 
			
		||||
- name: file commands
 | 
			
		||||
  uses: appleboy/ssh-action@v1.1.0
 | 
			
		||||
  with:
 | 
			
		||||
    host: ${{ secrets.HOST }}
 | 
			
		||||
    username: ${{ secrets.USERNAME }}
 | 
			
		||||
    key: ${{ secrets.KEY }}
 | 
			
		||||
    port: ${{ secrets.PORT }}
 | 
			
		||||
    script_path: scripts/script.sh 
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
#### Multiple Hosts
 | 
			
		||||
 | 
			
		||||
```diff
 | 
			
		||||
 | 
			
		||||
@ -63,6 +63,8 @@ inputs:
 | 
			
		||||
    description: "Include more ciphers for the proxy by using insecure ciphers."
 | 
			
		||||
  script:
 | 
			
		||||
    description: "Commands to be executed."
 | 
			
		||||
  script_path:
 | 
			
		||||
    description: "Path to the file containing commands to be executed."
 | 
			
		||||
  script_stop:
 | 
			
		||||
    description: "Stop the script after the first failure."
 | 
			
		||||
  envs:
 | 
			
		||||
@ -110,6 +112,7 @@ runs:
 | 
			
		||||
        INPUT_PROXY_TIMEOUT: ${{ inputs.proxy_timeout }}
 | 
			
		||||
        INPUT_COMMAND_TIMEOUT: ${{ inputs.command_timeout }}
 | 
			
		||||
        INPUT_SCRIPT: ${{ inputs.script }}
 | 
			
		||||
        INPUT_SCRIPT_FILE: ${{ inputs.script_path }}
 | 
			
		||||
        INPUT_SCRIPT_STOP: ${{ inputs.script_stop }}
 | 
			
		||||
        INPUT_ENVS: ${{ inputs.envs }}
 | 
			
		||||
        INPUT_ENVS_FORMAT: ${{ inputs.envs_format }}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										3
									
								
								testdata/test.sh
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								testdata/test.sh
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
set -e
 | 
			
		||||
whoami
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user