サクッと試験的にパイプライン作ってみたい時はこちらの方がおすすめ。
わざわざJenkinsfileをリモートリポジトリに用意しなくていい。
デメリットは誤ってこのジョブを消しちゃったら何も残らないくらい。
設定->パイプライン->Scriptに直接書けばいい
例
pipeline {
agent any
triggers {
cron('H * * * *')
}
environment {
USERNAME = 'USERNAME'
HOSTNAME = 'HOSTNAME'
}
stages {
stage('SSH and run script') {
steps {
sshagent(credentials: ['CREDENTIAL-ID']) {
sh '''
ssh ${USERNAME}@${HOSTNAME} "cd /PATH/ && bash FILENAME"
'''
}
}
}
stage('Clean Workspace') {
steps {
cleanWs()
}
}
}
}
USERNAME
HOSTNAME
CREDENTIAL-ID
PATH
FILENAME
だけ書き換えれば動きます。
内容は
1時間に1回、
USERNAME
アカウントでHOSTNAME
へSSH接続し(この際CREDENTIAL-ID
によりJenkinsサーバとHOSTNAME
間のノンパス設定済)、
PATH
にcdしてFILENAME
を実行、
最後にワークスペースをクリア
です。