description 'Corda Shell CLI'

apply plugin: 'application'
// We need to set mainClassName before applying the shadow plugin.
mainClassName = 'net.corda.tools.shell.StandaloneShellKt'

apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: 'net.corda.plugins.publish-utils'
apply plugin: 'com.jfrog.artifactory'

dependencies {
    compile project(':tools:shell')
    compile project(':tools:cliutils')
    compile project(":common-logging")
    compile "org.apache.logging.log4j:log4j-slf4j-impl:$log4j_version"
    compile "org.slf4j:jul-to-slf4j:$slf4j_version"

    testCompile(project(':test-utils')) {
        exclude group: 'org.apache.logging.log4j', module: 'log4j-slf4j-impl'
    }

    testCompile(project(':test-cli'))
}

processResources {
    from file("$rootDir/config/dev/log4j2.xml")
}

shadowJar {
    mergeServiceFiles()
}

task buildShellCli(dependsOn: shadowJar)
assemble.dependsOn buildShellCli

artifacts {
    publish shadowJar {
        archiveClassifier = jdkClassifier
    }
}

jar {
    archiveClassifier = "ignore"
    enabled = false
}

publish {
    disableDefaultJar = true
    name 'corda-tools-shell-cli'
}
