You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polygene.apache.org by pa...@apache.org on 2015/07/17 14:31:24 UTC
[5/5] zest-qi4j git commit: ZEST-25 Source distribution now honor
libs/ext/tools release spec
ZEST-25 Source distribution now honor libs/ext/tools release spec
Project: http://git-wip-us.apache.org/repos/asf/zest-qi4j/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-qi4j/commit/858f5bae
Tree: http://git-wip-us.apache.org/repos/asf/zest-qi4j/tree/858f5bae
Diff: http://git-wip-us.apache.org/repos/asf/zest-qi4j/diff/858f5bae
Branch: refs/heads/develop
Commit: 858f5baeb74d31c3ec02362ff0aa2b12d51224fb
Parents: ff61738
Author: Paul Merlin <pa...@apache.org>
Authored: Fri Jul 17 14:30:44 2015 +0200
Committer: Paul Merlin <pa...@apache.org>
Committed: Fri Jul 17 14:30:44 2015 +0200
----------------------------------------------------------------------
build.gradle | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 69 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/858f5bae/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index 4843f5b..d541318 100644
--- a/build.gradle
+++ b/build.gradle
@@ -665,8 +665,28 @@ task download( type: Copy ) {
}
}
-def srcDistImage = copySpec {
+
+def srcDistFilesImages = copySpec {
from '.'
+ include '*.txt'
+ include 'doap.rdf'
+ include '*.gradle'
+ include 'gradlew*'
+ include 'gradle/**'
+ include 'etc/**'
+ include 'buildSrc/**'
+ releaseApprovedProjects.each { p ->
+ def relPath = new File( project.projectDir.toURI().relativize( p.projectDir.toURI() ).toString() )
+ include "$relPath/**"
+ }
+ include 'manual/**'
+ include 'samples/**'
+ include 'tests/**'
+ include 'tutorials/**'
+ // Filtered, see below
+ exclude 'settings.gradle'
+ exclude 'gradle.properties'
+ // Excludes
exclude '**/build/' // Build output
exclude 'derby.log' // Derby test garbage
exclude '**/*.iml' // IDEA files
@@ -683,7 +703,52 @@ def srcDistImage = copySpec {
exclude '**/.git*' // Git files
exclude '**/.gradle/' // Gradle management files
exclude '**/.gradletasknamecache' // Gradle cache
- into "qi4j-sdk-$version/"
+ into '.'
+}
+
+task srcDistFilteredFiles() {
+ // Generates various files for the source distribution
+ // - settings.gradle
+ // - gradle.properties to set version !
+ def filteredDir = new File( "$project.buildDir/tmp/srcDistFilteredFiles")
+ outputs.file filteredDir
+ doLast {
+ // Settings
+ def settingsFile = new File( filteredDir, 'settings.gradle' )
+ settingsFile.parentFile.mkdirs()
+ def filteredSettings = ''
+ project.file( 'settings.gradle' ).readLines().each { line ->
+ if( line.contains( '\'libraries:' ) || line.contains( '\'extensions:' ) || line.contains( '\'tools:' ) ) {
+ def accepted = false
+ releaseApprovedProjects.collect{it.projectDir}.each { acceptedProjectDir ->
+ if( line.contains( "'${acceptedProjectDir.parentFile.name}:${acceptedProjectDir.name}'" ) ) {
+ accepted = true
+ }
+ }
+ if( accepted ) {
+ filteredSettings += "$line\n"
+ }
+ } else {
+ filteredSettings += "$line\n"
+ }
+ }
+ settingsFile.text = filteredSettings
+ // gradle.properties
+ def gradlePropsFile = new File( filteredDir, 'gradle.properties' )
+ gradlePropsFile.parentFile.mkdirs()
+ gradlePropsFile.text = project.file( 'gradle.properties' ).text + "\nversion=$version\n"
+ }
+}
+
+def srcDistFilteredFilesImage = copySpec {
+ from srcDistFilteredFiles
+ into '.'
+}
+
+def srcDistImage = copySpec {
+ into "qi4j-sdk-$version"
+ with srcDistFilesImages
+ with srcDistFilteredFilesImage
}
def reportsDistImage = copySpec {
@@ -734,13 +799,13 @@ def binDistImage = copySpec {
with libsImage
}
-task zipSources( type: Zip, dependsOn: buildAll ) {
+task zipSources( type: Zip ) {
baseName = 'qi4j-sdk'
with srcDistImage
classifier = 'src'
}
-task tarSources( type: Tar, dependsOn: buildAll ) {
+task tarSources( type: Tar ) {
baseName = 'qi4j-sdk'
with srcDistImage
compression = Compression.GZIP