| /* |
| * 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:"sha-256", format: 'MD5SUM', fileext:".sha256" |
| signing { |
| required { project.hasProperty("signArchives") } |
| sign archive.archivePath |
| } |
| } |
| } |
| }) |
| |
| gradle.taskGraph.whenReady { taskGraph -> |
| if (project.hasProperty('signArchives')) { |
| 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 { |
| baseName = 'apache-' + baseName |
| 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' |
| } |
| } |
| } |
| } |