blob: 517190cbbad9396e9905d174ab5e46818586728e [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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.
*/
buildscript {
ext {
springBootVersion = '2.4.1'
}
repositories {
jcenter()
}
}
plugins {
id 'com.github.hierynomus.license' version '0.15.0'
id 'org.nosphere.apache.rat' version '0.6.0'
id 'com.jfrog.artifactory' version '4.15.1'
id "io.spring.dependency-management" version "1.0.10.RELEASE"
id 'org.springframework.boot' version '2.4.1'
id 'maven-publish'
id 'java'
id 'idea'
}
apply from: '../shared.gradle'
bootJar {
enabled = true
classifier = 'boot'
}
dependencies {
implementation(
[group: 'org.springframework.cloud', name: 'spring-cloud-starter-config'],
[group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-eureka-client'],
[group: 'org.springframework.boot', name: 'spring-boot-starter-jetty'],
[group: 'org.apache.fineract.cn.reporting', name: 'api', version: project.version],
[group: 'org.apache.fineract.cn.anubis', name: 'library', version: versions.frameworkanubis],
[group: 'com.google.code.gson', name: 'gson'],
[group: 'org.apache.fineract.cn', name: 'lang', version: versions.frameworklang],
[group: 'org.apache.fineract.cn', name: 'async', version: versions.frameworkasync],
[group: 'org.apache.fineract.cn', name: 'cassandra', version: versions.frameworkcassandra],
[group: 'org.apache.fineract.cn', name: 'postgresql', version: versions.frameworkpostgresql],
[group: 'org.apache.fineract.cn', name: 'command', version: versions.frameworkcommand],
[group: 'org.hibernate.validator', name: 'hibernate-validator', version: versions.hibernatevalidator],
[group: 'org.owasp.esapi', name: 'esapi', version: '2.2.2.0'],
[group: 'io.netty', name: 'netty-all', version: '4.1.55.Final'],
[group: 'io.netty', name: 'netty-transport-native-epoll', version: '4.1.55.Final']
)
}
jar {
enabled = true
}
tasks.withType(PublishToMavenLocal) { task ->
task.dependsOn 'bootJar'
}
publishing {
publications {
service(MavenPublication) {
from components.java
groupId project.group
artifactId project.name
version project.findProperty('externalVersion') ?: project.version
}
bootService(MavenPublication) {
// "boot" jar
artifact(file("$buildDir/libs/$project.name-$project.version-${bootJar.classifier}.jar"))
groupId project.group
artifactId ("$project.name-boot")
version project.findProperty('externalVersion') ?: project.version
}
}
}