2016-07-26 03:22:47 +03:00
|
|
|
import versioning.GitVersioner
|
|
|
|
import versioning.MetamodVersionInfo
|
|
|
|
import org.joda.time.DateTime
|
|
|
|
|
|
|
|
apply from: 'shared.gradle'
|
|
|
|
group = 'metamod'
|
|
|
|
|
|
|
|
apply plugin: 'idea'
|
|
|
|
|
|
|
|
idea {
|
|
|
|
project {
|
|
|
|
languageLevel = 'JDK_1_7'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
def gitInfo = GitVersioner.versionForDir(project.rootDir)
|
|
|
|
MetamodVersionInfo versionInfo
|
|
|
|
if (gitInfo && gitInfo.tag && gitInfo.tag[0] == 'v') {
|
|
|
|
def m = gitInfo.tag =~ /^v(\d+)\.(\d+)(\.(\d+))?$/
|
|
|
|
if (!m.find()) {
|
|
|
|
throw new RuntimeException("Invalid git version tag name ${gitInfo.tag}")
|
|
|
|
}
|
|
|
|
|
|
|
|
versionInfo = new MetamodVersionInfo(
|
|
|
|
majorVersion: m.group(1) as int,
|
|
|
|
minorVersion: m.group(2) as int,
|
|
|
|
maintenanceVersion: m.group(4) ? (m.group(4) as int) : null,
|
2017-07-31 17:44:24 +03:00
|
|
|
localChanges: gitInfo.localChanges,
|
|
|
|
commitDate: gitInfo.commitDate,
|
|
|
|
commitSHA: gitInfo.commitSHA,
|
|
|
|
commitURL: gitInfo.commitURL
|
2016-07-26 03:22:47 +03:00
|
|
|
)
|
|
|
|
} else {
|
|
|
|
versionInfo = new MetamodVersionInfo(
|
|
|
|
majorVersion: project.majorVersion as int,
|
|
|
|
minorVersion: project.minorVersion as int,
|
2017-07-31 17:44:24 +03:00
|
|
|
maintenanceVersion: project.maintenanceVersion as int,
|
|
|
|
suffix: '',
|
|
|
|
localChanges: gitInfo ? gitInfo.localChanges : true,
|
|
|
|
commitDate: gitInfo ? gitInfo.commitDate : new DateTime(),
|
|
|
|
commitSHA: gitInfo ? gitInfo.commitSHA : "",
|
|
|
|
commitURL: gitInfo ? gitInfo.commitURL : "",
|
|
|
|
commitCount: gitInfo ? (gitInfo.commitCount as int) : null
|
2016-07-26 03:22:47 +03:00
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
project.ext.metamodVersionInfo = versionInfo
|
2017-07-31 17:44:24 +03:00
|
|
|
project.version = versionInfo.asMavenVersion()
|
2016-07-26 03:22:47 +03:00
|
|
|
|
|
|
|
apply from: 'publish.gradle'
|
|
|
|
|
|
|
|
task wrapper(type: Wrapper) {
|
|
|
|
gradleVersion = '2.4'
|
|
|
|
}
|