Oh just realized that this for loop syntax exists even in Groovy :-) (I'm
used to using *each *instead of for loops)
But please try using C-style for loop syntax.

2017-08-08 14:45 GMT+02:00 Michael Pailloncy <[email protected]>:

> This syntax doesn't exist in Groovy : *for (String repoName : repoList) {
> ... }*
> The direct equivalent is : *for (String repoName in repoList) { ... }*
>
> However, it's better to use the C-style for loop syntax when using
> pipeline (that's why I've used it in my previous example) :
>
> for (int i = 0; i < moduleList.size(); i++) {
>    def moduleName = moduleList[i]
>    ...
> }
>
> See https://github.com/jenkinsci/pipeline-examples/blob/master/docs/BEST_
> PRACTICES.md#groovy-gotchas
>
> Cheers
>
> 2017-08-08 14:31 GMT+02:00 Idan Adar <[email protected]>:
>
>> I've made some changes and now I'm getting:
>>
>> java.lang.NullPointerException: Cannot get property '$repoName' on null
>> object
>>
>>
>>
>> def repoList = ReposToUpdate.tokenize(",");
>> def moduleList = npmDependencies.tokenize(",");
>>
>> pipeline {
>>    agent {
>>       label '****'
>>    }
>>
>>    stages {
>>       stage ("Update package.json") {
>>          steps {
>>             script {
>>                for (String repoName : repoList) {
>>                   sshagent (credentials: ['****']) {
>>                      sh '''
>>                         git clone -b master git@
>> ****.com:****/${repoName}.git
>>                         cd ${repoName}
>>                         stat -t . > folderStat1.txt
>>                      '''
>>
>>                      for (String moduleName : moduleList) {
>>                         sh '''
>>                            cd ${repoName}
>>                            ncu -u -f "${moduleName}"
>>                            stat -t . > folderStat2.txt
>>                         '''
>>                      }
>>
>>                      def folderStat1 = readFile('folderStat1.txt').trim()
>>                      def folderStat2 = readFile('folderStat2.txt').trim()
>>
>>                      if (folderStat1 == folderStat2) {
>>                         slackSend (
>>                            color: '#199515',
>>                            message: "$JOB_NAME: <$BUILD_URL|Build
>> #$BUILD_NUMBER> ${repoName}: Common code dependencies match the latest
>> package versions."
>>                         )
>>                      }
>>                      else {
>>                         sh '''
>>                            cd ${repoName}
>>
>>                            git config --global user.name "****"
>>                            git config --global user.email ****
>>                            git commit -am 'Bump common packages version
>> number [ci skip]'
>>                            git push origin master
>>
>>                            cd ..
>>                            rm -rf ${repoName}
>>                         '''
>>
>>                         slackSend (
>>                            color: '#199515',
>>                            message: "$JOB_NAME: <$BUILD_URL|Build
>> #$BUILD_NUMBER> ${repoName}: Common code dependencies successfully updated
>> to the latest package versions."
>>                         )
>>                      }
>>                   }
>>                }
>>             }
>>          }
>>       }
>>    }
>>
>>    post {
>>       failure {
>>          slackSend (
>>             color: '#F01717',
>>             message: "$JOB_NAME: <$BUILD_URL|Build #$BUILD_NUMBER>,
>> Update failed. Review the build logs."
>>          )
>>       }
>>    }
>> }
>>
>> --
>> 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/ms
>> gid/jenkinsci-users/54962dc1-e80e-4ce3-8583-652a1fd714fe%
>> 40googlegroups.com
>> <https://groups.google.com/d/msgid/jenkinsci-users/54962dc1-e80e-4ce3-8583-652a1fd714fe%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/CAPO77c27cxQnf7zRg5UEODMOWRO3BtNRQ0RjBPFHp%2B6Q88oMvA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to