1description = "grpc-java: OpenTracing"
2
3group = "io.opentracing.contrib"
4version = '0.2.0'
5version = '0.3.0'
6
7apply plugin: 'java'
8apply plugin: 'maven'
9apply plugin: 'signing'
10
11sourceSets {
12    main {
13        java {
14            srcDirs = ['src/main/java']
15        }
16    }
17    test {
18        java {
19            srcDirs = ['src/test/java', 'src/testgen']
20        }
21    }
22}
23
24task javadocJar(type: Jar) {
25    classifier = 'javadoc'
26    from javadoc
27}
28
29task sourcesJar(type: Jar) {
30    classifier = 'sources'
31    from sourceSets.main.allSource
32}
33
34artifacts {
35    archives jar
36
37    archives javadocJar
38    archives sourcesJar
39}
40
41signing {
42    sign configurations.archives
43}
44
45repositories {
46    mavenCentral()
47}
48
49jar {
50    baseName 'grpc-opentracing'
51    version = '0.2.0'
52    version = '0.3.0'
53}
54
55dependencies {
56    compile 'io.grpc:grpc-core:1.6.1'
57    compile 'io.opentracing:opentracing-api:0.30.0'
58    testCompile 'io.opentracing:opentracing-mock:0.30.0'
59    testCompile 'io.grpc:grpc-protobuf:1.6.1'
60    testCompile 'io.grpc:grpc-netty:1.6.1'
61    testCompile 'io.grpc:grpc-stub:1.6.1'
62    testCompile 'junit:junit:4.12'
63}
64
65// Allow for automatic promotion and release to Maven Central
66buildscript {
67    repositories {
68        mavenCentral()
69    }
70    dependencies {
71        classpath "io.codearte.gradle.nexus:gradle-nexus-staging-plugin:0.5.3"
72    }
73}
74apply plugin: 'io.codearte.nexus-staging'
75
76nexusStaging {
77    packageGroup = "io.opentracing"
78}
79
80uploadArchives {
81    repositories {
82        mavenDeployer {
83            beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }
84
85            repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
86                authentication(userName: sonatypeUsername, password: sonatypePassword)
87            }
88
89            snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") {
90                authentication(userName: sonatypeUsername, password: sonatypePassword)
91            }
92
93            pom.project {
94                name 'grpc-opentracing'
95                packaging 'jar'
96                // optionally artifactId can be defined here
97                description 'Provides support for integrating OpenTracing in grpc clients and servers.'
98                url 'http://www.github.com/grpc-ecosystem/grpc-opentracing'
99
100                scm {
101                    url 'scm:git@github.com:grpc-ecosystem:grpc-opentracing.git'
102                    connection 'scm:git@github.com:grpc-ecosystem/grpc-opentracing.git'
103                    developerConnection 'scm:git@github.com:grpc-ecosystem/grpc-opentracing.git'
104                }
105
106                licenses {
107                    license {
108                        name 'BSD-3'
109                        url 'https://opensource.org/licenses/BSD-3-Clause'
110                    }
111                }
112
113                developers {
114                    developer {
115                        name 'Kathy Camenzind'
116                        email 'kcamenzind@lightstep.com'
117                    }
118                }
119
120            }
121        }
122    }
123}
124