Hello Edward,

This is my script at all
I think I did a mistake...


pipeline {
    agent any 
    
    stages {
        stage('Build project') { 
            steps {
                git credentialsId: '*****', url: 'https://******'
                sh 'dotnet build 
WebApplication/WebApplication1/WebApplication1.csproj'
            }
        }
    
        stage('Build image') { 
            steps {
                tagBefore = runAndReturn("git describe --candidate=1 
--tags")
                tag = runAndReturn("echo ${tagBefore} | cut -d\'-\' -f 1")
                webImageName = 
"${env.ACR_LOGINSERVER}/my-project-1499882073260/test:${tag}"
                sh "sudo docker build -t ${webImageName} -f 
WebApplication/WebApplication1/Dockerfile WebApplication/."
            }
        }
    }
}

def runAndReturn(script){
    toReturn = sh(script:script, returnStdout: true)
    toReturn = toReturn[0..-2]
    println toReturn
    toReturn
}

Thanks to all people!

Started by user demo
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup 
failed:
WorkflowScript: 14: Expected a step @ line 14, column 17.
                   tagBefore = runAndReturn("git describe --candidate=1 
--tags")
                   ^
WorkflowScript: 15: Expected a step @ line 15, column 17.
                   tag = runAndReturn("echo ${tagBefore} | cut -d\'-\' -f 
1")
                   ^
WorkflowScript: 16: Expected a step @ line 16, column 17.
                   webImageName = 
"${env.ACR_LOGINSERVER}/my-project-1499882073260/test:${tag}"
                   ^
3 errors
 at 
org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:310)
 at 
org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1085)
 (...)
 at hudson.model.ResourceController.execute(ResourceController.java:97)
 at hudson.model.Executor.run(Executor.java:405)
Finished: FAILURE



On Wednesday, May 23, 2018 at 1:11:15 PM UTC-4, Edward Bond wrote:

> Don’t use sing quotes ‘, make sure you use “, that way the string can be 
> interpolated.
>
>
> I also use a global helper that grabs the output of `sh` functions.
>
> def runAndReturn(script){
>   toReturn = sh(script:script, returnStdout: true)
>   toReturn = toReturn[0..-2]
>   println toReturn
>   toReturn
> }
>
> stage('Build image') { 
>     steps {
>         tagBefore = runAndReturn("git describe --candidate=1 --tags")
>         tag = runAndReturn("echo ${tagBefore} | cut -d\'-\' -f 1")
>         webImageName = 
> "${env.ACR_LOGINSERVER}/my-project-1499882073260/test:${tag}"
>         sh "sudo docker build -t ${webImageName} -f 
> WebApplication/WebApplication1/Dockerfile WebApplication/."
>     }
> }
>
> or something like:
>
>
>         stage('Build image') { 
>             steps {
>                 sh """
>                 export TAG=$(git describe --candidate=1 --tags)'
>                 export TAG=$(echo $TAG | cut -d\'-\' -f 1)'
>                 export 
> WEB_IMAGE_NAME=$ACR_LOGINSERVER/my-project-1499882073260/test:$TAG
>                 sudo docker build -t $WEB_IMAGE_NAME -f 
> WebApplication/WebApplication1/Dockerfile WebApplication/.
>                 """            
>             }
>         }
>
> First example would allow you to go through and get access to strings to 
> have more control over the strings. Second is an example of how you could 
> use it to stay in bash.
>
>
> On May 23, 2018, at 7:40 AM, JB <jbourque...@gmail.com <javascript:>> 
> wrote:
>
> Hello All,
>
> Anyone knows how to edit a variable from shell and recover the result 
> across each next shells.
>
> I'm trying to get the git tag version and to push the value into an env 
> variable.
> In next, I'd like to re use the value into the next cmd shell.
>
> It doesn't work!
>
> Anyone has an idea? I worked more than 2 days to trying to fix it.
>
>         stage('Build image') { 
>             steps {
>                 sh 'TAG=$(git describe --candidate=1 --tags)'
>                 sh 'TAG=$(echo $TAG | cut -d\'-\' -f 1)'
>                 sh 'WEB_IMAGE_NAME=' + env['ACR_LOGINSERVER'] + 
> '/my-project-1499882073260/test:' + env['TAG']
>         
>                 sh 'sudo docker build -t ${WEB_IMAGE_NAME} -f 
> WebApplication/WebApplication1/Dockerfile WebApplication/.'                
>             }
>         }
>
> -- 
> 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 jenkinsci-use...@googlegroups.com <javascript:>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jenkinsci-users/8effa089-07c3-4918-afdd-858513ef13cc%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/jenkinsci-users/8effa089-07c3-4918-afdd-858513ef13cc%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 jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/7b789802-5cac-4801-9d02-2f4cb732eefb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to