plugins { // Apply the org.jetbrains.kotlin.jvm Plugin to add support for Kotlin. id 'org.jetbrains.kotlin.jvm' version '1.4.30' // Apply the java-library plugin for API and implementation separation. id 'java-library' id "com.github.ben-manes.versions" version "0.36.0" id "maven-publish" id "com.jfrog.bintray" version "1.8.5" } String currentVersion = '0.2.0' group = 'io.supabase' version = currentVersion repositories { jcenter() } dependencies { compile "org.apache.httpcomponents.client5:httpclient5:5.0.3" // Align versions of all Kotlin components implementation platform('org.jetbrains.kotlin:kotlin-bom') implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8" implementation "com.fasterxml.jackson.module:jackson-module-kotlin:2.12.1" implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.12.1" testCompile "org.testcontainers:testcontainers:1.15.1" testCompile "org.testcontainers:junit-jupiter:1.15.1" testCompile "com.github.tomakehurst:wiremock-jre8:2.27.2" testImplementation 'org.junit.jupiter:junit-jupiter:5.7.1' testImplementation "io.mockk:mockk:1.10.5" testImplementation "com.willowtreeapps.assertk:assertk-jvm:0.23" testImplementation "org.slf4j:slf4j-simple:1.7.30" testImplementation "org.postgresql:postgresql:42.2.18" } compileKotlin { kotlinOptions { jvmTarget = '1.8' } } compileTestKotlin { kotlinOptions { jvmTarget = '1.8' } } test { useJUnitPlatform() } task sourcesJar(type: Jar) { from sourceSets.main.allSource } task javadocJar(type: Jar, dependsOn: project.javadoc) { from javadoc.destinationDir } def pomConfig = { licenses { license { name "The MIT License" url "https://opensource.org/licenses/MIT" distribution "repo" } } developers { developer { id "kevcodez" name "Kevin Grüneberg" email "k.grueneberg1994@gmail.com" } } scm { url "https://github.com/supabase/postgrest-kt" } } publishing { publications { mavenPublication(MavenPublication) { from components.java artifact sourcesJar { classifier "sources" } artifact javadocJar { classifier "javadoc" } groupId 'io.supabase' artifactId 'postgrest-kt' pom.withXml { def root = asNode() root.appendNode('description', 'Kotlin JVM client for PostgREST API.') root.appendNode('name', 'PostgREST Kotlin') root.appendNode('url', 'https://github.com/supabase/postgrest-kt') root.children().last() + pomConfig } } } } bintray { user = System.getenv("bintray_user") ?: findProperty("bintray_user") key = System.getenv("bintray_key") ?: findProperty("bintray_key") publications = ['mavenPublication'] publish = true pkg { repo = 'supabase' name = 'postgrest-kt' userOrg = 'supabase' licenses = ['MIT'] vcsUrl = 'https://github.com/supabase/postgrest-kt.git' version { name = currentVersion desc = currentVersion released = new Date() } } }