Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,11 @@ import hudson.Extension
import org.boozallen.plugins.jte.init.primitives.TemplatePrimitive
import org.boozallen.plugins.jte.init.primitives.TemplatePrimitiveCollector
import org.boozallen.plugins.jte.init.primitives.TemplatePrimitiveNamespace
import org.boozallen.plugins.jte.init.primitives.hooks.HookContext
import org.boozallen.plugins.jte.init.primitives.hooks.HooksWrapper
import org.boozallen.plugins.jte.init.primitives.injectors.LibraryNamespace
import org.boozallen.plugins.jte.init.primitives.injectors.StageInjector
import org.boozallen.plugins.jte.init.primitives.injectors.StepContext
import org.boozallen.plugins.jte.init.primitives.injectors.StepWrapperScript
import org.jenkinsci.plugins.scriptsecurity.sandbox.whitelists.AbstractWhitelist
import org.boozallen.plugins.jte.init.governance.config.dsl.PipelineConfigurationBuilder
Expand All @@ -40,13 +43,17 @@ import java.lang.reflect.Method
]

private final List<Class> permittedReceivers = [
TemplatePrimitive,
TemplatePrimitiveCollector.JTEVar,
TemplatePrimitiveNamespace,
LibraryNamespace,
HooksWrapper,
PipelineConfigurationBuilder,
DslEnvVar
TemplatePrimitive,
TemplatePrimitiveCollector.JTEVar,
TemplatePrimitiveNamespace,
LibraryNamespace,
HooksWrapper,
PipelineConfigurationBuilder,
DslEnvVar,
StepWrapperScript,
HookContext,
StepContext,
StageInjector.StageContext
]

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -225,4 +225,26 @@ class LibraryStepInjectorSpec extends Specification {
jenkins.assertBuildStatusSuccess(run)
}

def "folder libraries can access config variable"() {
given:
// add folder
TestLibraryProvider lib2 = new TestLibraryProvider()
lib2.addStep("lib", "step", """
void call(){
assert config.x == 1
}
""")
Folder folder = jenkins.createProject(Folder)
lib2.addToFolder(folder)
// create job
WorkflowJob job = TestUtil.createAdHocInFolder(folder,
config: 'libraries{ lib { x = 1 } }',
template: 'step()'
)
when:
def run = job.scheduleBuild2(0).get()
then:
jenkins.assertBuildStatusSuccess(run)
}

}
Loading