diff options
Diffstat (limited to 'examples/build.gradle')
-rw-r--r-- | examples/build.gradle | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/examples/build.gradle b/examples/build.gradle new file mode 100644 index 00000000..22889e10 --- /dev/null +++ b/examples/build.gradle @@ -0,0 +1,154 @@ +description = 'OpenCensus Examples' + +buildscript { + repositories { + mavenCentral() + mavenLocal() + maven { + url "https://plugins.gradle.org/m2/" + } + } + dependencies { + classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.3' + } +} + +apply plugin: 'idea' +apply plugin: 'java' +apply plugin: 'com.google.protobuf' + +repositories { + mavenCentral() + mavenLocal() +} + +group = "io.opencensus" +version = "0.17.0-SNAPSHOT" // CURRENT_OPENCENSUS_VERSION + +def opencensusVersion = "0.16.1" // LATEST_OPENCENSUS_RELEASE_VERSION +def grpcVersion = "1.13.1" // CURRENT_GRPC_VERSION +def prometheusVersion = "0.3.0" + +tasks.withType(JavaCompile) { + sourceCompatibility = '1.8' + targetCompatibility = '1.8' +} + +dependencies { + compile "com.google.api.grpc:proto-google-common-protos:1.11.0", + "io.opencensus:opencensus-api:${opencensusVersion}", + "io.opencensus:opencensus-contrib-zpages:${opencensusVersion}", + "io.opencensus:opencensus-contrib-grpc-metrics:${opencensusVersion}", + "io.opencensus:opencensus-exporter-stats-prometheus:${opencensusVersion}", + "io.opencensus:opencensus-exporter-stats-stackdriver:${opencensusVersion}", + "io.opencensus:opencensus-exporter-trace-stackdriver:${opencensusVersion}", + "io.opencensus:opencensus-exporter-trace-logging:${opencensusVersion}", + "io.grpc:grpc-protobuf:${grpcVersion}", + "io.grpc:grpc-stub:${grpcVersion}", + "io.grpc:grpc-netty:${grpcVersion}", + "io.prometheus:simpleclient_httpserver:${prometheusVersion}" + + runtime "io.opencensus:opencensus-impl:${opencensusVersion}", + "io.netty:netty-tcnative-boringssl-static:2.0.8.Final" +} + +protobuf { + protoc { + artifact = 'com.google.protobuf:protoc:3.5.1-1' + } + plugins { + grpc { + artifact = "io.grpc:protoc-gen-grpc-java:${grpcVersion}" + } + } + generateProtoTasks { + all()*.plugins { + grpc {} + } + ofSourceSet('main') + } +} + +// Inform IDEs like IntelliJ IDEA, Eclipse or NetBeans about the generated code. +sourceSets { + main { + java { + srcDir 'src' + srcDirs 'build/generated/source/proto/main/grpc' + srcDirs 'build/generated/source/proto/main/java' + } + } +} + +// Provide convenience executables for trying out the examples. +apply plugin: 'application' + +startScripts.enabled = false + +task tagContextExample(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.tags.TagContextExample' + applicationName = 'TagContextExample' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task multiSpansTracing(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.trace.MultiSpansTracing' + applicationName = 'MultiSpansTracing' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task multiSpansScopedTracing(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.trace.MultiSpansScopedTracing' + applicationName = 'MultiSpansScopedTracing' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task multiSpansContextTracing(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.trace.MultiSpansContextTracing' + applicationName = 'MultiSpansContextTracing' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task zPagesTester(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.zpages.ZPagesTester' + applicationName = 'ZPagesTester' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task quickStart(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.helloworld.QuickStart' + applicationName = 'QuickStart' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task helloWorldServer(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.grpc.helloworld.HelloWorldServer' + applicationName = 'HelloWorldServer' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +task helloWorldClient(type: CreateStartScripts) { + mainClassName = 'io.opencensus.examples.grpc.helloworld.HelloWorldClient' + applicationName = 'HelloWorldClient' + outputDir = new File(project.buildDir, 'tmp') + classpath = jar.outputs.files + project.configurations.runtime +} + +applicationDistribution.into('bin') { + from(multiSpansTracing) + from(multiSpansScopedTracing) + from(multiSpansContextTracing) + from(tagContextExample) + from(zPagesTester) + from(quickStart) + from(helloWorldServer) + from(helloWorldClient) + fileMode = 0755 +} |