summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--hosted-api/src/main/java/ai/vespa/hosted/api/ControllerHttpClient.java1
-rw-r--r--hosted-api/src/main/java/ai/vespa/hosted/api/Submission.java6
-rw-r--r--vespa-maven-plugin/src/main/java/ai/vespa/hosted/plugin/SubmitMojo.java13
3 files changed, 12 insertions, 8 deletions
diff --git a/hosted-api/src/main/java/ai/vespa/hosted/api/ControllerHttpClient.java b/hosted-api/src/main/java/ai/vespa/hosted/api/ControllerHttpClient.java
index fe8ad66dcb7..f561e2766c7 100644
--- a/hosted-api/src/main/java/ai/vespa/hosted/api/ControllerHttpClient.java
+++ b/hosted-api/src/main/java/ai/vespa/hosted/api/ControllerHttpClient.java
@@ -185,6 +185,7 @@ public abstract class ControllerHttpClient {
rootObject.setString("branch", submission.branch());
rootObject.setString("commit", submission.commit());
rootObject.setString("authorEmail", submission.authorEmail());
+ submission.projectId().ifPresent(projectId -> rootObject.setLong("projectId", projectId));
return toJson(slime);
}
diff --git a/hosted-api/src/main/java/ai/vespa/hosted/api/Submission.java b/hosted-api/src/main/java/ai/vespa/hosted/api/Submission.java
index f781c942fc9..8205e8a1b9b 100644
--- a/hosted-api/src/main/java/ai/vespa/hosted/api/Submission.java
+++ b/hosted-api/src/main/java/ai/vespa/hosted/api/Submission.java
@@ -4,6 +4,7 @@ package ai.vespa.hosted.api;
import java.io.File;
import java.io.InputStream;
import java.nio.file.Path;
+import java.util.OptionalLong;
/**
* A submission intended for hosted Vespa, containing an application package with tests, and meta data.
@@ -18,14 +19,16 @@ public class Submission {
private final String authorEmail;
private final Path applicationZip;
private final Path applicationTestZip;
+ private final OptionalLong projectId;
- public Submission(String repository, String branch, String commit, String authorEmail, Path applicationZip, Path applicationTestZip) {
+ public Submission(String repository, String branch, String commit, String authorEmail, Path applicationZip, Path applicationTestZip, OptionalLong projectId) {
this.repository = repository;
this.branch = branch;
this.commit = commit;
this.authorEmail = authorEmail;
this.applicationZip = applicationZip;
this.applicationTestZip = applicationTestZip;
+ this.projectId = projectId;
}
public String repository() { return repository; }
@@ -34,5 +37,6 @@ public class Submission {
public String authorEmail() { return authorEmail; }
public Path applicationZip() { return applicationZip; }
public Path applicationTestZip() { return applicationTestZip; }
+ public OptionalLong projectId() { return projectId; }
}
diff --git a/vespa-maven-plugin/src/main/java/ai/vespa/hosted/plugin/SubmitMojo.java b/vespa-maven-plugin/src/main/java/ai/vespa/hosted/plugin/SubmitMojo.java
index 9bebe3c32cd..eda9ea9b799 100644
--- a/vespa-maven-plugin/src/main/java/ai/vespa/hosted/plugin/SubmitMojo.java
+++ b/vespa-maven-plugin/src/main/java/ai/vespa/hosted/plugin/SubmitMojo.java
@@ -1,17 +1,12 @@
// Copyright 2019 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package ai.vespa.hosted.plugin;
-import ai.vespa.hosted.api.ControllerHttpClient;
import ai.vespa.hosted.api.Submission;
-import com.yahoo.config.provision.ApplicationId;
-import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.MavenProject;
-import java.net.URI;
-import java.nio.file.Path;
import java.nio.file.Paths;
+import java.util.OptionalLong;
/**
* Submits a Vespa application package and corresponding test jars to the hosted Vespa API.
@@ -39,13 +34,17 @@ public class SubmitMojo extends AbstractVespaMojo {
@Parameter(property = "commit", defaultValue = "unknown")
private String commit;
+ @Parameter(property = "projectId")
+ private Long projectId;
+
@Override
public void doExecute() {
applicationZip = firstNonBlank(applicationZip, projectPathOf("target", "application.zip"));
applicationTestZip = firstNonBlank(applicationTestZip, projectPathOf("target", "application-test.zip"));
Submission submission = new Submission(repository, branch, commit, authorEmail,
Paths.get(applicationZip),
- Paths.get(applicationTestZip));
+ Paths.get(applicationTestZip),
+ projectId == null ? OptionalLong.empty() : OptionalLong.of(projectId));
System.out.println(controller.submit(submission, id.tenant(), id.application()));
}