DRILL-1229: Integration with 'apache-release' profile
Project: http://git-wip-us.apache.org/repos/asf/incubator-drill/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-drill/commit/714447af Tree: http://git-wip-us.apache.org/repos/asf/incubator-drill/tree/714447af Diff: http://git-wip-us.apache.org/repos/asf/incubator-drill/diff/714447af Branch: refs/heads/master Commit: 714447af0ed0196112b44057731fe71984af7318 Parents: 4243859 Author: Aditya Kishore <[email protected]> Authored: Wed Jul 30 14:52:04 2014 -0700 Committer: Jacques Nadeau <[email protected]> Committed: Wed Jul 30 18:06:40 2014 -0700 ---------------------------------------------------------------------- distribution/pom.xml | 37 +------- pom.xml | 76 ++--------------- src/assembly/source-assembly.xml | 90 -------------------- .../resources/assemblies/source-assembly.xml | 90 ++++++++++++++++++++ 4 files changed, 99 insertions(+), 194 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/714447af/distribution/pom.xml ---------------------------------------------------------------------- diff --git a/distribution/pom.xml b/distribution/pom.xml index 73670a6..bc05345 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -104,7 +104,6 @@ <plugin> <artifactId>maven-assembly-plugin</artifactId> - <version>2.4</version> <executions> <execution> <id>distro-assembly</id> @@ -116,6 +115,7 @@ <descriptors> <descriptor>src/assemble/bin.xml</descriptor> </descriptors> + <appendAssemblyId>false</appendAssemblyId> <finalName>apache-drill-${project.version}</finalName> <tarLongFileMode>gnu</tarLongFileMode> </configuration> @@ -128,41 +128,6 @@ <profiles> - <!-- START SNIPPET: release-profile --> - <profile> - <id>drill-release</id> - <build> - <plugins> - <!-- We want to deploy the artifact to a staging location for perusal --> - <plugin> - <inherited>true</inherited> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-deploy-plugin</artifactId> - <configuration> - <updateReleaseInfo>true</updateReleaseInfo> - </configuration> - </plugin> - <!-- We want to sign the artifact, the POM, and all attached artifacts --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-gpg-plugin</artifactId> - <configuration> - <passphrase>${gpg.passphrase}</passphrase> - <useAgent>${gpg.useagent}</useAgent> - </configuration> - <executions> - <execution> - <goals> - <goal>sign</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> - <!-- END SNIPPET: release-profile --> - <profile> <id>rpm</id> <build> http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/714447af/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 8d50c03..2b6b229 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ <parent> <groupId>org.apache</groupId> <artifactId>apache</artifactId> - <version>13</version> + <version>14</version> </parent> <groupId>org.apache.drill</groupId> @@ -304,7 +304,7 @@ <useReleaseProfile>false</useReleaseProfile> <pushChanges>false</pushChanges> <goals>deploy</goals> - <arguments>-Pdrill-release ${arguments}</arguments> + <arguments>-Papache-release ${arguments}</arguments> </configuration> </plugin> @@ -463,9 +463,8 @@ <profiles> <profile> - <!-- this is heavily borrowed from the apache-root pom but updated - so we don't have some of the issues it has. --> - <id>drill-release</id> + <!-- this profile adds/overrides few features of the 'apache-release' profile in the parent pom. --> + <id>apache-release</id> <build> <plugins> <plugin> @@ -487,19 +486,9 @@ <failOnError>false</failOnError> </configuration> </plugin> - - <!-- Create a source-release artifact that contains the fully buildable - project directory source structure. This is the artifact which is the official - subject of any release vote. --> + <!-- override the parent assembly execution to customize the assembly descriptor and final name --> <plugin> <artifactId>maven-assembly-plugin</artifactId> - <dependencies> - <dependency> - <groupId>org.apache.apache.resources</groupId> - <artifactId>apache-source-release-assembly-descriptor</artifactId> - <version>1.0.4</version> - </dependency> - </dependencies> <executions> <execution> <id>source-release-assembly</id> @@ -509,63 +498,14 @@ </goals> <configuration> <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot> - <descriptor>src/assembly/source-assembly.xml</descriptor> - <finalName>apache-drill-${project.version}</finalName> + <appendAssemblyId>false</appendAssemblyId> + <descriptor>src/main/resources/assemblies/source-assembly.xml</descriptor> + <finalName>apache-drill-${project.version}-src</finalName> <tarLongFileMode>gnu</tarLongFileMode> </configuration> </execution> </executions> </plugin> - <!-- We want to deploy the artifact to a staging location for perusal --> - <plugin> - <inherited>true</inherited> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-deploy-plugin</artifactId> - <configuration> - <updateReleaseInfo>true</updateReleaseInfo> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-source-plugin</artifactId> - <executions> - <execution> - <id>attach-sources</id> - <phase>verify</phase> - <goals> - <goal>jar</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-javadoc-plugin</artifactId> - <executions> - <execution> - <id>attach-javadocs</id> - <goals> - <goal>jar</goal> - </goals> - </execution> - </executions> - </plugin> - <!-- We want to sign the artifact, the POM, and all attached artifacts --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-gpg-plugin</artifactId> - <configuration> - <passphrase>${gpg.passphrase}</passphrase> - <useAgent>${gpg.useagent}</useAgent> - </configuration> - <executions> - <execution> - <goals> - <goal>sign</goal> - </goals> - </execution> - </executions> - </plugin> </plugins> </build> </profile> http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/714447af/src/assembly/source-assembly.xml ---------------------------------------------------------------------- diff --git a/src/assembly/source-assembly.xml b/src/assembly/source-assembly.xml deleted file mode 100644 index 5918783..0000000 --- a/src/assembly/source-assembly.xml +++ /dev/null @@ -1,90 +0,0 @@ -<?xml version='1.0' encoding='UTF-8'?> -<!-- 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. --> -<assembly> - <id>source-release</id> - <formats> - <format>zip</format> - <format>tar.gz</format> - </formats> - <fileSets> - <!-- main project directory structure --> - <fileSet> - <directory>.</directory> - <outputDirectory>/</outputDirectory> - <useDefaultExcludes>true</useDefaultExcludes> - <excludes> - <!-- build output --> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*] - </exclude> - - <!-- NOTE: Most of the following excludes should not be required - if the standard release process is followed. This is because the release - plugin checks out project sources into a location like target/checkout, then - runs the build from there. The result is a source-release archive that comes - from a pretty clean directory structure. HOWEVER, if the release plugin is - configured to run extra goals or generate a project website, it's definitely - possible that some of these files will be present. So, it's safer to exclude - them. --> - - <!-- IDEs --> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.idea(/.*)?] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?out(/.*)?] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?] - </exclude> - - - <!-- scm --> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.gitignore(/.*)?] - </exclude> - - <exclude>**/.buildpath</exclude> - <exclude>**/sandbox/**</exclude> - - <!-- misc --> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser] - </exclude> - - <!-- release-plugin temp files --> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup] - </exclude> - <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties] - </exclude> - </excludes> - </fileSet> - <!-- license, readme, etc. calculated at build time --> - <fileSet> - <directory>${project.build.directory}/maven-shared-archive-resources/META-INF - </directory> - <outputDirectory>/</outputDirectory> - </fileSet> - </fileSets> -</assembly> http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/714447af/src/main/resources/assemblies/source-assembly.xml ---------------------------------------------------------------------- diff --git a/src/main/resources/assemblies/source-assembly.xml b/src/main/resources/assemblies/source-assembly.xml new file mode 100644 index 0000000..5918783 --- /dev/null +++ b/src/main/resources/assemblies/source-assembly.xml @@ -0,0 +1,90 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!-- 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. --> +<assembly> + <id>source-release</id> + <formats> + <format>zip</format> + <format>tar.gz</format> + </formats> + <fileSets> + <!-- main project directory structure --> + <fileSet> + <directory>.</directory> + <outputDirectory>/</outputDirectory> + <useDefaultExcludes>true</useDefaultExcludes> + <excludes> + <!-- build output --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*] + </exclude> + + <!-- NOTE: Most of the following excludes should not be required + if the standard release process is followed. This is because the release + plugin checks out project sources into a location like target/checkout, then + runs the build from there. The result is a source-release archive that comes + from a pretty clean directory structure. HOWEVER, if the release plugin is + configured to run extra goals or generate a project website, it's definitely + possible that some of these files will be present. So, it's safer to exclude + them. --> + + <!-- IDEs --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.idea(/.*)?] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?out(/.*)?] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?] + </exclude> + + + <!-- scm --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.gitignore(/.*)?] + </exclude> + + <exclude>**/.buildpath</exclude> + <exclude>**/sandbox/**</exclude> + + <!-- misc --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser] + </exclude> + + <!-- release-plugin temp files --> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup] + </exclude> + <exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties] + </exclude> + </excludes> + </fileSet> + <!-- license, readme, etc. calculated at build time --> + <fileSet> + <directory>${project.build.directory}/maven-shared-archive-resources/META-INF + </directory> + <outputDirectory>/</outputDirectory> + </fileSet> + </fileSets> +</assembly>
