You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ch...@apache.org on 2018/01/07 18:21:48 UTC
[04/26] commons-release-plugin git commit: Detatch tar.gz/zip related
artifacts from deployment
Detatch tar.gz/zip related artifacts from deployment
Project: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/commit/f0c5441e
Tree: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/tree/f0c5441e
Diff: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/diff/f0c5441e
Branch: refs/heads/master
Commit: f0c5441e4240478fea6500c0ef2dc95b86fe9ec5
Parents: 9f86ea7
Author: Rob Tompkins <ch...@gmail.com>
Authored: Sat Dec 23 14:04:03 2017 -0500
Committer: Rob Tompkins <ch...@gmail.com>
Committed: Sat Dec 23 14:04:03 2017 -0500
----------------------------------------------------------------------
pom.xml | 5 ++
src/it/settings.xml | 77 ++++++++++++++++++++
.../mojos/AbstractCommonsBuildPluginMojo.java | 28 -------
.../plugin/mojos/CommonsBuildPluginMojo.java | 32 --------
.../build/plugin/mojos/package-info.java | 17 -----
.../commons/build/plugin/package-info.java | 17 -----
.../mojos/AbstractCommonsReleasePluginMojo.java | 28 +++++++
.../plugin/mojos/CommonsReleasePluginMojo.java | 68 +++++++++++++++++
.../release/plugin/mojos/package-info.java | 17 +++++
.../commons/release/plugin/package-info.java | 17 +++++
src/test-project/pom.xml | 56 --------------
.../commons/build/plugin/package-info.java | 17 -----
.../commons/release/plugin/package-info.java | 17 +++++
13 files changed, 229 insertions(+), 167 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0a25031..6e01876 100644
--- a/pom.xml
+++ b/pom.xml
@@ -91,6 +91,11 @@
<artifactId>maven-plugin-annotations</artifactId>
<version>3.5</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-project</artifactId>
+ <version>2.2.1</version>
+ </dependency>
</dependencies>
<build>
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/it/settings.xml
----------------------------------------------------------------------
diff --git a/src/it/settings.xml b/src/it/settings.xml
new file mode 100644
index 0000000..8912a7c
--- /dev/null
+++ b/src/it/settings.xml
@@ -0,0 +1,77 @@
+<?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.
+-->
+
+<settings>
+ <profiles>
+ <profile>
+ <id>it-repo</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <repositories>
+ <repository>
+ <id>local.central</id>
+ <url>@localRepositoryUrl@</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ <repository>
+ <id>apache.snapshot</id>
+ <url>https://repository.apache.org/content/groups/snapshots-group/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>local.central</id>
+ <url>@localRepositoryUrl@</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ </profiles>
+ <mirrors>
+ <mirror>
+ <id>local-tlc</id>
+ <mirrorOf>tlc</mirrorOf>
+ <url>@localRepositoryUrl@</url>
+ </mirror>
+ <mirror>
+ <id>apache-plugin-snapshots-new</id>
+ <mirrorOf>apache-plugin-snapshots</mirrorOf>
+ <url>https://repository.apache.org/content/groups/snapshots-group/</url>
+ </mirror>
+ </mirrors>
+</settings>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/build/plugin/mojos/AbstractCommonsBuildPluginMojo.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/build/plugin/mojos/AbstractCommonsBuildPluginMojo.java b/src/main/java/org/apache/commons/build/plugin/mojos/AbstractCommonsBuildPluginMojo.java
deleted file mode 100644
index ad26d7c..0000000
--- a/src/main/java/org/apache/commons/build/plugin/mojos/AbstractCommonsBuildPluginMojo.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * 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.
- */
-package org.apache.commons.build.plugin.mojos;
-
-import org.apache.maven.plugin.AbstractMojo;
-
-/**
- * Contains the logging mechanics for the commons-build-plugin.
- *
- * @author chtompki
- * @since 1.0
- */
-public abstract class AbstractCommonsBuildPluginMojo extends AbstractMojo {
-}
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/build/plugin/mojos/CommonsBuildPluginMojo.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/build/plugin/mojos/CommonsBuildPluginMojo.java b/src/main/java/org/apache/commons/build/plugin/mojos/CommonsBuildPluginMojo.java
deleted file mode 100644
index ae75b57..0000000
--- a/src/main/java/org/apache/commons/build/plugin/mojos/CommonsBuildPluginMojo.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * 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.
- */
-package org.apache.commons.build.plugin.mojos;
-
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugins.annotations.Mojo;
-
-/**
- * @author chtompki
- * @since 1.0
- */
-@Mojo( name = "test", threadSafe = true )
-public class CommonsBuildPluginMojo extends AbstractMojo {
-
- public void execute() {
- getLog().info("Hello World");
- }
-}
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/build/plugin/mojos/package-info.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/build/plugin/mojos/package-info.java b/src/main/java/org/apache/commons/build/plugin/mojos/package-info.java
deleted file mode 100644
index 2f50937..0000000
--- a/src/main/java/org/apache/commons/build/plugin/mojos/package-info.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * 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.
- */
-package org.apache.commons.build.plugin.mojos;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/build/plugin/package-info.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/build/plugin/package-info.java b/src/main/java/org/apache/commons/build/plugin/package-info.java
deleted file mode 100644
index b3a065a..0000000
--- a/src/main/java/org/apache/commons/build/plugin/package-info.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * 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.
- */
-package org.apache.commons.build.plugin;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/release/plugin/mojos/AbstractCommonsReleasePluginMojo.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/release/plugin/mojos/AbstractCommonsReleasePluginMojo.java b/src/main/java/org/apache/commons/release/plugin/mojos/AbstractCommonsReleasePluginMojo.java
new file mode 100644
index 0000000..7e78368
--- /dev/null
+++ b/src/main/java/org/apache/commons/release/plugin/mojos/AbstractCommonsReleasePluginMojo.java
@@ -0,0 +1,28 @@
+/*
+ * 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.
+ */
+package org.apache.commons.release.plugin.mojos;
+
+import org.apache.maven.plugin.AbstractMojo;
+
+/**
+ * Contains the logging mechanics for the commons-release-plugin.
+ *
+ * @author chtompki
+ * @since 1.0
+ */
+public abstract class AbstractCommonsReleasePluginMojo extends AbstractMojo {
+}
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/release/plugin/mojos/CommonsReleasePluginMojo.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/release/plugin/mojos/CommonsReleasePluginMojo.java b/src/main/java/org/apache/commons/release/plugin/mojos/CommonsReleasePluginMojo.java
new file mode 100644
index 0000000..bc45bc1
--- /dev/null
+++ b/src/main/java/org/apache/commons/release/plugin/mojos/CommonsReleasePluginMojo.java
@@ -0,0 +1,68 @@
+/*
+ * 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.
+ */
+package org.apache.commons.release.plugin.mojos;
+
+import edu.emory.mathcs.backport.java.util.Collections;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugins.annotations.LifecyclePhase;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.artifact.AttachedArtifact;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * @author chtompki
+ * @since 1.0
+ *
+ * , defaultPhase = LifecyclePhase.
+ */
+@Mojo( name = "test", defaultPhase = LifecyclePhase.VERIFY, threadSafe = true)
+public class CommonsReleasePluginMojo extends AbstractMojo {
+
+ private static final Set<String> ARTIFACT_TYPES_TO_DETATCH;
+ static {
+ Set<String> hashSet = new HashSet<>();
+ hashSet.add("zip");
+ hashSet.add("tar.gz");
+ hashSet.add("zip.asc");
+ hashSet.add("tar.gz.asc");
+ ARTIFACT_TYPES_TO_DETATCH = Collections.unmodifiableSet(hashSet);
+ }
+
+ private List<AttachedArtifact> detatchedArtifacts = new ArrayList<>();
+
+ @Parameter( defaultValue = "${project}", required = true )
+ private MavenProject project;
+
+ public void execute() {
+ getLog().info("Detatching Assemblies");
+ for (Object attachedArtifact : project.getAttachedArtifacts()) {
+ if (ARTIFACT_TYPES_TO_DETATCH.contains(((AttachedArtifact) attachedArtifact).getType())) {
+ detatchedArtifacts.add((AttachedArtifact) attachedArtifact);
+ }
+ }
+ for(AttachedArtifact artifactToRemove : detatchedArtifacts) {
+ project.getAttachedArtifacts().remove(artifactToRemove);
+ }
+ getLog().info("");
+ }
+}
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/release/plugin/mojos/package-info.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/release/plugin/mojos/package-info.java b/src/main/java/org/apache/commons/release/plugin/mojos/package-info.java
new file mode 100644
index 0000000..32828f0
--- /dev/null
+++ b/src/main/java/org/apache/commons/release/plugin/mojos/package-info.java
@@ -0,0 +1,17 @@
+/*
+ * 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.
+ */
+package org.apache.commons.release.plugin.mojos;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/main/java/org/apache/commons/release/plugin/package-info.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/release/plugin/package-info.java b/src/main/java/org/apache/commons/release/plugin/package-info.java
new file mode 100644
index 0000000..4852740
--- /dev/null
+++ b/src/main/java/org/apache/commons/release/plugin/package-info.java
@@ -0,0 +1,17 @@
+/*
+ * 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.
+ */
+package org.apache.commons.release.plugin;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/test-project/pom.xml
----------------------------------------------------------------------
diff --git a/src/test-project/pom.xml b/src/test-project/pom.xml
deleted file mode 100644
index a02076f..0000000
--- a/src/test-project/pom.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- 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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.apache.commons</groupId>
- <artifactId>test-project</artifactId>
- <version>1.3</version>
- <name>Test Project</name>
- <description>
- Commons Build Plugin Test Project.
- </description>
-
- <url>http://commons.apache.org/commons-build-plugin/</url>
-
- <issueManagement>
- <system>jira</system>
- <url>http://issues.apache.org/jira/browse/COMMONSSITE</url>
- </issueManagement>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-build-plugin</artifactId>
- <version>1.3</version>
- <configuration>
- <commons.release.name>${project.artifactId}-${commons.release.version}</commons.release.name>
- <commons.jira.id>COMMONSSITE</commons.jira.id>
- <commons.jira.pid>12310466</commons.jira.pid>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <properties>
- <commons.binary.suffix>-bin</commons.binary.suffix>
- <commons.release.version>1.0</commons.release.version>
- <commons.componentid>${project.artifactId}</commons.componentid>
- </properties>
-
-</project>
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/test/java/org/apache/commons/build/plugin/package-info.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/build/plugin/package-info.java b/src/test/java/org/apache/commons/build/plugin/package-info.java
deleted file mode 100644
index b3a065a..0000000
--- a/src/test/java/org/apache/commons/build/plugin/package-info.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * 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.
- */
-package org.apache.commons.build.plugin;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/f0c5441e/src/test/java/org/apache/commons/release/plugin/package-info.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/release/plugin/package-info.java b/src/test/java/org/apache/commons/release/plugin/package-info.java
new file mode 100644
index 0000000..4852740
--- /dev/null
+++ b/src/test/java/org/apache/commons/release/plugin/package-info.java
@@ -0,0 +1,17 @@
+/*
+ * 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.
+ */
+package org.apache.commons.release.plugin;
\ No newline at end of file