[英]How to use Jenkins P4 plugin publish for declarative pipeline
stage('Publish Assets')
{
when{
expression { //some condition }
}
steps{
p4publish(
credential: 'abcd',
publish: [$class: 'SubmitImpl', delete: false, description: 'Submitted by Jenkins. Build: ${BUILD_TAG}', onlyOnSuccess: true, purge: '', reopen: false],
workspace: [$class: 'ManualWorkspaceImpl', charset: 'none', name: 'jenkins-abcd-publish', pinHost: false, spec: [allwrite: true, backup: false, clobber: false, compress: false, line: 'LOCAL', locked: false, modtime: false, rmdir: false, serverID: '', streamName: '//abcd/efg', type: 'WRITABLE', view: '']])
}
}
我尝试了几件事并将其放在脚本块下,但没有运气。 它不应该使用声明性管道还是我错过了什么? 如果我能在这方面得到一些帮助就好了
在可能有帮助的 P4 插件库中找到了本指南。 他们似乎建议使用代码段生成器来帮助获得正确的语法。 他们展示的示例是用命令式语法编写的,但我不明白为什么它不适用于声明式。
node {
stage('Sync') {
// sync files from //streams/st1-main/...
p4sync(charset: 'none',
credential: 'phooey1666',
populate: [$class: 'AutoCleanImpl',
delete: true,
modtime: false,
pin: '',
quiet: true,
replace: true],
stream: '//streams/st1-main')
}
}
p4 发布https://github.com/jenkinsci/p4-plugin/blob/master/WORKFLOW.md#using-standard-freestyle-jobs-steps
p4publish(credential: 'phooey1666',
publish: [$class: 'SubmitImpl',
delete: false,
description: 'Submitted by Jenkins. Build: ${BUILD_TAG}',
onlyOnSuccess: false,
purge: '',
reopen: false],
workspace: [$class: 'StreamWorkspaceImpl',
charset: 'none',
format: 'jenkins-${NODE_NAME}-${JOB_NAME}-publish',
pinHost: false,
streamName: '//streams/st2-rel1'])
https://github.com/jenkinsci/p4-plugin/blob/master/WORKFLOW.md
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.