Sorry, for another post. I don't know how to edit the previous post, I 
forgot to add this, when I removed the args parameter and saw the created 
pod with the crashing container, I have looked into the 'created yaml file' 
in Openshift and saw this :

<https://lh3.googleusercontent.com/-MqtWaGGeeDY/WujjGpNA9GI/AAAAAAAAAsU/uPIdfmE2By4u8AjLcbale0yslzGH39QHACLcBGAs/s1600/podyaml.png>


Op dinsdag 1 mei 2018 23:51:08 UTC+2 schreef Hung Do:
>
> I have removed the 'args' parameter from the yaml in the declarative 
> syntax and the container(openshift-slave-maven-centos7) just crashes 
> unfortunately.
>
>
> <https://lh3.googleusercontent.com/-I2SPhMJzWHM/Wujg6UvS0nI/AAAAAAAAAsI/TaXSid7yUg4VF5FKUw18Tbeg7xJqNOrjgCLcBGAs/s1600/Jenkinswithoutargs.png>
>
>
> <https://lh3.googleusercontent.com/-I2SPhMJzWHM/Wujg6UvS0nI/AAAAAAAAAsI/TaXSid7yUg4VF5FKUw18Tbeg7xJqNOrjgCLcBGAs/s1600/Jenkinswithoutargs.png>
>
>     
>
>
> Op dinsdag 1 mei 2018 20:55:32 UTC+2 schreef Carlos Sanchez:
>>
>> Just remove the 'args' parameter, it would use environments variables 
>>
>> On Tue, May 1, 2018, 20:18 Hung Do <[email protected]> wrote:
>>
>>> Ah I thought I could just use the JNLP from the 
>>> openshift-slave-maven-centos7 
>>> <https://hub.docker.com/r/openshift/jenkins-slave-maven-centos7/>directly. 
>>> The end goal is to do the build with the openshift-slave-maven container 
>>> and do some integration tests with an attached mysql container, while at 
>>> the end also do some openshift CLI commands with the maven container. For 
>>> example, I started with the scripted pipelines syntax first. 
>>>
>>> podTemplate(label: 'maven2', serviceAccount: 'jenkins', cloud: 
>>> 'openshift', containers: [
>>>  containerTemplate(name: 'jnlp', image: 
>>> 'docker-registry.default.svc:5000/cicd/jenkins-slave-maven-centos7:v3.9'
>>> , alwaysPullImage: true, workingDir: '/tmp', args: '${computer.jnlpmac} 
>>> ${computer.name}', envVars: [
>>>    containerEnvVar(key: 'MAVEN_MIRROR_URL', value: 'xxxxxx')
>>>  ]),
>>>  containerTemplate(name: 'mysql', image: 'mysql:5.6', alwaysPullImage: 
>>> true, envVars: [
>>>    containerEnvVar(key: 'MYSQL_DATABASE', value: 'xxx'),
>>>    containerEnvVar(key: 'MYSQL_USER', value: 'xxx'),
>>>    containerEnvVar(key: 'MYSQL_PASSWORD', value: 'xxx'),
>>>    containerEnvVar(key: 'MYSQL_RANDOM_ROOT_PASSWORD', value: 'yes')], 
>>> ports: [portMapping(containerPort: 3306)])], volumes: [
>>>  emptyDirVolume(mountPath: '/var/lib/mysql')
>>>  ]
>>>  ) {
>>>
>>> node('maven2') {
>>>    stage('checkout') {
>>>        checkout scm
>>>    }
>>>
>>>         stage('check java') {
>>>            sh "java -version"
>>>        }
>>>
>>> This worked out perfectly fine, I thought mapping  it 1:1 to the 
>>> declarative + yaml format would achieve the same result, but that was not 
>>> the case.
>>>
>>> Op dinsdag 1 mei 2018 19:55:23 UTC+2 schreef Matthew Ceroni:
>>>
>>>> Why even over ride the JNLP container? Just use the default and add 
>>>> another container to the POD with your build tools (then you don't even 
>>>> have to use the YAML format since you won't require any of the extended 
>>>> benefits it provides). Then use the container step to execute in that 
>>>> container.
>>>>
>>>> On Tuesday, May 1, 2018 at 5:53:06 AM UTC-7, Hung Do wrote:
>>>>>
>>>>> Hi everyone,
>>>>>
>>>>> I have a problem with this Jenkinsfile, which doesn't wants to build 
>>>>> for me
>>>>>
>>>>> #!/usr/bin/env groovy
>>>>>
>>>>> pipeline {
>>>>>   agent {
>>>>>     kubernetes {
>>>>>       label 'maven2'
>>>>>       cloud 'openshift'
>>>>>       serviceAccount 'jenkins'
>>>>>       yaml """
>>>>> apiVersion: v1
>>>>> kind: Pod
>>>>> spec:
>>>>>   containers:
>>>>>   - name: jnlp
>>>>>     image: 
>>>>> docker-registry.default.svc:5000/cicd/jenkins-slave-maven-centos7:v3.9
>>>>>     imagePullPolicy: Always
>>>>>     workingDir: /tmp
>>>>>     args: ["${computer.jnlpmac} ${computer.name}"]
>>>>> """
>>>>>         }
>>>>>     }
>>>>>     stages {
>>>>>         stage('Check Java') {
>>>>>             steps {
>>>>>                 sh 'java -version'
>>>>>             }
>>>>>         }
>>>>>     }
>>>>> }
>>>>>
>>>>>
>>>>> With this Jenkinsfile, I get the following error 
>>>>>
>>>>> [Pipeline] End of Pipeline
>>>>> groovy.lang.MissingPropertyException: No such property: computer 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(Checker.java:268)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.sandbox.SandboxInvoker.getProperty(SandboxInvoker.java:29)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.impl.PropertyAccessBlock.rawGet(PropertyAccessBlock.java:20)
>>>>>         at WorkflowScript.run(WorkflowScript:18)
>>>>>         at 
>>>>> org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/var/lib/jenkins/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:56)
>>>>>         at WorkflowScript.run(WorkflowScript:3)
>>>>>         at ___cps.transform___(Native Method)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.impl.PropertyishBlock$ContinuationImpl.get(PropertyishBlock.java:74)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.LValueBlock$GetAdapter.receive(LValueBlock.java:30)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.impl.PropertyishBlock$ContinuationImpl.fixName(PropertyishBlock.java:66)
>>>>>         at sun.reflect.GeneratedMethodAccessor425.invoke(Unknown Source)
>>>>>         at 
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>>         at java.lang.reflect.Method.invoke(Method.java:498)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.impl.ConstantBlock.eval(ConstantBlock.java:21)
>>>>>         at com.cloudbees.groovy.cps.Next.step(Next.java:83)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:174)
>>>>>         at 
>>>>> com.cloudbees.groovy.cps.Continuable$1.call(Continuable.java:163)
>>>>>         at 
>>>>> org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:122)
>>>>>         at 
>>>>> org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:261)
>>>>>         at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:163)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$101(SandboxContinuable.java:34)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.lambda$run0$0(SandboxContinuable.java:59)
>>>>>         at 
>>>>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:58)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:174)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:332)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232)
>>>>>         at 
>>>>> org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
>>>>>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>>>>>         at 
>>>>> hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
>>>>>         at 
>>>>> jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
>>>>>         at 
>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>>>>>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>>>>>         at 
>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>>>>>         at 
>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>>>>         at java.lang.Thread.run(Thread.java:748)
>>>>> Finished: FAILURE
>>>>>
>>>>>
>>>>> If I remove this part 
>>>>>
>>>>> args: ["${computer.jnlpmac} ${computer.name}"]
>>>>>
>>>>>
>>>>> Then the Jenkinsfile gets accepted, the pod get started, but the 
>>>>> container crashes because there are no arguments. It is the official 
>>>>> openshift/jenkins-slave-maven-centos7:v3.9 image.
>>>>> If I try scripted pipelines without the YAML format, it will work if I 
>>>>> pass the args via the containertemplate syntax.
>>>>>
>>>>> Am I doing something wrong here?
>>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Jenkins Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jenkinsci-users/2424ca0f-f4d9-48ed-ab0f-c1a90076df07%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/jenkinsci-users/2424ca0f-f4d9-48ed-ab0f-c1a90076df07%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/d3672173-0971-4496-a258-fd031295a975%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to