/*
 * Copyright 2017 LinkedIn Corp.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 *
 */
apply plugin: 'distribution'

dependencies {

  // todo kunkun-tang: consolidate dependencies in azkaban-common and azkaban-db
  compile('log4j:log4j:1.2.16')
  compile('com.google.inject:guice:4.1.0')

  compile('commons-dbutils:commons-dbutils:1.5')
  compile('org.apache.commons:commons-dbcp2:2.1.1')

  testCompile('org.mockito:mockito-all:1.10.19')
  testRuntime('com.h2database:h2:1.4.193')
}


/**
 * concat task
 * Concatenate all the sql queries / files (except update.*.sql) and collect it into a single
 * SQL file.
 */
task concat() {
  doLast {
    ext.destFile = 'build/sql/create-all-sql-' + version + '.sql';
    ant.concat(destfile: destFile, fixlastline: 'yes') {
      logger.info('Concating create scripts to ' + destFile)
      fileset(dir: 'src/main/sql') {
        exclude(name: 'database.properties')
      }
    }
  }
}

installDist.dependsOn concat
distTar.dependsOn concat
distZip.dependsOn concat

distributions {
  main {
    contents {
      from('src/main/sql')
      from("$buildDir/sql")
    }
  }
}
