It seems there is no point with Envinject-plugin with Pipeline
There is an issue for removing it in the configuration screen.
https://issues.jenkins-ci.org/browse/JENKINS-26569

Then this is no longer an issue for me. Using the properties context in the 
script I was able to add parameters to my multibranch pipeline.

onsdag 22. juni 2016 08.45.18 UTC+2 skrev Sverre Moe følgende:
>
> Found some clue in https://issues.jenkins-ci.org/browse/JENKINS-32780
> Using the Snippet code generator I was able to generate a build parameter
> properties [[$class: 'ParametersDefinitionProperty', parameterDefinitions: 
> [[$class: 'BooleanParameterDefinition', defaultValue: false, description: 
> 'Force publish RPM artifacts to repository', name: 'FORCE_PUBLISH']]]]
>
> If I want all branches to have this property, could I put it in my global 
> script? I am trying to keep my Jenkinsfiles as DRY as possible.
>
> Using the Snippet generator to "Prepare an environment for the run"
> This is needed because of SECURITY-170, otherwised properties are not 
> propagated to downstream builds.
> It does not generate anything useful. Previously the result was empty 
> whatever I put within "Properties Content". Now I only get
> properties [<object of type org.jenkinsci.plugins.envinject.
> EnvInjectJobProperty>]
> This is what the snippet generator gives me for any of the choices, 
> script, file or content.
>
>
>
> onsdag 22. juni 2016 08.27.13 UTC+2 skrev Sverre Moe følgende:
>>
>> Each branch pipeline has their own config.xml. A standard pipeline job 
>> does have support for parameterization. I think I read somewhere in Jenkins 
>> JIRA that such properties should be defined in the Jenkinsfile and set for 
>> the branch pipeline project on the first run. I am a bit unsure how to set 
>> them. Cannot find a single example of this.
>>
>> https://issues.jenkins-ci.org/browse/JENKINS-30519
>>
>> I know how to set them programatically in the Script console for 
>> "regular" projects.
>>     StringBuilder builder = new StringBuilder()
>>     builder.append("PROP1=true")
>>     builder.append("\n")
>>     builder.append("PROP2=true")
>>     final def propertiesContent = builder.toString()
>>
>>     def info = new EnvInjectJobPropertyInfo(null, propertiesContent, 
>> null, null, null, false)
>>     def property = new EnvInjectJobProperty()
>>     property.setOn(true)
>>     property.setKeepJenkinsSystemVariables(true)
>>     property.setKeepBuildVariables(true)
>>     property.setInfo(info)
>>
>>     project.addProperty(property)
>>     project.save()
>>
>>
>> mandag 13. juni 2016 10.20.55 UTC+2 skrev Sverre Moe følgende:
>>>
>>> Either I am doing it wrong, or Multibranch pipeline has no way of 
>>> sending parameters to downstream builds.
>>> Considering that each branch within a multibranch pipeline seems to be a 
>>> single Pipeline project and standard such Pipeline projects can be 
>>> parameterized.
>>>
>>> onsdag 8. juni 2016 12.42.01 UTC+2 skrev Sverre Moe følgende:
>>>>
>>>> Jenkins Pipeline can be parameterized, but not multibranch pipelines. 
>>>> There is no option for "This build is parameterized" in the configuration 
>>>> of a multibranch pipeline. Why is that?
>>>>
>>>> I have a multibranch project for each repository with multiple branches.
>>>>
>>>> ProjectA
>>>>     master
>>>>     develop
>>>>     releaseX
>>>> ProjectB
>>>>     master
>>>>     develop
>>>>     releaseX
>>>>
>>>> In this case ProjectB has a dependency on ProjectA on the same branch.
>>>>
>>>> The Jenkinsfile is sparse, while the common main build logic is stored 
>>>> in workflowLibs.git
>>>>
>>>> When a upstream project builds a dependent downstream project I need to 
>>>> provide them with build parameters.
>>>> def BUILD_PROJECT = "projectB"+"/"+env.BUILD_BRANCH
>>>> build job: BUILD_PROJECT, parameters: [[$class: 'BooleanParameterValue'
>>>> , name: 'UPSTREAM_TRIGGERED', value: true]]
>>>> I have some logic in the main build script for when the build is 
>>>> triggered by an upstream dependency.
>>>>
>>>> Not sure how I can do this since multibranch pipeline cannot be 
>>>> parameterized.
>>>>
>>>> I have even tried withEnv, but it did not work
>>>> withEnv(["UPSTREAM_TRIGGERED=true"]) {
>>>>     def BUILD_PROJECT = "projectB"+"/"+env.BUILD_BRANCH
>>>>     build BUILD_PROJECT
>>>> }
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/922fe089-6cb2-49e7-9dc9-77c119035eba%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to