groovy.lang.MissingPropertyException: No such property: buildJobArray for class: groovy.lang.Binding
up vote
0
down vote
favorite
I am new to groovy. Here i declared some list and using def keyword and use it in function to trigger a job and store it in list but it throws error MissingPropertyException No such property: buildJobArray for class: groovy.lang.Binding, evenif i declared a list. I dont understand whats wrong with my code
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1);
}
but it gives error
ERROR: Build step failed with exception
groovy.lang.MissingPropertyException: No such property: buildJobArray for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:242)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:288)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:292)
at org.kohsuke.groovy.sandbox.impl.Checker$checkedGetProperty$1.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:56)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:194)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:230)
at Script1.triggerJob(Script1.groovy:19)
enter image description here
jenkins groovy
New contributor
add a comment |
up vote
0
down vote
favorite
I am new to groovy. Here i declared some list and using def keyword and use it in function to trigger a job and store it in list but it throws error MissingPropertyException No such property: buildJobArray for class: groovy.lang.Binding, evenif i declared a list. I dont understand whats wrong with my code
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1);
}
but it gives error
ERROR: Build step failed with exception
groovy.lang.MissingPropertyException: No such property: buildJobArray for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:242)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:288)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:292)
at org.kohsuke.groovy.sandbox.impl.Checker$checkedGetProperty$1.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:56)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:194)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:230)
at Script1.triggerJob(Script1.groovy:19)
enter image description here
jenkins groovy
New contributor
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I am new to groovy. Here i declared some list and using def keyword and use it in function to trigger a job and store it in list but it throws error MissingPropertyException No such property: buildJobArray for class: groovy.lang.Binding, evenif i declared a list. I dont understand whats wrong with my code
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1);
}
but it gives error
ERROR: Build step failed with exception
groovy.lang.MissingPropertyException: No such property: buildJobArray for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:242)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:288)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:292)
at org.kohsuke.groovy.sandbox.impl.Checker$checkedGetProperty$1.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:56)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:194)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:230)
at Script1.triggerJob(Script1.groovy:19)
enter image description here
jenkins groovy
New contributor
I am new to groovy. Here i declared some list and using def keyword and use it in function to trigger a job and store it in list but it throws error MissingPropertyException No such property: buildJobArray for class: groovy.lang.Binding, evenif i declared a list. I dont understand whats wrong with my code
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1);
}
but it gives error
ERROR: Build step failed with exception
groovy.lang.MissingPropertyException: No such property: buildJobArray for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:242)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:288)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:292)
at org.kohsuke.groovy.sandbox.impl.Checker$checkedGetProperty$1.callStatic(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallStatic(CallSiteArray.java:56)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:194)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callStatic(AbstractCallSite.java:230)
at Script1.triggerJob(Script1.groovy:19)
enter image description here
jenkins groovy
jenkins groovy
New contributor
New contributor
New contributor
asked Nov 19 at 13:20
Sumit Rane
52
52
New contributor
New contributor
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
0
down vote
accepted
There is no Class implementation to hold the variables triggerBuildArray, buildJobArray, jobArray,paramsArray, noOfJob. In your case, you need to pass the object buildJobArray reference into function triggerJob.
Try the below code.
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo, def buildJobArray) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1, buildJobArray);
}
add a comment |
up vote
0
down vote
Here i found another way to do this. Here I used 'def' keyword to define a variable due to use of def keyword it becomes local variable. If you dont use def keyword to variable it becomes global variable.
def buildJobArray = //local variable
buildJobArray = // Global variable
so once you used global variable it can be accessed from any function.
New contributor
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
There is no Class implementation to hold the variables triggerBuildArray, buildJobArray, jobArray,paramsArray, noOfJob. In your case, you need to pass the object buildJobArray reference into function triggerJob.
Try the below code.
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo, def buildJobArray) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1, buildJobArray);
}
add a comment |
up vote
0
down vote
accepted
There is no Class implementation to hold the variables triggerBuildArray, buildJobArray, jobArray,paramsArray, noOfJob. In your case, you need to pass the object buildJobArray reference into function triggerJob.
Try the below code.
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo, def buildJobArray) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1, buildJobArray);
}
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
There is no Class implementation to hold the variables triggerBuildArray, buildJobArray, jobArray,paramsArray, noOfJob. In your case, you need to pass the object buildJobArray reference into function triggerJob.
Try the below code.
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo, def buildJobArray) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1, buildJobArray);
}
There is no Class implementation to hold the variables triggerBuildArray, buildJobArray, jobArray,paramsArray, noOfJob. In your case, you need to pass the object buildJobArray reference into function triggerJob.
Try the below code.
def triggerBuildArray =
def buildJobArray =
def jobArray =
def paramsArray =
def noOfJob = 2
//function to trigger job
def triggerJob(def job, def params, def jobNo, def buildJobArray) {
buildJobArray << job.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(params))
println"triggered job "+jobNo;
println"waiting for completion of job "+jobNo;
}
jobArray << Hudson.instance.getJob('job1');
//define parameters
paramsArray << [
new StringParameterValue('baseurl',build.getEnvironment(listener).get('ORAbaseurl')),
new StringParameterValue('firm',build.getEnvironment(listener).get('ORAfirm')),
new StringParameterValue('loginname',build.getEnvironment(listener).get('ORAloginname'))
]
for(int i=0;i<noOfJob;i++)
{
triggerJob(jobArray[i],paramsArray[i],i+1, buildJobArray);
}
answered Nov 19 at 20:18
Vihar Manchala
241
241
add a comment |
add a comment |
up vote
0
down vote
Here i found another way to do this. Here I used 'def' keyword to define a variable due to use of def keyword it becomes local variable. If you dont use def keyword to variable it becomes global variable.
def buildJobArray = //local variable
buildJobArray = // Global variable
so once you used global variable it can be accessed from any function.
New contributor
add a comment |
up vote
0
down vote
Here i found another way to do this. Here I used 'def' keyword to define a variable due to use of def keyword it becomes local variable. If you dont use def keyword to variable it becomes global variable.
def buildJobArray = //local variable
buildJobArray = // Global variable
so once you used global variable it can be accessed from any function.
New contributor
add a comment |
up vote
0
down vote
up vote
0
down vote
Here i found another way to do this. Here I used 'def' keyword to define a variable due to use of def keyword it becomes local variable. If you dont use def keyword to variable it becomes global variable.
def buildJobArray = //local variable
buildJobArray = // Global variable
so once you used global variable it can be accessed from any function.
New contributor
Here i found another way to do this. Here I used 'def' keyword to define a variable due to use of def keyword it becomes local variable. If you dont use def keyword to variable it becomes global variable.
def buildJobArray = //local variable
buildJobArray = // Global variable
so once you used global variable it can be accessed from any function.
New contributor
New contributor
answered Nov 21 at 10:46
Sumit Rane
52
52
New contributor
New contributor
add a comment |
add a comment |
Sumit Rane is a new contributor. Be nice, and check out our Code of Conduct.
Sumit Rane is a new contributor. Be nice, and check out our Code of Conduct.
Sumit Rane is a new contributor. Be nice, and check out our Code of Conduct.
Sumit Rane is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53375533%2fgroovy-lang-missingpropertyexception-no-such-property-buildjobarray-for-class%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown