blob: 59d7907cf135cf60ffb31e6068434e01646fb2df [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.
*/
group = 'org.apache.freemarker.onlinetester'
version = "0.1-SNAPSHOT"
ext.jarName = "${project.name}-${project.version}"
apply from: "intellij.gradle"
apply from: "${rootDir}/dependencies.gradle"
apply plugin: 'maven'
apply plugin: 'java'
apply plugin: 'jacoco'
apply plugin: 'project-report'
apply plugin: 'com.github.johnrengelman.shadow'
apply plugin: "com.github.kt3k.coveralls"
project.sourceCompatibility = "1.8"
project.targetCompatibility = "1.8"
repositories {
mavenCentral()
maven {
url "https://repository.apache.org/content/repositories/snapshots/"
}
}
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.8.1"
classpath "com.github.jengelman.gradle.plugins:shadow:1.2.4"
}
}
configurations {
rat
}
dependencies {
compile libraries.dropwizard
compile libraries.dropwizard_views
compile libraries.dropwizard_views_freemarker
compile libraries.dropwizard_configurable_assets
compile libraries.dropwizard_bundles_redirect
compile libraries.freemarker
compile libraries.commonLangs
compile libraries.findBugs
testCompile libraries.dropwizard_testing
testCompile libraries.junit
testCompile libraries.mockito
testCompile libraries.hamcrest
testCompile libraries.jersey_grrizle
rat libraries.rat
}
compileJava {
options.compilerArgs << "-Werror"
}
compileTestJava {
options.compilerArgs << "-Werror"
}
task wrapper(type: Wrapper) {
gradleVersion = '3.5'
}
jar {
manifest {
attributes 'Main-Class': 'org.apache.freemarker.onlinetester.dropwizard.FreeMarkerOnlineTester'
attributes 'Implementation-Version': "$version"
}
}
shadowJar {
dependsOn jar
baseName = "${jarName}"
classifier = null
version = null
mergeServiceFiles()
}
// Log full exception information on failed tests, so we see it in the Travis log:
test.testLogging {
showStackTraces true
exceptionFormat "full"
}
jacocoTestReport {
reports {
xml.enabled true
}
}
task rat {
doLast {
ant.taskdef(
name: 'ratReport', classname: 'org.apache.rat.anttasks.Report',
classpath: configurations.rat.asPath)
ant.ratReport(reportFile: "build/rat-report.txt") {
fileset(dir: "", excludesfile: "rat-excludes")
}
project.logger.lifecycle('Rat reports were written into build/rat-report.txt')
}
}
check.dependsOn jacocoTestReport
build.dependsOn shadowJar