geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kmil...@apache.org
Subject [04/10] geode-examples git commit: GEODE-2318 Update build script
Date Tue, 31 Jan 2017 00:43:08 GMT
GEODE-2318 Update build script

Add support for downloading the geode version for testing. Also
create and sign release artifacts. Fix the git ignores. Add the
KEYS file.


Project: http://git-wip-us.apache.org/repos/asf/geode-examples/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode-examples/commit/feb70fd5
Tree: http://git-wip-us.apache.org/repos/asf/geode-examples/tree/feb70fd5
Diff: http://git-wip-us.apache.org/repos/asf/geode-examples/diff/feb70fd5

Branch: refs/heads/feature/GEODE-2231
Commit: feb70fd5b0ed8f00739c17e99aa46194a103b278
Parents: 24ab790
Author: Anthony Baker <abaker@apache.org>
Authored: Tue Jan 17 14:10:50 2017 -0800
Committer: Anthony Baker <abaker@apache.org>
Committed: Tue Jan 17 19:50:38 2017 -0800

----------------------------------------------------------------------
 .gitignore                                      |   30 +-
 KEYS                                            | 1027 ++++++++++++++++++
 build.gradle                                    |   66 +-
 .../apache/geode/gradle/PasswordDialog.groovy   |   41 +
 gradle.properties                               |    2 +
 gradle/release.gradle                           |   85 ++
 6 files changed, 1225 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index c180651..88e27ec 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,27 @@
-.gradle/*
-build/*
-*/build
+# This file should contain patterns all developers want to ignore
+# If you have workspace specific files, add them 
+# to .git/info/exclude.
+#
+# see git help gitignore for more details
+build/
+.idea/
+.gradle/
+.classpath
+.project
+.settings/
+.idea/
+build-eclipse/
+/tags
+
+
+
+*.iml
+*.ipr
+*.iws
+*.swp
+*.log
+*.patch
+*.diff
+*.dat
+*.rej
+*.orig

http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/KEYS
----------------------------------------------------------------------
diff --git a/KEYS b/KEYS
new file mode 100644
index 0000000..4886ba9
--- /dev/null
+++ b/KEYS
@@ -0,0 +1,1027 @@
+This file contains the PGP keys of various developers.
+
+Users: pgp < KEYS
+       gpg --import KEYS
+Developers: 
+        pgp -kxa <your name> and append it to this file.
+        (pgpk -ll <your name> && pgpk -xa <your name>) >> this file.
+        (gpg --list-sigs <your name>
+             && gpg --armor --export <your name>) >> this file.
+
+pub   1024D/9475BD5D 2010-10-08
+uid                  Roman V Shaposhnik (CODE SIGNING KEY) <rvs@apache.org>
+sig 3        9475BD5D 2011-11-01  Roman V Shaposhnik (CODE SIGNING KEY) <rvs@apache.org>
+uid                  Roman V Shaposhnik <rvs@apache.org>
+sig 3        9475BD5D 2011-11-01  Roman V Shaposhnik (CODE SIGNING KEY) <rvs@apache.org>
+uid                  Roman V Shaposhnik <roman@shaposhnik.org>
+sig 3        9475BD5D 2010-10-08  Roman V Shaposhnik (CODE SIGNING KEY) <rvs@apache.org>
+sig          61A073E9 2010-10-28  [User ID not found]
+sub   2048g/DD0FB547 2010-10-08
+sig          9475BD5D 2010-10-08  Roman V Shaposhnik (CODE SIGNING KEY) <rvs@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.10 (GNU/Linux)
+
+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
+yMSU5BkirXWZDazip1CeMuY=
+=jokp
+
+
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub  4096R/C72CFB64 2015-10-01            
+	 Fingerprint=948E 8234 14BE 693A 7F74  ABBE 19DB CAEE C72C FB64 
+
+uid Anthony Baker <abaker@apache.org>
+sig  sig3  C72CFB64 2015-10-01 __________ 2019-10-01 [selfsig]
+sig  sig3  8B6CF8DD 2015-10-09 2019-10-09 __________ Anthony Baker <abaker@pivotal.io>
+sig  sig3  5AE83723 2015-10-09 2019-10-09 __________ William Markito Oliveira <markito@apache.org>
+
+sub  4096R/872FE71E 2015-10-01            
+sig sbind  C72CFB64 2015-10-01 __________ 2019-10-01 []
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: SKS 1.1.3
+
+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
+8Uow+sc8jl2OC1j5NZLEB8QQY7K3myI=
+=1p7v
+-----END PGP PUBLIC KEY BLOCK-----
+
+pub   rsa2048/456B8A09 2016-01-12
+uid         [ultimate] Nitin Lamba (CODE SIGNING KEY) <nitin@ampool.io>
+sub   rsa2048/F6891D30 2016-01-12
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2
+
+mQENBFaVRnMBCADPrMJBXXWLflywdgBR6EYnSU704zDa1M92snHBhs6ensz7SnMQ
+wR4XaWovs9HTMtDkBUkG/y6yHHI9OG/rzDkR/KzmtwxOvpbtgIQDE/w+r4brR95Q
+pBZ7j5Mw+ylyUKRLsF/pX7tupOpR82U69JQ6G2yRn2XVjcVQ+TVm6gzB1Iq6pbfH
+/RE7QhpdzheEoOI+Ufat6UNQkY4CDcjh4CozMWCB1Zl9+g2oXPU6C4kB4KGIOwhB
+HVwYJO4KFkm84rDqw3Yv6A3/xFBfYjBVBF0iERx1S2DBZTTp92agYnqM6Yw1xwsa
+iYK5Xo7p3VrhAFMjkS/j23Myrl4lPotKSRArABEBAAG0ME5pdGluIExhbWJhIChD
+T0RFIFNJR05JTkcgS0VZKSA8bml0aW5AYW1wb29sLmlvPokBNwQTAQoAIQUCVpVG
+cwIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRBlCFWCRWuKCWccB/9t0lAA
+sVOzkvx5ukDqgvRpiq42Xy77u6Wat6ICqsZmgkIpGQ4SZv3DsU+GC+cYTM5FiZco
+mXFvAZL0Frz2W4jfT3h/1f3ukjqf+KX8rNpGgBL0FZ9KYEFiUSc8+iFZjvcYFGaD
+Ymal38+WzrZcdt4kK0mba2Udtu4i48CizX+CoBg0YYJaFKg1Jy/AXdpJT3eHSbru
+1F6SflOs5tkr9y94WnG5hvb5CQmYqvjbyiLotp3vxvD9czTSeg+1GR0/6ZvQaGxP
+sKnbJrkME47LhJoB8lJS5k5R8RiGcNWRyDr/u4OOAkDKtmW6ihxsY+3NQ13bi8+6
+0SE6YY88g4d3vwEquQENBFaVRnMBCAC2osXaufdp9PulEaVaZ0Qc/RimnY3xKw45
+7Md3BWH/ViIGWR2D5NWsiwiTqE6V3bjCy2A/oTlsa+0X1cE3aXikk6hNdOprZQpS
+ITzmZ7ScWeyB9Sn0g3wI2w/ynrqevqUF8WqUyQ/le9bq9wYmMgCoyrIy4V+7rgKL
+pgtNqaUhd9hRTToJ68IMxmmyIMtLwmrLJt8l5cGrVTBB1tccVKRWbeZgTe3YsesA
+9rSIZPm0qzoMvcPj5iR2VSqLtdpp1PA48ZYPSuvRapl4/Ipk3WK3TVywfdp6kZF4
+0TnuS+0pNZ3TIi2eMOrp8U5ztMUZtAkx7AYYToGUczE1US+ieIP5ABEBAAGJAR8E
+GAEKAAkFAlaVRnMCGwwACgkQZQhVgkVrigkA5Qf+P5AsgHookRYBDYuud1Wyfm1M
+lsf3AUIfLq7pB5mF72yuK79jCAfOQR4FlmM75oswFbPtRcy5+dRm5/cFXPGsnCb9
+BbnHvAOMOREvRzmxwjkoV2KfSik71q7M7YC7GLErM/up1/wdhvzwhdNfacE6am/g
+ee2pf/GwYYqtCQZya20eyuEWnD+gZWEo6vpBwTxVkjJ+SW9mW58SopN7OqX02Ciz
+shSSlzzAmNUUrnbepXrAM3claSldiV0HRDc1lvIqgK+8AWsN5RTAN3j+kLB3ZXas
+02E85NJfruSVQdfsF/70ETCQW4Q25w1a6s8TkNOuAyLkgvbfnsg9X9q2Difj9g==
+=+T/b
+-----END PGP PUBLIC KEY BLOCK——
+
+pub   4096R/A17B74E4 2016-01-12 [expires: 2020-01-11]
+uid       [ultimate] Mark Bretl (ASF) <mbretl@apache.org>
+sub   4096R/10AB2063 2016-01-12 [expires: 2020-01-11]
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2
+
+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
+KnUrsgPcFqltB5lYS0vJ3g==
+=323X
+-----END PGP PUBLIC KEY BLOCK-----pub   4096R/ADA2F190 2016-04-07 [expires: 2020-04-07]
+uid       [ultimate] Jens Deppe <jensdeppe@apache.org>
+sig 3        ADA2F190 2016-04-07  Jens Deppe <jensdeppe@apache.org>
+sig          8B6CF8DD 2016-04-07  Anthony Baker <abaker@pivotal.io>
+sig 3        2C2DF2AE 2016-04-07  Ivan Godwin <igodwin@pivotal.io>
+sub   4096R/13122E2A 2016-04-07 [expires: 2020-04-07]
+sig          ADA2F190 2016-04-07  Jens Deppe <jensdeppe@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - http://gpgtools.org
+
+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
+lJxlUl5rvg==
+=U9Qu
+-----END PGP PUBLIC KEY BLOCK-----
+pub   4096R/A1688D97 2016-01-20 [expires: 2021-04-06]
+uid                  Dan Smith <upthewaterspout@apache.org>
+sig          A966133A 2016-04-07  Hitesh Khamesra <hiteshkhamesra@apache.org>
+sig          8B6CF8DD 2016-04-07  [User ID not found]
+sig          18F902DB 2016-04-07  Swapnil Bawaskar <sbawaskar@apache.org>
+sig          48A54F84 2016-04-07  Jianxia Chen <jchen21@apache.org>
+sig 3        C1D54701 2016-04-07  Joey McAllister <jmcallister@pivotal.io>
+sig 3        ADA2F190 2016-04-07  Jens Deppe <jensdeppe@apache.org>
+sig 3        9DBE2177 2016-04-07  Jason Huynh <jasonhuynh@apache.org>
+sig 3        BBBFDF79 2016-04-07  Shelley Lynn Hughes-Godfrey <lhughesgodfrey@pivotal.io>
+sig 3        2C2DF2AE 2016-04-07  Ivan Godwin <igodwin@pivotal.io>
+sig 3        A1688D97 2016-01-20  Dan Smith <upthewaterspout@apache.org>
+sub   4096R/FA88B11E 2016-01-20
+sig          A1688D97 2016-01-20  Dan Smith <upthewaterspout@apache.org>
+sub   4096R/8CB6D274 2016-04-07 [expires: 2021-04-06]
+sig          A1688D97 2016-04-07  Dan Smith <upthewaterspout@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+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
+=gNaz
+-----END PGP PUBLIC KEY BLOCK-----
+pub   2048R/C7B8A8AD 2016-05-17 [expires: 2022-05-16]
+uid                  Bruce J Schuchardt (Apache signing key) <bschuchardt@gmail.com>
+sig 3        C7B8A8AD 2016-05-17  Bruce J Schuchardt (Apache signing key) <bschuchardt@gmail.com>
+sub   2048R/CF3D4FD6 2016-05-17 [expires: 2022-05-16]
+sig          C7B8A8AD 2016-05-17  Bruce J Schuchardt (Apache signing key) <bschuchardt@gmail.com>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1
+
+mQENBFc7WDsBCACtmj2wpwU+tuEPEa9xh67MlRH07GgjEmG4lNcvAjRGGnekqW6n
+nfl4Geqz9jqNUbCoYOdTQ7VFS3PZSuG3rLV00Ejb1fTNESgMip+6h5U8gVnwtFjf
+WZbWGNJi1qcyDAkNpSWAJiez/NiAim5wRZYPsX89NTHKN3QR8r3/Ks4O8wihuc9Q
+/SOH2CzrVdZNEUm3dvtlNiqdm29mzFzqWyIerOKzt8JdifDXfV3M6BJlJYnR1tuH
+yDQvZRe61YOddht5LLG0GW8SPIJqNCBpGfFw++dQZlKqaNoOLRt0gsMDCGxy+mG5
+dlnDdI03voCKjeKAA4FZhKAVceYa6AQE0NMPABEBAAG0P0JydWNlIEogU2NodWNo
+YXJkdCAoQXBhY2hlIHNpZ25pbmcga2V5KSA8YnNjaHVjaGFyZHRAZ21haWwuY29t
+PokBPgQTAQIAKAUCVztYOwIbAwUJC0c1AAYLCQgHAwIGFQgCCQoLBBYCAwECHgEC
+F4AACgkQv0BlPce4qK384gf/Sm4AuKcZk5+jBJo+K8UNmK1tayzXtYS/+XTIW0X9
+qWlu8HrUj99OsI5vAM509nDvgGdH2VSp5zXRufhieicrA/j2NSYqHU+ogvs53iSY
+Gyr03YJlVgr1padGgmDpGtQyEtBFRRvkVLTTVoWRWQoe1PAFCPT7XgjQTLIjFEBc
+684O5O98bgss8NWkPJrrxTs/8CUPtzmiUj31jeXMEqnQF/9jjOFDU1RXPSODU064
+IXgIFX8yNk7whrYU6/DaLVzkKGsdTgOkEj3vDqyyL7J4MvLwioG5b0EUdNNr+JJ6
+qklrgN6q3d0lDfVrEZdyofLuI9+jP7P6SwqNrpM36nwENLkBDQRXO1g7AQgAz7K3
+X88CehFUh9hyKlcvF7tAFbS6SIk0bFpejlJz+j7depthHTZYo4rqXYYkVqcvCeT1
+yjpUURRtkBjiaQFKucKs8gIp251EhtjHr3nWRYCD6zNqzySDJ6qtXbpfYUDH+w2b
+urtXt2glBVHiSvt9rUsHSm6bX3FOU9vqF0yaTl0jFBjkbypZvV9HQE/CYKDggb9Q
+WtEDJlCEISiwZJGwpRERMnIO0Qgf6/tMQ8aM6EOAzBk5Nxwkyzvpl+hIFwTOYn6o
+Cw8tsRj6/Lca2iaAwXbS21Aq55ccJT/gV+GEguZXcZC/lpZ27BBGNViFUBXjYAOL
+kIG6CR9qXtZzLy9L7wARAQABiQElBBgBAgAPBQJXO1g7AhsMBQkLRzUAAAoJEL9A
+ZT3HuKitZaYH/j9omUPI96UqjVrcN0pFI38QMi2ViAHClV53kvsUfrfhH3ug6fdM
+XZvv2j3Y1T1A+FW9GY+SuPYwgpYOYFZcUxGGZC+ROJCG0akxyxigzIhnqU5ed4jC
+mOzaqYvx2d24cNFp3Y1bxmImrrjIFRiQaY4RAJ0UWwSBhsQKfkW5iWpmcvdeXAYI
+Gar+SkbQCj9AI/AR9uSr4N9qaQGGZ08fhUbtqqaRsv59Hq2RIYQl0ZzhOrvRQv4+
+2rw5i6WX6JRRv+aH+Iloiz457Ev1i7j0xwtc20s0BqR1JxejJYPA8lPGmpF9y1Vj
+zTSobHHbqgy42ehDcPEEb8HpLTAx16RLvjQ=
+=o8Ov
+-----END PGP PUBLIC KEY BLOCK-----
+pub   4096R/D5CEE5F3 2015-10-09 [expires: 2019-10-09]
+uid       [ultimate] William Markito Oliveira <william.markito@gmail.com>
+sig 3        D5CEE5F3 2015-10-09  William Markito Oliveira <william.markito@gmail.com>
+sig 3        5AE83723 2015-10-09  [User ID not found]
+sub   4096R/AC95A511 2015-10-09 [expires: 2019-10-09]
+sig          D5CEE5F3 2015-10-09  William Markito Oliveira <william.markito@gmail.com>
+
+pub   4096R/7AAED8BB 2016-07-13 [expires: 2020-07-13]
+uid       [ultimate] William Markito Oliveira <markito@apache.org>
+sig 3        7AAED8BB 2016-07-13  William Markito Oliveira <markito@apache.org>
+sig 3        D5CEE5F3 2016-07-13  William Markito Oliveira <william.markito@gmail.com>
+sig          A1688D97 2016-07-13  Dan Smith <upthewaterspout@apache.org>
+sub   4096R/AC6B6B53 2016-07-13 [expires: 2020-07-13]
+sig          7AAED8BB 2016-07-13  William Markito Oliveira <markito@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - https://gpgtools.org
+
+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
+KTkX0Y3d5BoyCQN4gGM=
+=A7qx
+-----END PGP PUBLIC KEY BLOCK-----
+pub   4096R/18F902DB 2016-04-07 [expires: 2020-04-07]
+uid       [ultimate] Swapnil Bawaskar <sbawaskar@apache.org>
+sig 3        18F902DB 2016-04-07  Swapnil Bawaskar <sbawaskar@apache.org>
+sig 3        C1D54701 2016-04-07  Joey McAllister <jmcallister@pivotal.io>
+sig          A966133A 2016-04-07  [User ID not found]
+sig          AEDAEE3D 2016-04-08  [User ID not found]
+sig          A1688D97 2016-04-07  Dan Smith <upthewaterspout@apache.org>
+sig          8B6CF8DD 2016-04-07  [User ID not found]
+sig          48A54F84 2016-04-07  Jianxia Chen <jchen21@apache.org>
+sig 3        ADA2F190 2016-04-07  [User ID not found]
+sig 3        9DBE2177 2016-04-07  Jason Huynh <jasonhuynh@apache.org>
+sig 3        BBBFDF79 2016-04-07  Shelley Lynn Hughes-Godfrey <lhughesgodfrey@pivotal.io>
+sig 3        2C2DF2AE 2016-04-07  [User ID not found]
+sub   4096R/304720E3 2016-04-07 [expires: 2020-04-07]
+sig          18F902DB 2016-04-07  Swapnil Bawaskar <sbawaskar@apache.org>
+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - https://gpgtools.org
+
+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
+=SSEN
+-----END PGP PUBLIC KEY BLOCK-----
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2
+
+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
+A4DF9y+6usA=
+=O5OI
+-----END PGP PUBLIC KEY BLOCK-----

http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index 401f379..cceeb3b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -15,41 +15,64 @@
  * limitations under the License.
  */
 
-buildscript {
-  repositories {
-    maven {
-      url "https://plugins.gradle.org/m2/"
+plugins {
+  id "org.nosphere.apache.rat" version "0.3.0"
+  id "com.diffplug.gradle.spotless" version "3.0.0"
+  id "de.undercouch.download" version "3.1.2"
+}
+
+def downloadFile = "apache-geode-${geodeVersion}.tar.gz"
+def installFile = "$buildDir/$downloadFile"
+def installDir = "$buildDir/apache-geode-${geodeVersion}"
+
+task downloadGeode {
+  inputs.property 'geodeVersion', geodeVersion
+  outputs.file installFile
+  outputs.file "${installFile}.sha256"
+
+  doLast {
+    download {
+      src([
+        "https://www.apache.org/dyn/closer.cgi?action=download&filename=geode/$geodeVersion/$downloadFile",
+        "https://www.apache.org/dist/geode/$geodeVersion/${downloadFile}.sha256"
+      ])
+      dest buildDir
     }
   }
-  dependencies {
-    classpath "com.diffplug.gradle.spotless:spotless:2.4.1"
+}
+
+task verifyGeode(type: de.undercouch.gradle.tasks.download.Verify, dependsOn: downloadGeode) {
+  src installFile
+  algorithm "SHA-256"
+  doFirst { 
+    checksum file("${installFile}.sha256").text.split(' ')[0]
   }
 }
 
-plugins {
-  id "org.nosphere.apache.rat" version "0.3.0"
+task installGeode(type: Copy, dependsOn: verifyGeode) {
+  inputs.file installFile
+  outputs.dir installDir
+
+  from tarTree(resources.gzip(installFile))
+  into buildDir
 }
 
 subprojects {
-
     apply plugin:'java'
 
     repositories {
-        mavenLocal()
-        maven {
-            url "https://repository.apache.org/content/repositories/snapshots/"
-        }
         mavenCentral()
     }
 
     dependencies {
-        testCompile project(":utils")
         compile "org.apache.geode:geode-core:$geodeVersion"
-        testCompile "junit:junit:$junitVersion"
-        testCompile "org.mockito:mockito-core:$mockitocoreVersion"
         compile "org.apache.commons:commons-exec:$commonsExecVersion"
-        compile "com.jayway.awaitility:awaitility:$awaitilityVersion"
         runtime "org.slf4j:slf4j-log4j12:$slf4jVersion"
+
+        testCompile "com.jayway.awaitility:awaitility:$awaitilityVersion"
+        testCompile project(":utils")
+        testCompile "junit:junit:$junitVersion"
+        testCompile "org.mockito:mockito-core:$mockitocoreVersion"
     }
 
     task run(type: JavaExec) {
@@ -64,10 +87,9 @@ subprojects {
         }
     }
 
+    test.dependsOn installGeode
     test {
-	def geodeHome = System.getenv('GEODE_HOME');
-	geodeHome = geodeHome != null ? geodeHome : file('../../geode-assembly/build/install/apache-geode/').absolutePath
-	environment 'GEODE_HOME': geodeHome
+	environment 'GEODE_HOME': "$rootProject.buildDir/apache-geode-$geodeVersion"
     }
 
     apply plugin: "com.diffplug.gradle.spotless"
@@ -80,9 +102,7 @@ subprojects {
 	    eclipseFormatFile "${rootProject.projectDir}/etc/eclipse-java-google-style.xml"
 	}
     }
-
 }
 
 apply from: "gradle/rat.gradle"
-
-
+apply from: "gradle/release.gradle"

http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/buildSrc/src/main/groovy/org/apache/geode/gradle/PasswordDialog.groovy
----------------------------------------------------------------------
diff --git a/buildSrc/src/main/groovy/org/apache/geode/gradle/PasswordDialog.groovy b/buildSrc/src/main/groovy/org/apache/geode/gradle/PasswordDialog.groovy
new file mode 100644
index 0000000..bcd2243
--- /dev/null
+++ b/buildSrc/src/main/groovy/org/apache/geode/gradle/PasswordDialog.groovy
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import groovy.swing.SwingBuilder
+class PasswordDialog {
+  static String askPassword(String prompt) {
+    def password = ''
+    new SwingBuilder().edt {
+    dialog(modal: true, 
+        title: 'Password',
+        alwaysOnTop: true, 
+        locationRelativeTo: null,
+        pack: true, 
+        show: true
+    ) {
+      vbox { 
+        label(text: prompt)
+        input = passwordField()
+        button(defaultButton: true, text: 'OK', actionPerformed: {
+          password = input.password.toString(); // Set pass variable to value of input field
+          dispose(); // Close dialog
+        })
+      }
+      }
+    }
+    return password
+  }
+}

http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/gradle.properties
----------------------------------------------------------------------
diff --git a/gradle.properties b/gradle.properties
index fc5ffd9..d28c733 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -14,6 +14,8 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #
+version = 0.1.0-SNAPSHOT
+
 geodeVersion = 1.0.0-incubating
 junitVersion = 4.12
 mockitocoreVersion = 1.10.19

http://git-wip-us.apache.org/repos/asf/geode-examples/blob/feb70fd5/gradle/release.gradle
----------------------------------------------------------------------
diff --git a/gradle/release.gradle b/gradle/release.gradle
new file mode 100644
index 0000000..7f59c81
--- /dev/null
+++ b/gradle/release.gradle
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+apply plugin:'distribution'
+apply plugin: 'signing'
+
+gradle.taskGraph.whenReady( { graph ->
+  tasks.withType(Tar).each { tar ->
+    tar.compression = Compression.GZIP
+    tar.extension = 'tar.gz'
+  }
+})
+
+gradle.taskGraph.whenReady( { graph ->
+  tasks.withType(AbstractArchiveTask).findAll {
+    it.name.toLowerCase().contains("dist")
+  }.each { archive ->
+    archive.doLast {
+      ant.checksum file:"${archive.archivePath}", algorithm:"md5"
+      ant.checksum file:"${archive.archivePath}", algorithm:"sha-256", fileext:".sha256"
+      signing {
+        required { !version.endsWith("SNAPSHOT") }
+        sign archive.archivePath
+      }
+    }
+  }
+})
+
+gradle.taskGraph.whenReady { taskGraph ->
+  if (!version.endsWith('SNAPSHOT')) {
+    if(!project.hasProperty('signing.keyId') || !project.hasProperty('signing.secretKeyRingFile')) {
+      println "You must configure your signing.keyId and signing.secretKeyRingFile"
+      println "in ~/.gradle/gradle.properties in order to sign jars\n"
+      println "See https://cwiki.apache.org/confluence/display/GEODE/Release+Steps"
+      throw new GradleException("Signing key/keyring is missing")
+    }
+
+    if(!project.hasProperty('signing.password')) {
+      def password = PasswordDialog.askPassword("Please enter your password to unlock your gpg keyring for signing artifacts")
+      ext.'signing.password' = password
+    }
+  }
+}
+
+distributions {
+  main {
+    contents {
+      from (rootDir) {
+        exclude 'KEYS'
+        exclude '**/.gradle'
+        exclude '**/build/**'
+        exclude '**/.project'
+        exclude '**/.classpath'
+        exclude '**/.settings/**'
+        exclude '**/build-eclipse/**'
+        exclude '**/.idea/**'
+        exclude '**/*.iml'
+        exclude '**/*.ipr'
+        exclude '**/*.iws'
+        exclude '**/.travis.yml'
+        exclude '**/tags'
+        
+        //These directories are generated on the jenkins server by gradle
+        exclude 'caches'
+        exclude 'daemon'
+        exclude 'native'
+        exclude 'wrapper'
+      }
+    }
+  }
+}


Mime
View raw message