From a185c3a33d5617d0cd2bc150286dd4d3905df495 Mon Sep 17 00:00:00 2001 From: Sanne Grinovero Date: Sat, 20 Jan 2018 23:05:40 +0000 Subject: [PATCH] HHH-12231 Use the org.wildfly.build.provision Gradle plugin to fetch WildFly instances for integration testing --- .../hibernate-orm-modules.gradle | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/hibernate-orm-modules/hibernate-orm-modules.gradle b/hibernate-orm-modules/hibernate-orm-modules.gradle index 066c8544d6..d0a2732c97 100644 --- a/hibernate-orm-modules/hibernate-orm-modules.gradle +++ b/hibernate-orm-modules/hibernate-orm-modules.gradle @@ -7,6 +7,10 @@ import org.apache.tools.ant.filters.ReplaceTokens * See the lgpl.txt file in the root directory or . */ +plugins { + id "org.wildfly.build.provision" version "0.0.2" +} + apply from: rootProject.file( 'gradle/base-information.gradle' ) apply plugin: 'java' apply from: rootProject.file( 'gradle/libraries.gradle' ) @@ -60,14 +64,16 @@ configurations { transitive = false } - wildflyDist wildflyJPA22Patch byteBuddy } +provision { + destinationDir = file("$project.wildFlyInstallDir") +} + dependencies { jipijapa "org.wildfly:jipijapa-hibernate5:${wildflyVersion}" - wildflyDist "org.wildfly:wildfly-dist:${wildflyVersion}@zip" byteBuddy libraries.byteBuddy wildflyJPA22Patch "org.hibernate.javax.persistence:hibernate-jpa-api-2.2-wildflymodules:${wildFlyJPA22PatchVersion}:wildfly-${wildflyVersion}-patch@zip" @@ -158,21 +164,13 @@ task release( dependsOn: createModulesZip ) // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // tasks related to in-container (Arquillian + WF) testing -task installWildFly(type: Copy, dependsOn: createModulesZip) { - description = 'Downloads the WildFly distribution, installs it into a local directory and prepares it for use (in testing)' - - from configurations.wildflyDist.collect { zipTree(it) } - into wildFlyInstallDirBase +task installWildFly( dependsOn: [createModulesZip, provision] ) { + description = 'Downloads the WildFly distribution, installs it into a local directory, includes present version of Hibernate ORM, JPA 2.2 : ready for integration tests' final File patchFile = configurations.wildflyJPA22Patch.resolvedConfiguration.resolvedArtifacts[0].file inputs.file( patchFile ) - doFirst { - cleanInstallWildFly - } - doLast { - // until we have a version of WF supporting EE 8 (JPA 2.2), we need to patch // the install to support JPA 2.2 @@ -182,10 +180,10 @@ task installWildFly(type: Copy, dependsOn: createModulesZip) { ignoreExitValue = true executable "$project.wildFlyInstallDir/bin/jboss-cli." + executableExtension - args "patch apply $patchFile.absolutePath" + args "patch apply $patchFile.absolutePath --override-all" } - // and then install the Hibernate + // and then install the Hibernate ORM modules from the current build copy { duplicatesStrategy DuplicatesStrategy.EXCLUDE from zipTree( createModulesZip.archivePath ) @@ -194,11 +192,9 @@ task installWildFly(type: Copy, dependsOn: createModulesZip) { } } -clean.dependsOn cleanInstallWildFly - task installHibernateModule( dependsOn: [createModulesZip, installWildFly]) -task prepareWildFlyForTests( dependsOn: [installWildFly, installHibernateModule] ) +task prepareWildFlyForTests( dependsOn: [installHibernateModule] ) test.dependsOn prepareWildFlyForTests