2017-11-23 17 views
1

jitkins pipline을 gitlab과 rsync에서 원격 호스트로 체크 아웃 할 때 오류가 발생했습니다. 그러나 동일한 컴퓨터에서 다른 디렉토리 체크 아웃과 rsync가 원격 호스트에 아무런 문제가 없습니다. 동일한 컴퓨터에서 동일합니다. 디렉터리 rsync 다른 원격 호스트에 아무런 문제가 없습니다. 여기 jinkkins pipline rsync some files error

내 rsync를 명령입니다 :

rsync -avn --delete '-e ssh -p 666' ./dist/ [email protected]:/data/foweb/dist/ 

내 pipline 스크립트 : (여기 rsync -e를 통해) ssh 명령은 로컬에서 작업하는 동안

node { 

stage('CheckOut') { 
    checkout([$class: 'GitSCM', branches: [[name: '**']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'a2cc73a7-b0c8-4497-9083-47ef78a03bc4', url: '[email protected]:front/foweb.git']]]) 
} 

stage('Build') { 
    sh ''' 
    cnpm install 
    npm run build 
    ''' 
} 

stage('Deploy Test'){ 
    sh ''' 
    rsync -av --delete '-e ssh -p 666' ./dist/ [email protected]:/data/www/foweb/ 
    ''' 
} 

답변

0

이 때마다 젠킨스와 SSH가 실패, 당신이 필요로하는 Jenkins를 실행하는 사용자를 확인합니다.

해당 사용자가 로컬 사용자 (ssh가 성공적으로 실행되고있는 사용자)와 다른 경우 이는 ~/.ssh/id_rsa(.pub) 키가 Jenkins에 표시되지 않음을 의미합니다.
젠킨스가 실행되는 ~user/.ssh에 키를보고해야합니다 (젠킨스 전용 키를 만드는 것이 더 좋음)