From c3fa607d795f16bab325c6a9a036319bdaa3bda7 Mon Sep 17 00:00:00 2001 From: Luqman Saeed Date: Fri, 14 Jun 2024 16:04:42 +0000 Subject: [PATCH 1/4] FISH-8825 add add Upload goal --- .../maven/plugins/cloud/UploadMojo.java | 78 +++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java diff --git a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java new file mode 100644 index 00000000..ad1a3732 --- /dev/null +++ b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2024 Payara Foundation and/or its affiliates. All rights reserved. + * + * The contents of this file are subject to the terms of either the GNU + * General Public License Version 2 only ("GPL") or the Common Development + * and Distribution License("CDDL") (collectively, the "License"). You + * may not use this file except in compliance with the License. You can + * obtain a copy of the License at + * https://github.com/payara/Payara/blob/master/LICENSE.txt + * See the License for the specific + * language governing permissions and limitations under the License. + * + * When distributing the software, include this License Header Notice in each + * file and include the License file at glassfish/legal/LICENSE.txt. + * + * GPL Classpath Exception: + * The Payara Foundation designates this particular file as subject to the "Classpath" + * exception as provided by the Payara Foundation in the GPL Version 2 section of the License + * file that accompanied this code. + * + * Modifications: + * If applicable, add the following below the License Header, with the fields + * enclosed by brackets [] replaced by your own identifying information: + * "Portions Copyright [year] [name of copyright owner]" + * + * Contributor(s): + * If you wish your version of this file to be governed by only the CDDL or + * only the GPL Version 2, indicate your decision by adding "[Contributor] + * elects to include this software in this distribution under the [CDDL or GPL + * Version 2] license." If you don't indicate a single choice of license, a + * recipient has the option to distribute your version of this file under + * either the CDDL, the GPL Version 2 or to extend the choice of license to + * its licensees as provided above. However, if you add GPL Version 2 code + * and therefore, elected the GPL Version 2 license, then the option applies + * only if the new code is made subject to such option by the copyright + * holder. + */ +package fish.payara.maven.plugins.cloud; + +import fish.payara.tools.cloud.ApplicationContext; +import fish.payara.tools.cloud.DeployApplication; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugins.annotations.Mojo; +import org.apache.maven.plugins.annotations.Parameter; + +import java.io.File; + +/** + * @author Gaurav Gupta + */ +@Mojo(name = "upload") +public class UploadMojo extends BasePayaraMojo { + + + @Parameter(defaultValue = "${project.build.directory}/${project.build.finalName}.war", property = "applicationPath", required = true) + protected File applicationPath; + + + protected ApplicationContext context; + + @Override + public void execute() throws MojoExecutionException { + if (context == null) { + context = getApplicationContextBuilder().build(); + } + try { + if (skip) { + getLog().info("Upload mojo execution is skipped"); + return; + } + DeployApplication controller = new DeployApplication(context, applicationPath, false); + controller.call(); + }catch (Exception ex) { + context.getOutput().error(ex.toString(), ex); + } + } + +} From 69b4766b59a7cebf5fec7e614085d98d2121b55f Mon Sep 17 00:00:00 2001 From: Luqman Saeed Date: Wed, 19 Jun 2024 16:13:10 +0000 Subject: [PATCH 2/4] fish-8825 use UploadApplication --- .gitignore | 1 + .../main/java/fish/payara/maven/plugins/cloud/UploadMojo.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index f214db16..f5c018eb 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ hs_err_pid* # VS Code / Eclipse artefacts .settings/ .vscode/ +.idea/ .classpath .factorypath .project diff --git a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java index ad1a3732..1a34536d 100644 --- a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java +++ b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java @@ -39,6 +39,7 @@ import fish.payara.tools.cloud.ApplicationContext; import fish.payara.tools.cloud.DeployApplication; +import fish.payara.tools.cloud.UploadApplication; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; @@ -68,7 +69,7 @@ public void execute() throws MojoExecutionException { getLog().info("Upload mojo execution is skipped"); return; } - DeployApplication controller = new DeployApplication(context, applicationPath, false); + UploadApplication controller = new UploadApplication(context, applicationPath, false); controller.call(); }catch (Exception ex) { context.getOutput().error(ex.toString(), ex); From 393935c37376aa613fa9ff521be09855eb4b8416 Mon Sep 17 00:00:00 2001 From: Luqman Saeed Date: Wed, 19 Jun 2024 19:14:59 +0000 Subject: [PATCH 3/4] fish-8825 external deploy flag for upload mojo --- .../main/java/fish/payara/maven/plugins/cloud/UploadMojo.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java index 1a34536d..7a06f2bc 100644 --- a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java +++ b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java @@ -56,6 +56,8 @@ public class UploadMojo extends BasePayaraMojo { @Parameter(defaultValue = "${project.build.directory}/${project.build.finalName}.war", property = "applicationPath", required = true) protected File applicationPath; + @Parameter(property = "deploy", defaultValue = "false") + protected Boolean deploy; protected ApplicationContext context; @@ -69,7 +71,7 @@ public void execute() throws MojoExecutionException { getLog().info("Upload mojo execution is skipped"); return; } - UploadApplication controller = new UploadApplication(context, applicationPath, false); + UploadApplication controller = new UploadApplication(context, applicationPath, deploy == null || deploy); controller.call(); }catch (Exception ex) { context.getOutput().error(ex.toString(), ex); From 4ba83a8b9c7b6296f41c8ddd9f57eb1a033a2db1 Mon Sep 17 00:00:00 2001 From: Luqman Saeed Date: Wed, 19 Jun 2024 19:15:30 +0000 Subject: [PATCH 4/4] fish-8825 external deploy flag for upload mojo --- .../main/java/fish/payara/maven/plugins/cloud/UploadMojo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java index 7a06f2bc..28992563 100644 --- a/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java +++ b/payara-cloud-maven-plugin/src/main/java/fish/payara/maven/plugins/cloud/UploadMojo.java @@ -71,7 +71,7 @@ public void execute() throws MojoExecutionException { getLog().info("Upload mojo execution is skipped"); return; } - UploadApplication controller = new UploadApplication(context, applicationPath, deploy == null || deploy); + UploadApplication controller = new UploadApplication(context, applicationPath, deploy); controller.call(); }catch (Exception ex) { context.getOutput().error(ex.toString(), ex);