-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.gradle
109 lines (93 loc) · 2.69 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
plugins {
id 'com.gradle.plugin-publish' version '1.3.0'
id 'java-gradle-plugin'
id 'groovy'
id 'jacoco'
id 'signing'
id 'net.researchgate.release' version '3.0.2'
id 'ru.vyarus.quality' version '5.0.0'
id 'io.github.gradle-nexus.publish-plugin' version '2.0.0'
id 'ru.vyarus.java-lib' version '3.0.0'
id 'ru.vyarus.github-info' version '2.0.0'
id 'com.github.ben-manes.versions' version '0.51.0'
id "pl.droidsonroids.jacoco.testkit" version "1.0.12"
}
java {
sourceCompatibility = 1.8
}
wrapper {
gradleVersion = '8.6'
distributionType = Wrapper.DistributionType.BIN
}
repositories { mavenLocal(); mavenCentral(); gradlePluginPortal() }
dependencies {
testImplementation('org.spockframework:spock-core:2.3-groovy-3.0') {
exclude group: 'org.codehaus.groovy'
}
testImplementation 'ru.vyarus:gradle-java-lib-plugin:3.0.0'
testImplementation 'com.gradle.publish:plugin-publish-plugin:1.3.0'
}
group = 'ru.vyarus'
description = 'Gradle Github info plugin'
github {
user 'xvik'
license 'MIT'
}
maven.pom {
developers {
developer {
id = 'xvik'
name = 'Vyacheslav Rusakov'
email = '[email protected]'
}
}
}
nexusPublishing {
repositories {
sonatype {
username = findProperty('sonatypeUser')
password = findProperty('sonatypePassword')
}
}
}
// skip signing for jitpack (snapshots)
tasks.withType(Sign) {onlyIf { !System.getenv('JITPACK') }}
// Required signing properties for release: signing.keyId, signing.password and signing.secretKeyRingFile
// (https://docs.gradle.org/current/userguide/signing_plugin.html#sec:signatory_credentials)
javaLib {
// don't publish gradle metadata artifact
withoutGradleMetadata()
}
gradlePlugin {
plugins {
githubInfoPlugin {
id = 'ru.vyarus.github-info'
displayName = project.description
description = 'Generates common Github links by convention and configures common plugins'
tags.set(['github'])
implementationClass = 'ru.vyarus.gradle.plugin.github.GithubInfoPlugin'
}
}
}
release.git.requireBranch.set('master')
afterReleaseBuild {
dependsOn = [
'publishMavenPublicationToSonatypeRepository',
'closeAndReleaseSonatypeStagingRepository',
publishPlugins]
doLast {
logger.warn "RELEASED $project.group:$project.name:$project.version"
}
}
test {
useJUnitPlatform()
testLogging {
events 'skipped', 'failed'
exceptionFormat 'full'
}
maxHeapSize = '512m'
doLast {
sleep(1000)
}
}
dependencyUpdates.revision = 'release'