-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.gradle.kts
109 lines (89 loc) · 3.6 KB
/
build.gradle.kts
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
import groovy.lang.GroovyObject
import org.gradle.kotlin.dsl.jenkinsPlugin
import org.jenkinsci.gradle.plugins.jpi.JpiDeveloper
import org.jenkinsci.gradle.plugins.jpi.JpiLicense
import org.jenkinsci.gradle.plugins.jpi.TestDependenciesTask
import org.jetbrains.kotlin.asJava.classes.lazyPub
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
buildscript {
repositories {
mavenLocal()
}
dependencies {
// TODO use official 0.23.0 release when that's available
classpath("org.jenkins-ci.tools:gradle-jpi-plugin:0.23.0-SNAPSHOT")
}
}
plugins {
kotlin("jvm")
kotlin("kapt")
`maven-publish`
}
apply {
plugin("org.jenkins-ci.jpi")
}
group = "com.simple.jenkins"
description = "Run Firebase Test Lab tests and publish test results"
val jenkinsVersion: String by extra
val jacksonVersion: String by extra
val excludedTestPlugins = listOf("gcloud-sdk")
jenkinsPlugin {
coreVersion = jenkinsVersion
displayName = "Firebase Test Plugin"
url = "https://wiki.jenkins-ci.org/display/JENKINS/Firebase+Test+Plugin"
gitHubUrl = "https://github.com/simplefinance/firebase-test-plugin"
fileExtension = "jpi"
pluginFirstClassLoader = true
developers(delegateClosureOf<GroovyObject> {
setProperty("tadfisher", delegateClosureOf<JpiDeveloper> {
setProperty("name", "Tad Fisher")
setProperty("email", "[email protected]")
})
})
licenses(delegateClosureOf<GroovyObject> {
setProperty("Apache License, Version 2.0", delegateClosureOf<JpiLicense> {
setProperty("url", "https://www.apache.org/licenses/LICENSE-2.0.txt")
})
})
}
repositories {
jcenter()
}
dependencies {
kapt("net.java.sezpoz:sezpoz:1.12")
compile(kotlin("stdlib"))
compile(kotlin("stdlib-jre8"))
compile(kotlin("reflect"))
compile("com.fasterxml.jackson.core:jackson-core:$jacksonVersion")
compile("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion")
compile("com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:$jacksonVersion")
compile("com.fasterxml.jackson.module:jackson-module-kotlin:$jacksonVersion")
compileOnly("com.fasterxml.jackson.core:jackson-annotations:$jacksonVersion")
compile("org.jenkins-ci.lib:dry-run-lib:0.1")
compileOnly("org.jenkins-ci:symbol-annotation:1.3")
compile("com.google.cloud:google-cloud:0.20.1-alpha")
"jenkinsPlugins"("org.jenkins-ci.plugins:structs:1.9")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-durable-task-step:2.12")
"jenkinsPlugins"("org.jenkins-ci.plugins:credentials:2.1.14")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-api:2.18")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-step-api:2.12")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-support:2.14")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-cps:2.36")
"jenkinsPlugins"("org.jenkins-ci.plugins.workflow:workflow-job:2.13")
"jenkinsPlugins"("org.jenkins-ci.plugins:google-oauth-plugin:0.5")
"optionalJenkinsPlugins"("com.byclosure.jenkins.plugins:gcloud-sdk:0.0.1")
"jenkinsTest"("org.jenkins-ci.main:jenkins-test-harness:2.23") { isTransitive = true }
"jenkinsTest"("org.jenkins-ci.plugins.workflow:workflow-step-api:2.12:tests")
}
with (tasks["resolveTestDependencies"] as TestDependenciesTask) {
doLast {
val index = File(destinationDir, "index")
val deps = index.readText()
index.writeText(deps.lineSequence().filter {
!excludedTestPlugins.contains(it)
}.joinToString("\n"))
}
}
kapt {
correctErrorTypes = true
}