forked from nuodb/hibernate-orm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
151 lines (123 loc) · 5.13 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
import org.apache.tools.ant.filters.ReplaceTokens
/*
* Hibernate, Relational Persistence for Idiomatic Java
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
*/
buildscript {
repositories {
jcenter()
mavenCentral()
maven {
name 'jboss-snapshots'
url 'http://repository.jboss.org/nexus/content/repositories/snapshots/'
}
}
dependencies {
classpath 'org.hibernate.build.gradle:gradle-maven-publish-auth:2.0.1'
classpath 'org.hibernate.build.gradle:hibernate-matrix-testing:2.0.0.Final'
classpath 'org.hibernate.build.gradle:version-injection-plugin:1.0.0'
classpath 'org.hibernate.build.gradle:gradle-xjc-plugin:1.0.2.Final'
classpath 'gradle.plugin.com.github.lburgazzoli:gradle-karaf-plugin:0.1.1'
classpath 'org.asciidoctor:asciidoctor-gradle-plugin:1.5.7'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.3'
classpath 'de.thetaphi:forbiddenapis:2.5'
}
}
plugins {
id 'com.gradle.build-scan' version '1.16'
id 'me.champeau.buildscan-recipes' version '0.2.3'
}
allprojects {
repositories {
if (System.env['DIALECT_VERSION'] == null) {
println("DIALECT_VERSION environment variable must be set to 20.0.0 or later")
System.exit(-1);
}
ext.hibernateDialect = System.env['DIALECT_VERSION'];
// Set SONATYPE_VERSION to pull our Jar from there
if (System.env['SONATYPE_VERSION'] != null) {
println "hibernate-orm: Using https://oss.sonatype.org/content/repositories/comnuodb-${System.env.SONATYPE_VERSION}/com/nuodb/hibernate/nuodb-hibernate/${System.env.DIALECT_VERSION}-hib5/"
ivy {
url "https://oss.sonatype.org/content/repositories/comnuodb-${System.env.SONATYPE_VERSION}/"
layout 'pattern', {
artifact '/com/nuodb/hibernate/nuodb-hibernate/${System.env.DIALECT_VERSION}-hib5/nuodb-hibernate-${System.env.DIALECT_VERSION}-hib5.[ext]'
}
}
}
mavenCentral()
maven {
name "jboss-snapshots"
url "http://repository.jboss.org/nexus/content/repositories/snapshots/"
}
//Allow loading additional dependencies from a local path;
//useful to load JDBC drivers which can not be distributed in public.
if (System.env['ADDITIONAL_REPO'] != null) {
flatDir {
dirs "${System.env.ADDITIONAL_REPO}"
}
}
// NuoDB: Default to adding our dialect explicitly
else {
flatDir {
String mvnHome = "${System.properties.get('user.home').replace('\\', '/')}/.m2/repository";
//println "Using default repository: ${mvnHome}"
dirs "${mvnHome}/com/nuodb/hibernate/nuodb-hibernate/${System.env.DIALECT_VERSION}-hib5"
}
}
}
apply plugin: 'idea'
// minimize changes, at least for now (gradle uses 'build' by default)..
buildDir = "target"
apply from: rootProject.file( 'gradle/base-information.gradle' )
}
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Release Task
task release {
description = "The task performed when we are performing a release build. Relies on " +
"the fact that subprojects will appropriately define a release task " +
"themselves if they have any release-related activities to perform"
// Force to release with JDK 8. Releasing with JDK 11 is not supported yet:
// - the hibernate-orm-modules tests do not run due to an issue with the ASM version currently used by Gradle
doFirst {
if ( !JavaVersion.current().isJava8() ) {
throw new IllegalStateException( "Please use JDK 8 to perform the release." )
}
}
}
task publish {
description = "The task performed when we want to just publish maven artifacts. Relies on " +
"the fact that subprojects will have a task named pubappropriately define a release task " +
"themselves if they have any release-related activities to perform"
}
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CI Build Task
task ciBuild {
description = "The task performed when one of the 'main' jobs are triggered on the " +
"CI server. Just as above, relies on the fact that subprojects will " +
"appropriately define a release task themselves if they have any tasks " +
"which should be performed from these CI jobs"
}
wrapper {
gradleVersion = '4.10.2'
distributionType = Wrapper.DistributionType.ALL
}
buildScan {
licenseAgreementUrl = 'https://gradle.com/terms-of-service'
licenseAgree = 'yes'
}
buildScanRecipes {
recipe 'git-commit', baseUrl: 'https://github.com/hibernate/hibernate-orm/tree'
}
//idea {
// project {
// jdkName = baselineJavaVersion
// languageLevel = baselineJavaVersion
//
// vcs = 'Git'
// }
// module {
// name = "hibernate-orm"
// }
//}