이 작업을 사용하여 SSH를 사용하여 원격 컴퓨터에서 셸 명령 또는 스크립트를 실행합니다. 이 작업을 사용하면 SSH를 사용하여 원격 컴퓨터에 연결하고 명령 또는 스크립트를 실행할 수 있습니다.
구문론
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
#interactiveSession: false # boolean. Enable interactive session. Default: false.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
#interactiveKeyboardAuthentication: false # boolean. Use interactive-keyboard authentication. Default: false.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
#interactiveSession: false # boolean. Enable interactive session. Default: false.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
inputs:
sshEndpoint: # string. Required. SSH service connection.
runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
commands: # string. Required when runOptions = commands. Commands.
#scriptPath: # string. Required when runOptions = script. Shell script path.
#inline: # string. Required when runOptions = inline. Inline Script.
#args: # string. Optional. Use when runOptions = script. Arguments.
# Advanced
#failOnStdErr: true # boolean. Fail on STDERR. Default: true.
readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
입력
SSH 서비스 연결sshEndpoint
-
string
; 필수 사항입니다.
원격 머신에 대한 연결 세부 정보가 포함된 SSH 서비스 연결의 이름을 지정합니다. 원격 컴퓨터의 호스트 이름 또는 IP 주소, 포트 번호 및 사용자 이름은 SSH 서비스 연결을 만드는 데 필요합니다.
- 인증을 위해 프라이빗 키와 암호를 지정해야 합니다.
- 암호는 원격 Linux 컴퓨터에 인증하는 데 사용할 수 있지만 macOS 또는 Windows 시스템에서는 지원되지 않습니다.
runOptions
-
실행
string
; 필수 사항입니다. 허용되는 값: commands
, script
(스크립트 파일), inline
(인라인 스크립트). 기본값은 commands
입니다.
원격 컴퓨터에서 셸 명령 또는 셸 스크립트를 실행합니다.
commands
-
명령
string
;
runOptions = commands
때 필요합니다.
원격 컴퓨터에서 실행할 셸 명령을 지정합니다. 이 매개 변수는 명령실행 옵션에 대해 선택된 경우에만 사용할 수 있습니다. 여러 줄 텍스트 상자의 새 줄에 인수와 함께 각 명령을 입력합니다. 여러 명령을 함께 실행하려면 세미콜론으로 구분된 동일한 줄에 명령을 입력합니다. 예: cd /home/user/myFolder;build
.
비고
각 명령은 별도의 프로세스에서 실행됩니다. 상호 종속된 일련의 명령을 실행하려는 경우(예: 명령을 실행하기 전에 현재 폴더 변경) 대신 인라인 스크립트 옵션을 사용합니다.
scriptPath
-
셸 스크립트 경로
string
;
runOptions = script
때 필요합니다.
원격 컴퓨터에서 실행할 셸 스크립트 파일의 경로를 지정합니다. 이 매개 변수는 실행 옵션에 대해 Shell 스크립트 선택된 경우에만 사용할 수 있습니다.
inline
-
인라인 스크립트
string
;
runOptions = inline
때 필요합니다.
원격 컴퓨터에서 실행할 셸 스크립트를 씁니다.
interpreterCommand
-
인터프리터 명령
string
; 선택 사항.
runOptions = inline
때 사용합니다. 기본값은 /bin/bash
입니다.
스크립트를 실행하는 데 사용되는 명령 인터프리터의 경로를 지정합니다. 스크립트의 시작 부분에 shebang 줄을 추가합니다. UNIX와 유사한 운영 체제에만 관련됩니다. Windows 기반 원격 호스트에 빈 문자열을 사용합니다. shebang (#!)대해 자세히 알아보세요.
args
-
인수
string
; 선택 사항.
runOptions = script
때 사용합니다.
셸 스크립트에 전달할 인수를 지정합니다. 이 매개 변수는 실행 옵션에 대해 Shell 스크립트 선택된 경우에만 사용할 수 있습니다.
STDERRfailOnStdErr
- 실패
boolean
; 기본값은 true
입니다.
값이 true
경우 원격 명령 또는 스크립트가 STDERR
쓰면 빌드가 실패합니다.
interactiveSession
-
대화형 세션 사용
boolean
; 기본값은 false
입니다.
대화형 세션을 시작합니다. 암호 요청은 사용자의 암호로 채워집니다. 대화형 세션은 sudo
같은 명령을 실행하는 데 유용할 수 있습니다.
SSH 핸드셰이크 시간 제한readyTimeout
-
string
; 필수 사항입니다. 기본값은 20000
입니다.
작업이 SSH 핸드셰이크가 완료될 때까지 대기하는 시간(밀리초)을 지정합니다.
interactiveKeyboardAuthentication
-
대화형 키보드 인증 사용
boolean
; 기본값은 false
입니다.
대화형 키보드 인증을 사용하도록 설정합니다. 대상 SSH 서버에 대화형 키보드 인증이 필요한 경우 true
설정합니다(PasswordAuthentication
대상 컴퓨터에서 사용하지 않도록 설정/sshd_config No로 설정됨).
작업 제어 옵션
모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성참조하세요.
출력 변수
없음.
비고
이 작업을 사용하여 SSH를 사용하여 원격 컴퓨터에서 셸 명령 또는 스크립트를 실행합니다. 이 작업을 사용하면 SSH를 사용하여 원격 컴퓨터에 연결하고 명령 또는 스크립트를 실행할 수 있습니다.
필수 조건
- 이 작업은 SSH 키 쌍을 사용하여 원격 머신에 연결할 수 있도록 지원합니다.
- 공개 키를 미리 설치하거나 원격 머신에 복사해야 합니다.
지원되는 알고리즘
키 쌍 알고리즘
- 증권 시세 표시기
- 증권 시세 표시기
암호화 알고리즘
- AES256-CBC
- AES192-CBC
- AES128-CBC
- 복어-CBC
- 3데스-CBC
- 아크포256
- 아크포128
- 캐스트128-CBC
- 아크푸어(arcfour)
OpenSSL v1.0.1 이상(에이전트의 경우):
- aes256-ctr
- aes192-ctr
- aes128-ctr
OpenSSL v1.0.1 이상, NodeJS v0.11.12 이상(에이전트의 경우):
- AES128-GCM
- aes128-gcm@openssh.com
- AES256-GCM
- aes256-gcm@openssh.com
요구 사항
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.206.1 이상 |
작업 범주 | 배치하다 |
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.144.0 이상 |
작업 범주 | 배치하다 |
요구 사항 | 설명 |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
다음에서 실행 | 에이전트, DeploymentGroup |
요구 | 없음 |
기능 | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 | 어느 것이든 |
settable 변수 | 어느 것이든 |
에이전트 버전 | 2.102.0 이상 |
작업 범주 | 배치하다 |
참고하십시오
- SSH 키 설치 작업
- SSH 통해 파일 복사
- 블로그 게시물 SSH 빌드 작업