1
0
mirror of https://github.com/firstBitMarksistskaya/jenkins-lib.git synced 2024-11-21 18:16:34 +02:00
jenkins-lib/build.gradle.kts
Nikita Fedkin 2680dd67d6 Cleanups
2024-08-31 17:15:15 +02:00

130 lines
4.9 KiB
Plaintext

import com.mkobit.jenkins.pipelines.http.AnonymousAuthentication
plugins {
java
groovy
jacoco
id("com.mkobit.jenkins.pipelines.shared-library") version "0.10.1"
id("com.github.ben-manes.versions") version "0.51.0"
id("org.jenkins-ci.jpi") version "0.52.0-rc.1" apply false
}
repositories {
mavenCentral()
}
tasks {
register<org.jenkinsci.gradle.plugins.jpi.TestDependenciesTask>("resolveIntegrationTestDependencies") {
into {
val javaConvention = project.convention.getPlugin<JavaPluginConvention>()
File("${javaConvention.sourceSets.integrationTest.get().output.resourcesDir}/test-dependencies")
}
configuration = configurations.integrationTestRuntimeClasspath.get()
}
processIntegrationTestResources {
dependsOn("resolveIntegrationTestDependencies")
}
}
java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
val junitVersion = "5.11.0"
val spockVersion = "1.3-groovy-2.4"
val groovyVersion = "2.4.21"
val slf4jVersion = "2.0.16"
val jsonschemaVersion = "4.36.0"
dependencies {
implementation("org.codehaus.groovy", "groovy-all", groovyVersion)
// jsonschema-generator
implementation("com.github.victools", "jsonschema-generator", jsonschemaVersion)
implementation("com.github.victools", "jsonschema-module-jackson", jsonschemaVersion)
// unit-tests
testRuntimeOnly("org.junit.jupiter", "junit-jupiter-engine", junitVersion)
testImplementation("org.junit.jupiter", "junit-jupiter-api", junitVersion)
testImplementation("org.assertj", "assertj-core", "3.26.3")
testImplementation("org.mockito", "mockito-core", "5.13.0")
testImplementation("org.slf4j", "slf4j-api", slf4jVersion)
testImplementation("org.slf4j", "slf4j-simple", slf4jVersion)
// integration-tests
integrationTestImplementation("org.jenkins-ci.main", "jenkins-test-harness", "2254.vcff7a_d4969e5")
integrationTestImplementation("org.spockframework", "spock-core", spockVersion)
integrationTestImplementation("org.codehaus.groovy", "groovy-all", groovyVersion)
integrationTestImplementation("org.springframework.security", "spring-security-core", "5.1.13.RELEASE")
integrationTestImplementation("org.slf4j", "slf4j-api", slf4jVersion)
integrationTestImplementation("org.slf4j", "slf4j-simple", slf4jVersion)
}
tasks.test {
useJUnitPlatform()
testLogging {
events("passed", "skipped", "failed")
}
reports {
html.required.set(true)
}
}
tasks.check {
dependsOn(tasks.jacocoTestReport)
dependsOn(tasks.integrationTest)
}
tasks.jacocoTestReport {
reports {
xml.required.set(true)
xml.outputLocation.set(File("$buildDir/reports/jacoco/test/jacoco.xml"))
}
}
jenkinsIntegration {
baseUrl.set(uri("http://localhost:5050").toURL())
authentication.set(providers.provider { AnonymousAuthentication })
downloadDirectory.set(layout.projectDirectory.dir("jenkinsResources"))
}
sharedLibrary {
// TODO: this will need to be altered when auto-mapping functionality is complete
coreVersion.set(jenkinsIntegration.downloadDirectory.file("core-version.txt").map { it.asFile.readText().trim() })
// TODO: retrieve downloaded plugin resource
pluginDependencies {
dependency("org.jenkins-ci.plugins", "pipeline-build-step", "540.vb_e8849e1a_b_d8")
dependency("org.jenkins-ci.plugins", "pipeline-utility-steps", "2.17.0")
dependency("org.jenkins-ci.plugins", "git", "5.2.2")
dependency("org.jenkins-ci.plugins", "http_request", "1.19")
dependency("org.jenkins-ci.plugins", "timestamper", "1.27")
dependency("org.jenkins-ci.plugins", "credentials", "1371.vfee6b_095f0a_3")
dependency("org.jenkins-ci.plugins", "token-macro", "400.v35420b_922dcb_")
dependency("org.jenkins-ci.plugins.workflow", "workflow-step-api", "678.v3ee58b_469476")
dependency("org.jenkins-ci.modules", "sshd", "3.329.v668e35efc720")
dependency("org.6wind.jenkins", "lockable-resources", "1255.vf48745da_35d0")
dependency("ru.yandex.qatools.allure", "allure-jenkins-plugin", "2.31.1")
dependency("io.jenkins.blueocean", "blueocean-pipeline-api-impl", "1.27.14")
dependency("sp.sd", "file-operations", "266.v9d4e1eb_235b_a_")
val declarativePluginsVersion = "2.2214.vb_b_34b_2ea_9b_83"
dependency("org.jenkinsci.plugins", "pipeline-model-api", declarativePluginsVersion)
dependency("org.jenkinsci.plugins", "pipeline-model-definition", declarativePluginsVersion)
dependency("org.jenkinsci.plugins", "pipeline-model-extensions", declarativePluginsVersion)
dependency("org.jenkinsci.plugins", "pipeline-model-declarative-agent", "1.1.1")
}
}