2016-12-24 64 views
0

我正在使用詹金斯管道 我想用戶通過電子郵件給予輸入 我試過這個,但沒有幫助。jenkins管道輸入通過電子郵件

def tok = UUID.randomUUID().toString() 
mail to: '[email protected]', subject: 'Ready to roll?', mimeType: 'text/html', 
body: """Please <a href="${env.JENKINS_URL}pipeline-inputs/${tok}/proceed">approve me</a>!""" 
input message: 'Ready?', token: tok 

任何關於這個的指針,我想令牌或任何類型的身份驗證也。 在此先感謝

+0

您是否嘗試過提交請求'捲曲'或郵差?是否需要POST請求? – StephenKing

回答

1
 emailext mimeType: 'text/html', 
       subject: "[Jenkins]${currentBuild.fullDisplayName}", 
       to: "[email protected]", 
       body: '''<a href="${BUILD_URL}input">click to approve</a>''' 

     def userInput = input id: 'userInput', 
           message: 'Let\'s promote?', 
           submitterParameter: 'submitter', 
           submitter: 'tom', 
           parameters: [ 
           [$class: 'TextParameterDefinition', defaultValue: 'sit', description: 'Environment', name: 'env'], 
           [$class: 'TextParameterDefinition', defaultValue: 'k8s', description: 'Target', name: 'target']] 

     echo ("Env: "+userInput['env']) 
     echo ("Target: "+userInput['target']) 
     echo ("submitted by: "+userInput['submitter']) 

湯姆會收到包含輸入網址郵件,只有Tom可以成功提交的輸入。