Allows specifying a folder attribute for each job generated, which in
turn is used when creating or uploading to place the job under the
requested folder.
The job name is expanded after defaults are applied, to support the
attribute being defined within a set of defaults applied to a number of
jobs.
This in turn allows for multiple jobs with the same basename to exist,
provided they are targeted at different folders.
Does not support creating the folders if they do not exist.
Change-Id: I8c2157c4c81087cc972a048d1b88d5f08ac65361
Listing the plugins installed on a Jenkins instance requires full
administrative permissions. For cases where we don't have permission to
read the plugin list, we should just fall back to the default list.
Story: 2000618
Task: 3052
Change-Id: I924f237f5f175216200668d133092f2357f6d9d3
If no value is provided for 'keep' when calling delete_old_managed,
ensure a default empty iterable is used to prevent an exception.
Change-Id: I3110f8e03e287a6ff067b992ed8631e34121a8d2