Mercurial > hg4j
view build.gradle @ 493:ba36f66c32b4
Refactor to keep knowledge about repository control files and their location in respect to .hg/ in a single place (facilitate future adoption of shared repositories)
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Thu, 18 Oct 2012 18:36:13 +0200 |
parents | 31bd09da0dcf |
children | 2f33f102a8fa |
line wrap: on
line source
/* * Copyright (c) 2012 TMate Software Ltd */ def isRelease = false version = '1.1.0-SNAPSHOT' description = 'Pure Java API and Toolkit for Mercurial DVCS' group = 'org.tmatesoft.hg4j' apply plugin : 'java' apply plugin : 'maven' sourceCompatibility = '1.5' targetCompatibility = '1.5' sourceSets { main { java { srcDir 'src/' } } test { java { srcDir 'test/' } resources { srcDir 'test-data/' } } cli { java { srcDir 'cmdline/' } } } repositories { mavenLocal() mavenCentral() } configurations { deployJars } dependencies { testCompile 'junit:junit:4.8.2' cliCompile 'junit:junit:4.8.2' cliCompile files(sourceSets.main.output) { builtBy compileJava } deployJars "org.apache.maven.wagon:wagon-http:1.0-beta-2" } def sharedMetaInf = { from project.file('COPYING') } task sourcesJar(type: Jar) { classifier = 'src' from sourceSets.main.java, sourceSets.test.java, sourceSets.cli.java metaInf sharedMetaInf } task cmdlineJar(type: Jar) { appendix = 'console' from sourceSets.cli.output metaInf sharedMetaInf } jar { manifest { attributes ("Implementation-Version": version) } metaInf sharedMetaInf } artifacts { archives sourcesJar, cmdlineJar deployJars jar, sourcesJar } install { configuration = configurations.deployJars /* repositories.mavenDeployer { addFilter('f1') { artifact, file -> println file.name println artifact.ext println file.name - ('.' + artifact.ext) println ' ' def fname = file.name - ('.' + artifact.ext) println fname.endsWith('src') fname.endsWith('src') } addFilter('f2') { artifact, file -> def fname = file.name - ('.' + artifact.ext) fname.endsWith('console') } addFilter('f3') { artifact, file -> def fname = file.name - ('.' + artifact.ext) fname.endsWith(version) } } */ } uploadArchives { configuration = configurations.deployJars repositories { mavenDeployer { configuration = configurations.deployJars repository(url: "http://maven.tmatesoft.com/content/repositories/snapshots/") { authentication(userName: project.ext.deploySnapshotsRepositoryUser, password: project.ext.deploySnapshotsRepositoryPassword) } } } } task findOutWhyProjectCopyDoesntWork() << { // files under .hg/ are not copied with copy {} ext.myjar = zipTree( 'test-data/test-repos.jar' ) ext.destDir = new File(project.getBuildDir(), "hg4j-tests1/") outputs.dir ext.destDir CopySpec ss = copySpec { from ext.myjar into ext.destDir include '*', '*/.*', '**/.*/*', '**/.*', '**/*', '*/.*/**', '**/**', '.*/**', '**/.hg/*', '**/.hg*' eachFile {element -> println "AAA:$element.relativePath" } } println "includeEmptyDir: $ss.includeEmptyDirs" println "includes: $ss.includes" println "allIncludes: $ss.allIncludes" println "excludes: $ss.excludes" println "allExcludes: $ss.allExcludes" } test { // <property name="test-repos-root" value="${java.io.tmpdir}/hg4j-tests/"/> // <delete dir="${test-repos-root}" quiet="yes"/> // <unjar src="test-data/test-repos.jar" dest="${test-repos-root}"/> File testReposRoot = new File(project.getBuildDir(), "hg4j-tests/"); if ( testReposRoot.exists() ) { project.delete(testReposRoot) } testReposRoot.mkdirs(); zipTree('test-data/test-repos.jar').visit {element -> element.copyTo(element.relativePath.getFile(testReposRoot)) } systemProperties 'hg4j.tests.repos' : testReposRoot systemProperties 'hg4j.tests.remote' : 'http://hg.serpentine.com/tutorial/hello' }