aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buildSrc/src/main/java/deployment/DeploymentRequestProcessStepTask.java4
-rw-r--r--buildSrc/src/main/java/deployment/DeploymentStatusRequestTask.java11
-rw-r--r--buildSrc/src/main/java/deployment/DeploymentSuccessRequestTask.java3
3 files changed, 18 insertions, 0 deletions
diff --git a/buildSrc/src/main/java/deployment/DeploymentRequestProcessStepTask.java b/buildSrc/src/main/java/deployment/DeploymentRequestProcessStepTask.java
index 7eddd126a..89ad4f89b 100644
--- a/buildSrc/src/main/java/deployment/DeploymentRequestProcessStepTask.java
+++ b/buildSrc/src/main/java/deployment/DeploymentRequestProcessStepTask.java
@@ -1,5 +1,7 @@
package deployment;
+import static deployment.DeploymentStatusRequestTask.makeBuildDir;
+
import github.DeploymentCreate;
import java.io.File;
import java.nio.charset.StandardCharsets;
@@ -55,11 +57,13 @@ public class DeploymentRequestProcessStepTask extends DefaultTask {
@TaskAction
public void deploymentRequestAction() {
try {
+ makeBuildDir(getProject());
final DeploymentCreate.Response response =
deploymentRequest(
new DeploymentCommandLineArgs(getProject().getProperties()),
mConfiguration,
mStepIndex);
+
Files.write(
getStatueFile().toPath(),
Arrays.asList(
diff --git a/buildSrc/src/main/java/deployment/DeploymentStatusRequestTask.java b/buildSrc/src/main/java/deployment/DeploymentStatusRequestTask.java
index 3412f1fe2..df6eed23d 100644
--- a/buildSrc/src/main/java/deployment/DeploymentStatusRequestTask.java
+++ b/buildSrc/src/main/java/deployment/DeploymentStatusRequestTask.java
@@ -2,6 +2,7 @@ package deployment;
import github.DeploymentStatus;
import java.io.File;
+import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.StandardOpenOption;
@@ -9,6 +10,7 @@ import java.util.Arrays;
import java.util.Locale;
import javax.inject.Inject;
import org.gradle.api.DefaultTask;
+import org.gradle.api.Project;
import org.gradle.api.tasks.Input;
import org.gradle.api.tasks.OutputFile;
import org.gradle.api.tasks.TaskAction;
@@ -18,6 +20,14 @@ public abstract class DeploymentStatusRequestTask extends DefaultTask {
private String mDeploymentId;
private String mDeploymentState;
+ static void makeBuildDir(Project project) throws IOException {
+ File buildDir = project.getBuildDir();
+ if (!buildDir.isDirectory() && !buildDir.mkdirs()) {
+ throw new IOException(
+ "Failed to create build output folder: " + buildDir.getAbsolutePath());
+ }
+ }
+
@Inject
public DeploymentStatusRequestTask() {
setGroup("Publishing");
@@ -60,6 +70,7 @@ public abstract class DeploymentStatusRequestTask extends DefaultTask {
@TaskAction
public void statusAction() {
try {
+ makeBuildDir(getProject());
final DeploymentStatus.Response response =
statusRequest(
new RequestCommandLineArgs(getProject().getProperties()),
diff --git a/buildSrc/src/main/java/deployment/DeploymentSuccessRequestTask.java b/buildSrc/src/main/java/deployment/DeploymentSuccessRequestTask.java
index be1be732c..8e673d62e 100644
--- a/buildSrc/src/main/java/deployment/DeploymentSuccessRequestTask.java
+++ b/buildSrc/src/main/java/deployment/DeploymentSuccessRequestTask.java
@@ -1,5 +1,7 @@
package deployment;
+import static deployment.DeploymentStatusRequestTask.makeBuildDir;
+
import github.DeploymentStatus;
import github.DeploymentsList;
import java.io.File;
@@ -59,6 +61,7 @@ public abstract class DeploymentSuccessRequestTask extends DefaultTask {
public void statusAction() {
final String processName = mEnvironmentName.substring(0, mEnvironmentName.indexOf('_') + 1);
try {
+ makeBuildDir(getProject());
final RequestCommandLineArgs data =
new RequestCommandLineArgs(getProject().getProperties());
final DeploymentsList.Response[] responses = listRequest(data, mEnvironmentSha);