From 04de55bac9c58f4be69abb44ede9635f5f61d37b Mon Sep 17 00:00:00 2001 From: "Erik C. Thauvin" Date: Wed, 3 Apr 2019 23:32:27 -0700 Subject: [PATCH] Added sonarcloud intergration. --- build.gradle.kts | 54 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 45 insertions(+), 9 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index a80c0e5..2a4724a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,16 +1,25 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile +import org.junit.platform.gradle.plugin.JUnitPlatformExtension -plugins { - `kotlin-dsl` - `java-gradle-plugin` - `maven-publish` - id("com.gradle.plugin-publish").version("0.10.1") - id("com.github.ben-manes.versions").version("0.21.0") - id("org.jlleitschuh.gradle.ktlint").version("7.2.1") - id("io.gitlab.arturbosch.detekt").version("1.0.0-RC14") +buildscript { + dependencies { + classpath("org.junit.platform:junit-platform-gradle-plugin:1.0.0") + } } -version = "0.9.9-beta" +plugins { + `java-gradle-plugin` + `kotlin-dsl` + `maven-publish` + jacoco + id("com.github.ben-manes.versions").version("0.21.0") + id("com.gradle.plugin-publish").version("0.10.1") + id("io.gitlab.arturbosch.detekt").version("1.0.0-RC14") + id("org.jlleitschuh.gradle.ktlint").version("7.2.1") + id("org.sonarqube") version "2.7" +} + +version = "1.0.0" group = "net.thauvin.erik.gradle" var github = "https://github.com/ethauvin/semver-gradle" @@ -22,6 +31,10 @@ repositories { jcenter() } +apply { + plugin("org.junit.platform.gradle.plugin") +} + dependencies { implementation(gradleApi()) @@ -43,6 +56,10 @@ dependencies { } } +configure { + enableStandardTestTask = true +} + tasks { withType { kotlinOptions.jvmTarget = "1.8" @@ -56,9 +73,20 @@ tasks { } } + withType { + reports { + html.isEnabled = true + xml.isEnabled = true + } + } + "check" { dependsOn("ktlintCheck") } + + "sonarqube" { + dependsOn("jacocoTestReport") + } } detekt { @@ -67,6 +95,14 @@ detekt { baseline = project.rootDir.resolve("detekt-baseline.xml") } +sonarqube { + properties { + property("sonar.projectName", "semver-gradle") + property("sonar.projectKey", "ethauvin_semver-gradle") + property("sonar.sourceEncoding", "UTF-8") + } +} + gradlePlugin { plugins { create(project.name) {