Read versionName of build.gradle from Jenkins

You could do this by adding an Execute Shell step which determines the versionName, and exporting it as an environment variable using the EnvInject Plugin.

Assuming your build.gradle contains:

versionName = myname

You can add this script:

v=$(cat build.gradle  | grep versionName | awk '{print $3}')
echo MY_VERSION_NAME=${v} > env.properties

A better way to do this is add a "printVersion" task in build.gradle. app/build.gradle

task printVersion{
  doLast {
    print android.defaultConfig.versionName + '-' + android.defaultConfig.versionCode
  }
}

Test it with: ./gradlew -q printVersion

1.8-13

Then in jenkins pipeline, add a stage after git:

   stage('printVersion') {
        def versionInfo = sh (
            script: './gradlew -q printVersion',
            returnStdout: true
        ).trim()
        echo "VersionInfo: ${versionInfo}"
//set the current build to versionInfo plus build number.
        currentBuild.displayName = "${versionInfo}-${currentBuild.number}" ; 
   }