Skip to content

Commit c237a48

Browse files
authored
Merge pull request #495 from reinholdfuereder/scripted_pipeline_parameters
2 parents e33365a + 7b476a1 commit c237a48

File tree

7 files changed

+86
-0
lines changed

7 files changed

+86
-0
lines changed

src/main/groovy/com/lesfurets/jenkins/unit/BasePipelineTest.groovy

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ abstract class BasePipelineTest {
195195
helper.registerAllowedMethod('mail', [Map])
196196
helper.registerAllowedMethod("node", [Closure])
197197
helper.registerAllowedMethod("node", [String, Closure])
198+
helper.registerAllowedMethod("parameters", [List])
198199
helper.registerAllowedMethod("pipelineTriggers", [List])
199200
helper.registerAllowedMethod('pollSCM', [String])
200201
helper.registerAllowedMethod("properties", [List])
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.lesfurets.jenkins
2+
3+
import com.lesfurets.jenkins.unit.BaseRegressionTest
4+
import org.junit.Before
5+
import org.junit.Test
6+
7+
class TestParametersJob extends BaseRegressionTest {
8+
9+
@Override
10+
@Before
11+
void setUp() throws Exception {
12+
scriptRoots += 'src/test/jenkins'
13+
super.setUp()
14+
}
15+
16+
@Test
17+
void should_run_script_parameters() {
18+
// when:
19+
runScript("job/parameters.jenkins")
20+
21+
// then:
22+
assertJobStatusSuccess()
23+
testNonRegression("parameters")
24+
}
25+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.lesfurets.jenkins
2+
3+
import com.lesfurets.jenkins.unit.BaseRegressionTest
4+
import org.junit.Before
5+
import org.junit.Test
6+
7+
class TestWithCredentialsAndParametersJob extends BaseRegressionTest {
8+
9+
@Override
10+
@Before
11+
void setUp() throws Exception {
12+
scriptRoots += 'src/test/jenkins'
13+
super.setUp()
14+
}
15+
16+
@Test
17+
void should_run_script_with_parameters() {
18+
// when:
19+
runScript("job/withCredentialsAndParameters.jenkins")
20+
21+
// then:
22+
assertJobStatusSuccess()
23+
testNonRegression("withCredentialsAndParameters")
24+
}
25+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
properties([
2+
parameters([
3+
booleanParam(name: 'myBooleanParam', description: 'My boolean typed parameter'),
4+
string(name: 'myStringParam', defaultValue: 'my default value', description: 'My string typed parameter')
5+
])
6+
])
7+
8+
echo("'myStringParam' value is default: ${params.myStringParam}")
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
properties([
2+
parameters([
3+
booleanParam(name: 'myBooleanParam', description: 'My boolean typed parameter'),
4+
string(name: 'myStringParam', defaultValue: 'my default value', description: 'My string typed parameter')
5+
])
6+
])
7+
8+
echo("'myStringParam' value is default: ${params.myStringParam}")
9+
10+
withCredentials([string(credentialsId: 'my-gitlab-api-token', variable: 'GITLAB_API_TOKEN')]) {
11+
echo("'my-gitlab-api-token' credential variable value: ${GITLAB_API_TOKEN}")
12+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
parameters.run()
2+
parameters.booleanParam({name=myBooleanParam, description=My boolean typed parameter})
3+
parameters.string({name=myStringParam, defaultValue=my default value, description=My string typed parameter})
4+
parameters.parameters([null, null])
5+
parameters.properties([null])
6+
parameters.echo('myStringParam' value is default: my default value)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
withCredentialsAndParameters.run()
2+
withCredentialsAndParameters.booleanParam({name=myBooleanParam, description=My boolean typed parameter})
3+
withCredentialsAndParameters.string({name=myStringParam, defaultValue=my default value, description=My string typed parameter})
4+
withCredentialsAndParameters.parameters([null, null])
5+
withCredentialsAndParameters.properties([null])
6+
withCredentialsAndParameters.echo('myStringParam' value is default: my default value)
7+
withCredentialsAndParameters.string({credentialsId=my-gitlab-api-token, variable=GITLAB_API_TOKEN})
8+
withCredentialsAndParameters.withCredentials([GITLAB_API_TOKEN], groovy.lang.Closure)
9+
withCredentialsAndParameters.echo('my-gitlab-api-token' credential variable value: GITLAB_API_TOKEN)

0 commit comments

Comments
 (0)