mirror of
https://github.com/rehlds/rehlds.git
synced 2025-01-01 01:25:38 +03:00
Allow to build project outside of the git repository.
Added new task buildFixes for fast and simply building project. Example: "gradlew --max-workers=1 clean buildFixes"
This commit is contained in:
parent
50e19c8b46
commit
5daef47bd1
11
build.gradle
11
build.gradle
@ -1,5 +1,6 @@
|
|||||||
import versioning.GitVersioner
|
import versioning.GitVersioner
|
||||||
import versioning.RehldsVersionInfo
|
import versioning.RehldsVersionInfo
|
||||||
|
import org.joda.time.DateTime
|
||||||
|
|
||||||
apply plugin: 'maven-publish'
|
apply plugin: 'maven-publish'
|
||||||
apply from: 'shared.gradle'
|
apply from: 'shared.gradle'
|
||||||
@ -14,14 +15,8 @@ idea {
|
|||||||
}
|
}
|
||||||
|
|
||||||
def gitInfo = GitVersioner.versionForDir(project.rootDir)
|
def gitInfo = GitVersioner.versionForDir(project.rootDir)
|
||||||
if (!gitInfo) {
|
|
||||||
throw new RuntimeException('Running outside git repository')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RehldsVersionInfo versionInfo
|
RehldsVersionInfo versionInfo
|
||||||
if (gitInfo.tag && gitInfo.tag[0] == 'v') {
|
if (gitInfo && gitInfo.tag && gitInfo.tag[0] == 'v') {
|
||||||
def m = gitInfo.tag =~ /^v(\d+)\.(\d+)(\.(\d+))?$/
|
def m = gitInfo.tag =~ /^v(\d+)\.(\d+)(\.(\d+))?$/
|
||||||
if (!m.find()) {
|
if (!m.find()) {
|
||||||
throw new RuntimeException("Invalid git version tag name ${gitInfo.tag}")
|
throw new RuntimeException("Invalid git version tag name ${gitInfo.tag}")
|
||||||
@ -38,7 +33,7 @@ if (gitInfo.tag && gitInfo.tag[0] == 'v') {
|
|||||||
majorVersion: project.majorVersion as int,
|
majorVersion: project.majorVersion as int,
|
||||||
minorVersion: project.minorVersion as int,
|
minorVersion: project.minorVersion as int,
|
||||||
suffix: 'SNAPSHOT',
|
suffix: 'SNAPSHOT',
|
||||||
lastCommitDate: gitInfo.lastCommitDate
|
lastCommitDate: gitInfo ? gitInfo.lastCommitDate : new DateTime()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -331,6 +331,23 @@ task buildRelease {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task buildFixes {
|
||||||
|
dependsOn binaries.withType(SharedLibraryBinarySpec).matching {
|
||||||
|
SharedLibraryBinarySpec blib -> blib.buildable && blib.buildType.name == 'release' && blib.flavor.name == 'rehldsFixes' && blib.component.name == 'rehlds_swds_engine'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gradle.taskGraph.whenReady { graph ->
|
||||||
|
if (!graph.hasTask(buildFixes)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// skip all tasks with the matched substrings in the name like "test"
|
||||||
|
def tasks = graph.getAllTasks();
|
||||||
|
tasks.findAll { it.name.toLowerCase().contains("test") }.each { task ->
|
||||||
|
task.enabled = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
task prepareDevEnvTests {
|
task prepareDevEnvTests {
|
||||||
def rehldsTests = new File(project.projectDir, '_dev/testDemos')
|
def rehldsTests = new File(project.projectDir, '_dev/testDemos')
|
||||||
|
Loading…
Reference in New Issue
Block a user