From f09b5921ef3e06b5079328f43bcfa2493f0d3708 Mon Sep 17 00:00:00 2001 From: Steve Ebersole Date: Fri, 18 Mar 2011 09:49:00 -0500 Subject: [PATCH] HHH-6001 - Add a top-level directory inside the release bundle archives --- release/release.gradle | 135 ++++++++++++++++++++--------------------- 1 file changed, 67 insertions(+), 68 deletions(-) diff --git a/release/release.gradle b/release/release.gradle index 80acb67a29..f55de546f4 100644 --- a/release/release.gradle +++ b/release/release.gradle @@ -109,86 +109,85 @@ releaseBuildDir = dir( buildDirName ) task prepareReleaseBundles( dependsOn: [aggregateJavadocs] ) releaseCopySpec = copySpec { - from new File( parent.projectDir, 'lgpl.txt' ) - from new File( parent.projectDir, 'changelog.txt' ) - from new File( parent.projectDir, 'hibernate_logo.gif' ) + into( "hibernate-release-$project.version" ) { + from new File( parent.projectDir, 'lgpl.txt' ) + from new File( parent.projectDir, 'changelog.txt' ) + from new File( parent.projectDir, 'hibernate_logo.gif' ) - into('lib/required') { - from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'jta' } - from parent.project( 'hibernate-core' ).configurations.runtime - from parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } - } + into('lib/required') { + from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'jta' } + from parent.project( 'hibernate-core' ).configurations.runtime + from parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } + } - into('lib/bytecode/cglib') { - from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'cglib' } - } + into('lib/bytecode/cglib') { + from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'cglib' } + } - into('lib/bytecode/javassist') { - from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'javassist' } - } + into('lib/bytecode/javassist') { + from parent.project( 'hibernate-core' ).configurations.provided.files { dep -> dep.name == 'javassist' } + } - into( 'lib/jpa' ) { - from parent.project( 'hibernate-entitymanager' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } - from( - parent.project( 'hibernate-entitymanager' ).configurations.runtime - - parent.project( 'hibernate-core' ).configurations.runtime - - parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles - ) - } + into( 'lib/jpa' ) { + from parent.project( 'hibernate-entitymanager' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } + } - into( 'lib/envers' ) { - from( - ( parent.project( 'hibernate-envers' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } - + parent.project( 'hibernate-envers' ).configurations.runtime ) - - parent.project( 'hibernate-core' ).configurations.runtime - - parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles - - parent.project( 'hibernate-entitymanager' ).configurations.runtime - - parent.project( 'hibernate-entitymanager' ).configurations.archives.allArtifactFiles - ) - } - - [ 'hibernate-c3p0', 'hibernate-proxool', 'hibernate-ehcache', 'hibernate-infinispan' ].each { feature -> - final String shortName = feature.substring( 'hibernate-'.length() ); - into('lib/optional/' + shortName) { - from ( - ( parent.project( feature ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } - + parent.project( feature ).configurations.runtime ) + into( 'lib/envers' ) { + from( + ( parent.project( 'hibernate-envers' ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } + + parent.project( 'hibernate-envers' ).configurations.runtime ) - parent.project( 'hibernate-core' ).configurations.runtime - parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles + - parent.project( 'hibernate-entitymanager' ).configurations.runtime + - parent.project( 'hibernate-entitymanager' ).configurations.archives.allArtifactFiles ) } - } -// into('documentation/manual') { -// from new File( project.buildDir, 'docbook/publish' ) -// } + // todo : this closure is problematic as it does not write into the hibernate-release-$project.version directory + // asked on gradle mailing list... + [ 'hibernate-c3p0', 'hibernate-proxool', 'hibernate-ehcache', 'hibernate-infinispan' ].each { feature -> + final String shortName = feature.substring( 'hibernate-'.length() ); + into('lib/optional/' + shortName) { + from ( + ( parent.project( feature ).configurations.archives.allArtifactFiles.filter{ file -> !file.name.endsWith('-sources.jar') } + + parent.project( feature ).configurations.runtime ) + - parent.project( 'hibernate-core' ).configurations.runtime + - parent.project( 'hibernate-core' ).configurations.archives.allArtifactFiles + ) + } + } - into('documentation/javadocs') { - from javadocBuildDir.dir - } +// into('documentation/manual') { +// from new File( project.buildDir, 'docbook/publish' ) +// } - into( 'project' ) { - from ( rootProject.projectDir ) { - exclude( '.git' ) - exclude( '.gitignore' ) - exclude( 'changelog.txt' ) - exclude( 'lgpl.txt' ) - exclude( 'hibernate_logo.gif' ) - exclude( 'tagRelease.sh' ) - exclude( 'gradlew' ) - exclude( 'gradlew.bat' ) - exclude( 'wrapper/*' ) - exclude( '**/.gradle/**' ) - exclude( '**/target/**' ) - exclude( '.idea' ) - exclude( '**/*.ipr' ) - exclude( '**/*.iml' ) - exclude( '**/*.iws' ) - exclude( '**/atlassian-ide-plugin.xml' ) - exclude( '**/.classpath' ) - exclude( '**/.project' ) - exclude( '**/.settings' ) - exclude( '**/.nbattrs' ) + into('documentation/javadocs') { + from javadocBuildDir.dir + } + + into( 'project' ) { + from ( rootProject.projectDir ) { + exclude( '.git' ) + exclude( '.gitignore' ) + exclude( 'changelog.txt' ) + exclude( 'lgpl.txt' ) + exclude( 'hibernate_logo.gif' ) + exclude( 'tagRelease.sh' ) + exclude( 'gradlew' ) + exclude( 'gradlew.bat' ) + exclude( 'wrapper/*' ) + exclude( '**/.gradle/**' ) + exclude( '**/target/**' ) + exclude( '.idea' ) + exclude( '**/*.ipr' ) + exclude( '**/*.iml' ) + exclude( '**/*.iws' ) + exclude( '**/atlassian-ide-plugin.xml' ) + exclude( '**/.classpath' ) + exclude( '**/.project' ) + exclude( '**/.settings' ) + exclude( '**/.nbattrs' ) + } } } }