This repository was archived by the owner on Jun 20, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbuild.gradle
111 lines (100 loc) · 3 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
buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
}
}
import groovy.json.*
configurations {
compile
deployJars
}
apply plugin: "net.minecraftforge.gradle.forge"
apply plugin: "maven"
group = "net.doubledoordev.fsw"
version = "2.2.1"
targetCompatibility = 1.8
sourceCompatibility = 1.8
archivesBaseName = 'ForgeSubWhitelist'
def githuborg = 'DoubleDoorDevelopment'
def description = 'Automatic sub login checker for Twitch, GameWisp, Beam, ...'
minecraft {
version = "1.12.2-14.23.0.2491"
runDir = "run"
mappings = "snapshot_20171017"
}
if (System.getenv().BUILD_NUMBER != null) version += "." + System.getenv().BUILD_NUMBER
//noinspection GroovyAssignabilityCheck
processResources {
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version':project.version, 'mcversion':project.minecraft.version
}
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
from "LICENSE.txt"
classifier "dev"
appendix = project.minecraft.version
manifest {
attributes 'ModSide': 'SERVER'
}
}
sourceJar {
from "LICENSE.txt"
exclude("com/**")
classifier "src"
appendix = project.minecraft.version
manifest {
attributes 'ModSide': 'SERVER'
}
}
//noinspection GroovyAssignabilityCheck
jar {
from "LICENSE.txt"
exclude("com/**")
appendix = project.minecraft.version
manifest {
attributes 'ModSide': 'SERVER'
}
}
artifacts {
archives deobfJar
}