2018-08-04 11:46:04 +00:00
|
|
|
plugins {
|
2019-06-08 17:47:11 +00:00
|
|
|
id 'com.gradle.build-scan' version '2.0.2'
|
2019-05-04 19:37:50 +00:00
|
|
|
id 'org.ysb33r.gradletest' version '2.0-rc.4' apply false
|
2018-08-04 11:46:04 +00:00
|
|
|
id 'org.ajoberstar.github-pages' version '1.2.0' apply false
|
2019-06-15 12:54:22 +00:00
|
|
|
id 'com.github.hierynomus.license' version '0.14.0' apply false
|
|
|
|
id 'io.ratpack.ratpack-java' version "1.6.1" apply false
|
2023-05-18 14:37:36 +00:00
|
|
|
id 'com.gradle.plugin-publish' version '1.1.0'
|
2015-06-06 20:46:52 +00:00
|
|
|
}
|
2017-09-27 10:36:44 +00:00
|
|
|
|
2019-03-04 14:28:38 +00:00
|
|
|
buildScan {
|
2019-05-05 16:22:20 +00:00
|
|
|
termsOfServiceUrl = 'https://gradle.com/terms-of-service'
|
2019-03-04 14:28:38 +00:00
|
|
|
termsOfServiceAgree = 'yes'
|
|
|
|
}
|
2015-06-06 20:46:52 +00:00
|
|
|
|
2018-08-04 11:46:04 +00:00
|
|
|
allprojects {
|
|
|
|
apply plugin: 'idea'
|
|
|
|
|
|
|
|
if (!releaseBuild) {
|
|
|
|
version = "${version}-SNAPSHOT"
|
|
|
|
}
|
|
|
|
|
|
|
|
defaultTasks 'check', 'assemble'
|
|
|
|
sourceCompatibility = '1.8'
|
|
|
|
targetCompatibility = '1.8'
|
|
|
|
|
|
|
|
ext {
|
2023-05-15 15:32:55 +00:00
|
|
|
olderJRubyVersion = '9.4.1.0'
|
2019-05-04 19:46:05 +00:00
|
|
|
spockVersion = "org.spockframework:spock-core:1.2-groovy-2.4"
|
2019-06-23 03:06:45 +00:00
|
|
|
pluginExtraText = (version.contains('-alpha') || version.contains('-beta')) ?
|
2023-05-18 14:37:36 +00:00
|
|
|
'(If you need a production-ready version of the JRuby/Gradle plugin use a 1.7.x release instead)' : ''
|
2018-08-04 11:46:04 +00:00
|
|
|
}
|
2015-06-06 20:46:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
subprojects {
|
|
|
|
repositories {
|
2021-05-02 14:46:09 +00:00
|
|
|
mavenCentral()
|
|
|
|
gradlePluginPortal()
|
2015-06-06 20:46:52 +00:00
|
|
|
}
|
|
|
|
|
2019-05-05 16:22:20 +00:00
|
|
|
if (project.name != 'docs') {
|
2019-05-05 13:51:29 +00:00
|
|
|
apply plugin: TestConfigPlugin
|
|
|
|
apply plugin: 'java-gradle-plugin'
|
2017-09-27 10:36:44 +00:00
|
|
|
apply plugin: 'groovy'
|
|
|
|
apply plugin: 'codenarc'
|
|
|
|
apply plugin: 'org.ysb33r.gradletest'
|
2021-05-02 19:09:28 +00:00
|
|
|
apply plugin: 'com.gradle.plugin-publish'
|
2019-05-05 13:51:29 +00:00
|
|
|
apply from: "${rootProject.projectDir}/gradle/integration-tests.gradle"
|
2019-06-15 12:54:22 +00:00
|
|
|
apply from: "${rootProject.projectDir}/gradle/license.gradle"
|
2015-06-06 20:46:52 +00:00
|
|
|
|
2018-08-04 11:46:04 +00:00
|
|
|
dependencies {
|
2017-09-27 10:36:44 +00:00
|
|
|
compile localGroovy()
|
|
|
|
compile gradleApi()
|
2020-11-14 21:24:36 +00:00
|
|
|
compile "org.ysb33r.gradle:grolifant60:${grolifantVersion}"
|
|
|
|
gradleTestRuntime "org.ysb33r.gradle:grolifant60:${grolifantVersion}"
|
2015-06-06 20:46:52 +00:00
|
|
|
}
|
|
|
|
|
2017-09-27 10:36:44 +00:00
|
|
|
codenarc {
|
|
|
|
sourceSets = [sourceSets.main]
|
2019-05-05 18:08:39 +00:00
|
|
|
configFile = file("${rootProject.projectDir}/gradle/codenarc.groovy")
|
2017-09-27 10:36:44 +00:00
|
|
|
}
|
2015-07-30 14:31:31 +00:00
|
|
|
|
2017-09-27 10:36:44 +00:00
|
|
|
test {
|
|
|
|
testLogging {
|
|
|
|
showStandardStreams = true
|
|
|
|
exceptionFormat "full"
|
|
|
|
}
|
|
|
|
}
|
2015-07-30 14:31:31 +00:00
|
|
|
|
2017-09-27 10:36:44 +00:00
|
|
|
task sourcesJar(type: Jar, dependsOn: classes) {
|
|
|
|
classifier = 'sources'
|
|
|
|
from sourceSets.main.allSource
|
2015-07-30 14:31:31 +00:00
|
|
|
}
|
|
|
|
|
2017-09-27 10:36:44 +00:00
|
|
|
gradleTest {
|
2019-05-13 16:29:19 +00:00
|
|
|
// https://github.com/jruby-gradle/jruby-gradle-plugin/issues/346
|
|
|
|
if (JavaVersion.current().java11) {
|
2023-05-17 07:41:59 +00:00
|
|
|
versions '5.0', '5.4.1', '6.0.1', '6.7', '7.6.1'
|
2019-05-13 16:29:19 +00:00
|
|
|
} else {
|
2023-05-17 07:41:59 +00:00
|
|
|
versions '4.10.2', '5.3.1', '6.0.1', '6.7', '7.6.1'
|
2019-12-19 22:28:05 +00:00
|
|
|
|
2023-05-18 14:37:36 +00:00
|
|
|
if (project.name == 'jruby-gradle-core-plugin') {
|
2019-12-19 22:28:05 +00:00
|
|
|
versions '4.3'
|
|
|
|
} else {
|
|
|
|
versions '4.9'
|
|
|
|
}
|
2019-05-13 16:29:19 +00:00
|
|
|
}
|
2019-12-19 22:28:05 +00:00
|
|
|
|
2017-09-27 10:36:44 +00:00
|
|
|
dependsOn jar
|
2015-07-30 14:31:31 +00:00
|
|
|
}
|
2023-05-18 14:37:36 +00:00
|
|
|
|
|
|
|
gradlePlugin {
|
2021-05-03 17:42:09 +00:00
|
|
|
website = 'https://github.com/jruby-gradle/jruby-gradle-plugin' // 'http://jruby-gradle.org/'
|
2021-05-02 20:46:43 +00:00
|
|
|
vcsUrl = 'https://github.com/jruby-gradle/jruby-gradle-plugin.git'
|
|
|
|
}
|
2021-05-03 14:17:00 +00:00
|
|
|
|
2019-05-05 16:22:20 +00:00
|
|
|
tasks.withType(Test) {
|
|
|
|
if (gradle.startParameter.isOffline()) {
|
|
|
|
systemProperties 'TESTS_ARE_OFFLINE': '1'
|
|
|
|
}
|
|
|
|
}
|
2019-05-05 16:44:08 +00:00
|
|
|
|
|
|
|
tasks.withType(CodeNarc) { codenarcSourceSetTask ->
|
|
|
|
def reportName = (codenarcSourceSetTask.name - 'codenarc').uncapitalize()
|
|
|
|
def ideReport = reports.add(org.gradle.api.reporting.internal.TaskGeneratedSingleFileReport, 'ide', reports.task)
|
|
|
|
ideReport.enabled = true
|
2023-05-18 14:37:36 +00:00
|
|
|
ideReport.destination = file("${project.codenarc.reportsDir}/${reportName}.ide.txt")
|
2019-05-05 16:44:08 +00:00
|
|
|
}
|
2021-01-29 17:22:59 +00:00
|
|
|
|
|
|
|
tasks.withType(ValidateTaskProperties) { validateTaskProperties ->
|
|
|
|
validateTaskProperties.failOnWarning = true
|
|
|
|
validateTaskProperties.enableStricterValidation = true
|
|
|
|
}
|
2015-07-30 14:31:31 +00:00
|
|
|
}
|
2017-09-27 10:36:44 +00:00
|
|
|
|
2015-09-21 00:52:56 +00:00
|
|
|
idea {
|
|
|
|
module {
|
|
|
|
downloadJavadoc = true
|
|
|
|
downloadSources = true
|
|
|
|
}
|
|
|
|
}
|
2015-06-06 20:46:52 +00:00
|
|
|
}
|
2015-06-06 21:27:40 +00:00
|
|
|
|
|
|
|
task release(type: Exec) {
|
|
|
|
description 'Create and upload a release'
|
2019-12-19 22:59:08 +00:00
|
|
|
dependsOn subprojects.findAll { it.name != 'docs' }.collect { ":${it.name}:bintrayUpload" }
|
2015-06-06 21:27:40 +00:00
|
|
|
commandLine 'git', 'tag', "v${project.version}"
|
|
|
|
}
|