/
build.gradle
96 lines (85 loc) · 2.81 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
// For those who want the bleeding edge
buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT'
}
}
import groovy.json.*
apply plugin: 'net.minecraftforge.gradle.forge'
sourceCompatibility = 1.8
targetCompatibility = 1.8
version = "1.2.1"
if (System.getenv().BUILD_NUMBER != null) version += "." + System.getenv().BUILD_NUMBER
group = "net.doubledoordev.mtrm"
archivesBaseName = "MineTweakerRecipeMaker"
minecraft {
version = "1.11.2-13.20.0.2235"
runDir = "run"
mappings = "snapshot_20170221"
}
processResources {
// this will ensure that this task is redone when the versions change.
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include "mcmod.info"
// replace version and mcversion
expand "version": project.version, "mcversion": project.minecraft.version
}
// copy everything else, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude "mcmod.info"
}
doLast {
def updateFile = new File(project.archivesBaseName + '.json')
def json;
if (updateFile.exists()) {
json = new JsonSlurper().parseText(updateFile.getText())
}
else {
def builder = new JsonBuilder()
json = builder(
homepage: "http://doubledoordev.net/",
promos: new HashMap<>()
)
}
def outStream = new ByteArrayOutputStream()
def result = exec {
executable = 'git'
args = [ 'log', '-n', '1', "--format='%B'"]
standardOutput = outStream
}
def fullLog = outStream.toString().replaceAll("^\\s*'\\s*|\\s*'\\s*\$", "").replaceAll("[\\r\\n]+", "\n")
json['promos'][project.minecraft.version + '-latest'] = project.version
json['promos'][project.minecraft.version + '-recomended'] = project.version
if (!json.containsKey(project.minecraft.version)) json.put(project.minecraft.version, new HashMap<>())
def version = json[project.minecraft.version]
version.put(project.version, fullLog)
updateFile.write JsonOutput.prettyPrint(JsonOutput.toJson(json))
}
}
task deobfJar(type: Jar, dependsOn: 'jar') {
from sourceSets.main.output
classifier "dev"
appendix = project.minecraft.version
}
sourceJar {
exclude("com/**")
classifier "src"
appendix = project.minecraft.version
}
jar {
exclude("com/**")
appendix = project.minecraft.version
}
artifacts {
archives deobfJar
}