Invoking ambiguous Pipeline Step triggerRemoteJob

Article ID:360030668932
1 minute readKnowledge base

Issue

The build console output shows a similar message:

 Invoking ambiguous Pipeline Step ‘triggerRemoteJob’ (org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep). ‘triggerRemoteJob’ could refer to any of the following steps: [org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep, com.cloudbees.opscenter.triggers.RemoteTriggerBuilderStep].

Followed by:

You can invoke steps by class name instead to avoid ambiguity. For example: steps.'org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep'(...)

The warning log you are seeing was added in JENKINS-53333. Which was released as part of Pipeline: Groovy plugin version 2.55.

The issue is that there are 2 plugins defining the Pipeline step triggerRemoteJob.

The plugins are:

  • operations-center-context

  • parameterized-remote-trigger

This means that when calling the short form (triggerRemoteJob) Jenkins Pipeline engine is unable to determine which step you are referring to.

Prior to Pipeline: Groovy plugin version 2.55, Pipeline would just choose whatever step it found first.

Resolution

Instead of using triggerRemoteJob(...), use:

  • steps.'org.jenkinsci.plugins.ParameterizedRemoteTrigger.pipeline.RemoteBuildPipelineStep'(...) - if you want to use the parameterized-remote-trigger implementation.

  • steps.'com.cloudbees.opscenter.triggers.RemoteTriggerBuilderStep'(...) - if you want to use the Operations Center implementation.

OR

Uninstall the parameterized-remote-trigger plugin so that the step is no longer ambiguous.