如何通过将代理作为参数传递来更改Jenkins声明性管道中方法内的代理?

如何通过将代理作为参数传递来更改Jenkins声明性管道中方法内的代理?,jenkins,jenkins-plugins,jenkins-declarative-pipeline,Jenkins,Jenkins Plugins,Jenkins Declarative Pipeline,我有一个管道脚本,其中相同的方法需要在不同的代理中执行。 我已经为公共功能定义了方法,但是我希望将代理作为参数传递给方法并执行该函数。这基本上导致了错误 那么,是否可以将代理作为方法参数传递并在其中执行某些脚本 例如: 当我执行时,它会出现如下错误 java.lang.NoSuchMethodError: No such DSL method 'agent' found among steps [addBadge, addErrorBadge, addHtmlBadge, addInfoBadg

我有一个管道脚本,其中相同的方法需要在不同的代理中执行。 我已经为公共功能定义了方法,但是我希望将代理作为参数传递给方法并执行该函数。这基本上导致了错误

那么,是否可以将代理作为方法参数传递并在其中执行某些脚本

例如:

当我执行时,它会出现如下错误

java.lang.NoSuchMethodError: No such DSL method 'agent' found among steps [addBadge, addErrorBadge, addHtmlBadge, addInfoBadge, addShortText, addWarningBadge, archive, awaitDeploymentCompletion, awsIdentity, bat, bitbucketStatusNotify, build, catchError, cfInvalidate, cfnCreateChangeSet, cfnDelete, cfnDeleteStackSet, cfnDescribe, cfnExecuteChangeSet, cfnExports, cfnUpdate, cfnUpdateStackSet, cfnValidate, checkout, container, containerLog, createSummary, cucumberSlackSend, deleteDir, deployAPI, dir, dockerFingerprintFrom, dockerFingerprintRun, ec2ShareAmi, echo, ecrDeleteImage, ecrListImages, ecrLogin, envVarsForTool, error, fileExists, findFiles, getContext, git, input, invokeLambda, isUnix, jiraComment, jiraIssueSelector, jiraSearch, junit, library, libraryResource, listAWSAccounts, load, lock, mail,

欢迎任何指导。

尝试将其分为两个不同的函数,其中一个函数返回agentlabel的值,并将一些参数作为输入。这是可以用于在后台选择代理标签的内容

然后,让您的函数单独执行一组shell变量或一些其他任务

java.lang.NoSuchMethodError: No such DSL method 'agent' found among steps [addBadge, addErrorBadge, addHtmlBadge, addInfoBadge, addShortText, addWarningBadge, archive, awaitDeploymentCompletion, awsIdentity, bat, bitbucketStatusNotify, build, catchError, cfInvalidate, cfnCreateChangeSet, cfnDelete, cfnDeleteStackSet, cfnDescribe, cfnExecuteChangeSet, cfnExports, cfnUpdate, cfnUpdateStackSet, cfnValidate, checkout, container, containerLog, createSummary, cucumberSlackSend, deleteDir, deployAPI, dir, dockerFingerprintFrom, dockerFingerprintRun, ec2ShareAmi, echo, ecrDeleteImage, ecrListImages, ecrLogin, envVarsForTool, error, fileExists, findFiles, getContext, git, input, invokeLambda, isUnix, jiraComment, jiraIssueSelector, jiraSearch, junit, library, libraryResource, listAWSAccounts, load, lock, mail,