Files
prometheus-android-exporter/client/app/build.gradle
Martin Ptáček 7988660eb4 protobuf compiles
2023-06-04 10:03:06 +02:00

119 lines
3.8 KiB
Groovy

plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'kotlinx-serialization'
}
apply plugin: 'com.google.protobuf'
android {
namespace 'com.birdthedeveloper.prometheus.android.prometheus.android.exporter'
compileSdk 33
defaultConfig {
applicationId "com.birdthedeveloper.prometheus.android.prometheus.android.exporter"
minSdk 26
targetSdk 33
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerExtensionVersion '1.4.7'
}
packagingOptions {
resources {
excludes += '/META-INF/{AL2.0,LGPL2.1}'
}
}
}
protobuf {
protoc { artifact = 'com.google.protobuf:protoc:3.11.0' }
generateProtoTasks {
all().each { task ->
task.builtins {
java { option 'lite' }
}
}
}
}
dependencies {
implementation 'androidx.work:work-multiprocess:2.8.1'
def core_version = "1.10.1"
// custom - prometheus client java library
implementation 'io.prometheus:simpleclient:0.16.0'
implementation 'io.prometheus:simpleclient_common:0.16.0'
// custom - kotlin coroutines
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.0-RC"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.0-RC"
// custom - ktor web client
implementation("io.ktor:ktor-client-core:2.3.0")
implementation("io.ktor:ktor-client-cio:2.3.0")
// custom - ktor web server
implementation "io.ktor:ktor-server-cio:2.3.0"
implementation "io.ktor:ktor-server-core:2.3.0"
implementation "io.ktor:ktor-server-status-pages:2.3.0"
// custom - view model for Jetpack Compose
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1"
implementation "androidx.core:core-ktx:$core_version"
// custom - navigation for Jetpack Compose
def nav_version = "2.5.3"
implementation("androidx.navigation:navigation-compose:$nav_version")
// custom - work manager
implementation 'androidx.work:work-runtime-ktx:2.7.1'
// custom - yaml configuration parsing
implementation("com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.15.1")
implementation("com.charleskorn.kaml:kaml:0.54.0")
implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.1'
// custom - protocol buffers
implementation 'com.google.protobuf:protobuf-javalite:3.20.1'
implementation 'com.google.protobuf:protobuf-kotlin-lite:3.20.1'
implementation 'androidx.core:core-ktx:1.10.1'
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.1'
implementation 'androidx.activity:activity-compose:1.7.1'
implementation "androidx.compose.ui:ui:$compose_ui_version"
implementation "androidx.compose.ui:ui-tooling-preview:$compose_ui_version"
implementation 'androidx.compose.material:material:1.4.2'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_ui_version"
debugImplementation "androidx.compose.ui:ui-tooling:$compose_ui_version"
debugImplementation "androidx.compose.ui:ui-test-manifest:$compose_ui_version"
}