jar{
    enabled false
}

bootJar {
    enabled true
}

dependencies {
    implementation project(':smartcity-common')
    implementation 'org.springframework.boot:spring-boot-starter-web'
    //implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
    implementation 'com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery'
    implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
    implementation 'org.springframework.boot:spring-boot-starter-actuator'
    implementation 'org.springframework.cloud:spring-cloud-starter-oauth2'
    implementation 'org.springframework.cloud:spring-cloud-starter-stream-kafka'
    implementation 'org.springframework.boot:spring-boot-starter-freemarker'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
    compile('com.alibaba:fastjson:1.2.41')

}

test {
    useJUnitPlatform()
}

task deploySit(dependsOn:bootJar){
    def active = 'sit'
    def applicationName = 'smartcity-iothub-parser'
    def targetDir = '/opt/sit/smartcity-iothub-parser'
    doLast {
        println "deploy ${applicationName} ${active}..."
        ssh.settings {
            knownHosts = allowAnyHosts
        }
        ssh.run {
            session(remotes.sitServer){
                put from: "build/libs/${jar.archiveName}", into: "${targetDir}"
                execute """
                        source /root/.bash_profile;
                        kill `ps aux | grep -i ${applicationName} | grep -v grep | awk '{print \$2}'`;
                        nohup java -jar ${targetDir}/${jar.archiveName} --spring.profiles.active=${active}   >/dev/null &
                """
            }
        }
    }
}

task deployUat(dependsOn:bootJar){
    def active = 'uat'
    def applicationName = 'smartcity-iothub-parser'
    def targetDir = '/opt/uat/smartcity-iothub-parser'
    doLast {
        println "deploy ${applicationName} ${active}..."
        ssh.settings {
            knownHosts = allowAnyHosts
        }
        ssh.run {
            session(remotes.uatServer155){
                put from: "build/libs/${jar.archiveName}", into: "${targetDir}"
                execute """
                        source /root/.bash_profile;
                        kill `ps aux | grep -i ${applicationName} | grep -v grep | awk '{print \$2}'`;
                        nohup java -jar ${targetDir}/${jar.archiveName} --spring.profiles.active=${active}   >/dev/null &
                """
            }
        }
    }
}
def releaseTime() {
    return new Date().format("yyyyMMdd", TimeZone.getTimeZone("GMT+08:00"))
}
archivesBaseName = "smartcity-iothub-parser-${releaseTime()}"