lucene/gradle/maven/signing.gradle

39 lines
1.6 KiB
Groovy

/*
* 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.
*/
// Optionally, switch to using an external GPG command, using it's configured gpg-agent for key management
if (propertyOrDefault("useGpg", null) != null) {
// Do this check before 'useGpgCmd()' (and once), otherwise gradle will fail with a confusing error about 'signatory.keyId'
//
// 'signatory.keyId' is an implementation detail of the SigningPlugin that it populates from 'signing.gnupg.keyName' when useGpgCmd()
// is used -- but does not explain in the error produced if 'signing.gnupg.keyName' is not set.
def propName = 'signing.gnupg.keyName'
if (propertyOrDefault(propName, null) == null) {
throw new GradleException("'$propName' property must be set when using external GPG via 'useGpg', please see help/publishing.txt")
}
rootProject.allprojects {
plugins.withType(SigningPlugin) {
signing {
useGpgCmd()
}
}
}
}