title: How to use if else condition in Gradle
body: <p>Can someone tell me how could I write the if else condition in the gradle script 
  I mean i have two different types of zip files one is LiceseGenerator-4.0.0.58 and other one is CLI-4.0.0.60.My deployment script is working fine but I am using the shell script to do this and I want everything in gradle instead of doing it in the shell script.I want when I am deploying the LicenseGenerator it should deploy in differnet way and if it is CLI then it should deploy in other way.Currently deployall task is doing everyting.If I put if else condition how could I call the task.Please let me know if need any other information</p>
  
  <p>Below is my script</p>
  
  <pre><code>// ------ Tell the script to get dependencies from artifactory ------
  buildscript {
      repositories {
        maven {
          url "http://ct.ts.th.com:8/artifactory/libs-snapshot"
           }
      }
  
      // ------ Tell the script to get dependencies from artifactory ------
      dependencies {
      classpath ([ "com.trn.cm:cmplugin:1.1.118" ])
    }
  }
  
  apply plugin: 'com.trn.cm.cmgplugin'
  
  /**
   * The folloing -D parameters are required to run this task
   *  - deployLayer = one of acceptance, latest, production, test
   */
  //------------------------------------------------------------------------------------------
  // Read the properties file and take the value as per the enviornment.
  // 
  //------------------------------------------------------------------------------------------
  if(!System.properties.deployLayer) throw new Exception ("deployLayer must be set")
  def thePropFile = file("config/${System.properties.deployLayer}.properties")
  if(!thePropFile.exists()) throw new Exception("Cannot load the specified environment properties from ${thePropFile}")
  println "Deploying ${System.properties.jobName}.${System.properties.buildNumber} to ${System.properties.deployLayer}"
  
  // load the deploy properties from the file
  def deployProperties = new Properties()
  thePropFile.withInputStream { 
      stream -&gt; deployProperties.load(stream) 
  } 
  // set them in the build environment
  project.ext {
    deployProps = deployProperties
    deployRoot = deployProperties["${System.properties.jobName}.deployroot"]
    deployFolder = deployProperties["${System.properties.jobName}.foldername"]
    deployPostInstallSteps = deployProperties["${System.properties.jobName}.postInstallSteps"]
  }
  
  task deleteGraphicsAssets(type: Delete, dependsOn: deploy) {
      def dirName = "${deployRoot}"
      delete dirName
  
      doLast {
          file(dirName).mkdirs()
      }
  }
  
  
  task myCustomTask(dependsOn: deleteGraphicsAssets) &lt;&lt; {
      copy {
          from 'deploymentfiles'
          into "${deployRoot}"
      }
  }
  
  task cleanTempDir(type: Delete, dependsOn: myCustomTask) {
        delete fileTree(dir: "build/artifacts", exclude: "*.zip")
    }
  
  task unzipArtifact(dependsOn: cleanTempDir) &lt;&lt; {
    file("${buildDir}/artifacts").eachFile() { 
      println "Deploying ${it}"
     // ant.mkdir(dir: "${deployRoot}/${deployFolder}")
      ant.unzip(src: it, dest: "${deployRoot}")
    }
  }
  
  task setPerms( type: Exec, dependsOn: unzipArtifact) {
    workingDir "${deployRoot}"
    executable "bash"
    args "-c", "dos2unix analyticsEngine.sh"
    args "-c", "chmod u+x analyticsEngine.sh &amp;&amp; ./analyticsEngine.sh"
   }
  
   task deployAll(dependsOn: setPerms){}
  </code></pre>