All parameters are "optional." If it's not a Validating String Parameter , Jenkins doesn't care what value you entered, or if you entered something at all.
The only thing about parameters is the implementation of your work, that is, your scripts (bash) and other actions that are configured to use the parameter.
If your parameter is called Param , you can access it through:
${Param} on Linux.%Param% on Windows.
Change response to comments:
To pass parameters from the "parent" assembly to downstream assemblies depends on how you run the downstream assemblies. If you use the Call / Trigger Parameterized Build plugin (which should be), then there is a simple option to pass the parent parameters to the downsteam builds. They will be available in child assemblies using the same parameter name, for example ${Param} in the example above.
If you run it in any other way, there are a number of workarounds, mainly by storing them in the properties file and then loading this property file in the child construct via the EnvInject plugin
source share