Difference between revisions of "IT-SDK-Jenkins"

From wiki.samerhijazi.net
Jump to navigation Jump to search
(Jenkenfiles)
Line 24: Line 24:
 
<pre class="code">
 
<pre class="code">
 
pipeline {
 
pipeline {
    agent {
+
  agent {
        label 'nodejs10'
+
      label 'nodejs10'
    }
+
  }
 
+
  environment {
    environment {
+
      APP = 'application'
        APP = 'application'
+
      VERSION = 't.b.d.'
VERSION = 't.b.d.'
+
  }
    }
+
  options {
 
+
      buildDiscarder(logRotator(numToKeepStr: '15'))
    options {
+
  }
        buildDiscarder(logRotator(numToKeepStr: '15'))
+
  stages {                 
    }
+
      stage('Environment') {           
 
+
        steps {                 
    stages {                 
+
    echo "Applacation: ${APP} or ${env.APP}"
stage('Environment') {           
+
    sh 'echo "Lib-Version: ${LIB_VERSION}"'
steps {                 
+
    echo "##################################"
echo "Applacation: ${APP} or ${env.APP}"
+
    setVersion()
sh 'echo "Lib-Version: ${LIB_VERSION}"'
+
    echo "##################################"
echo "##################################"
+
    script {
setVersion()
+
      env.LIB_VERSION = "newValue"
echo "##################################"
+
    }
script {
+
    sh 'export AWESOME_FILE=$AWESOME_BUILD/the_file'
env.LIB_VERSION = "newValue"
+
    sh 'echo $AWESOME_FILE' // But it won't show up here!
}
+
    // However, in a single sh command it will work.
sh 'export AWESOME_FILE=$AWESOME_BUILD/the_file'
+
    sh '''
sh 'echo $AWESOME_FILE' // But it won't show up here!
+
    export AWESOME_FILE=$AWESOME_BUILD/the_file
// However, in a single sh command it will work.
+
    echo $AWESOME_FILE
sh '''
+
    '''
export AWESOME_FILE=$AWESOME_BUILD/the_file
+
        }
echo $AWESOME_FILE
+
      }
'''
+
      stage('Build-Angular') {           
            }
+
        steps {               
        }
+
    //build job: 'test', parameters:[string(name: 'LIB_VERSION', value: "${LIB_VERSION}")], wait: false
stage('Build-Angular') {           
+
        }
steps {               
+
      }
//build job: 'test', parameters:[string(name: 'LIB_VERSION', value: "${LIB_VERSION}")], wait: false
+
  }
            }
 
        }
 
    }
 
 
}
 
}
 
def setVersion() {
 
def setVersion() {
    LIB_VERSION = 'Samer'
+
  LIB_VERSION = 'Samer'
echo "Lib-Version: ${LIB_VERSION}"
+
  echo "Lib-Version: ${LIB_VERSION}"
 
}
 
}
 
</pre>
 
</pre>

Revision as of 16:45, 20 March 2020

Source

Coding

def username = 'Jenkins'
echo 'Hello Mr. ${username}'
echo "I said, Hello Mr. ${username}"
...
Hello Mr. ${username}
I said, Hello Mr. Jenkins
environment {
	APP = "${env.APP}-${env.BRANCH_NAME}"
}
steps {
	sh 'echo "Name=${APP}"' 
        echo "Running ${APP} on ${env.APP}"
}

Jenkenfiles

pipeline {
   agent {
      label 'nodejs10'
   }
   environment {
      APP = 'application'
      VERSION = 't.b.d.'
   }
   options {
      buildDiscarder(logRotator(numToKeepStr: '15'))
   }
   stages {        		        
      stage('Environment') {            					
         steps {                
	    echo "Applacation: ${APP} or ${env.APP}"
	    sh 'echo "Lib-Version: ${LIB_VERSION}"'
	    echo "##################################"
	    setVersion()
	    echo "##################################"
	    script {					
	       env.LIB_VERSION = "newValue"
	    }
	    sh 'export AWESOME_FILE=$AWESOME_BUILD/the_file'
	    sh 'echo $AWESOME_FILE'		// But it won't show up here!
	    // However, in a single sh command it will work.
	    sh '''
	    export AWESOME_FILE=$AWESOME_BUILD/the_file
	    echo $AWESOME_FILE
	    '''				
         }
      }
      stage('Build-Angular') {            					
         steps {                				
	    //build job: 'test', parameters:[string(name: 'LIB_VERSION', value: "${LIB_VERSION}")], wait: false
         }
      }
   }
}
def setVersion() {
   LIB_VERSION = 'Samer'
   echo "Lib-Version: ${LIB_VERSION}"
}