• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java ExecutionResult类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.thoughtworks.go.plugin.api.response.execution.ExecutionResult的典型用法代码示例。如果您正苦于以下问题:Java ExecutionResult类的具体用法?Java ExecutionResult怎么用?Java ExecutionResult使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



ExecutionResult类属于com.thoughtworks.go.plugin.api.response.execution包,在下文中一共展示了ExecutionResult类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: runCommand

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
private ExecutionResult runCommand(TaskExecutionContext taskContext, TaskConfig taskConfig) throws IOException, InterruptedException {
    ProcessBuilder curl = createCurlCommandWithOptions(taskContext, taskConfig);

    Console console = taskContext.console();
    console.printLine("Launching command: " + curl.command());

    EnvironmentVariables environment = taskContext.environment();
    curl.environment().putAll(environment.asMap());
    console.printEnvironment(curl.environment(), environment.secureEnvSpecifier());

    Process curlProcess = curl.start();
    console.readErrorOf(curlProcess.getErrorStream());
    console.readOutputOf(curlProcess.getInputStream());

    int exitCode = curlProcess.waitFor();
    curlProcess.destroy();

    if (exitCode != 0) {
        return ExecutionResult.failure("Failed downloading file. Please check the output");
    }

    return ExecutionResult.success("Downloaded file: " + CURLED_FILE);
}
 
开发者ID:gocd,项目名称:go-plugins,代码行数:24,代码来源:CurlTaskExecutor.java


示例2: execute

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public ExecutionResult execute(TaskConfig config, TaskExecutionContext context) {
    Collection<GoArtifact> artifacts = artifactFactory.createArtifacts(config, context);

    EnvironmentVariables environment = context.environment();
    GoBuildDetails details = buildDetailsFactory.createBuildDetails(environment, artifacts);

    try (ArtifactoryClient client = createClient(environment)) {
        UploadMetadata uploadMetadata = client.uploadArtifacts(artifacts);
        client.uploadBuildDetails(details);

        buildArtifactPublisher.publish(context, uploadMetadata);

        context.console()
                .printLine(format("Successfully published artifacts:\n%s", asString(artifacts)));
        return success("");
    }
    catch (RuntimeException e) {
        String message = format("Failed to publish one or more artifact [%s]", artifacts);
        logger.error(message, e);
        return failure(format("%s: %s", message, e.getMessage()));
    }
}
 
开发者ID:tusharm,项目名称:go-artifactory-plugin,代码行数:24,代码来源:PublishTaskExecutor.java


示例3: toExecutionResult

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public ExecutionResult toExecutionResult(String responseBody) {
    ExecutionResult executionResult = new ExecutionResult();
    ArrayList<String> exceptions = new ArrayList<>();
    try {
        Map result = (Map) new GsonBuilder().create().fromJson(responseBody, Object.class);
        if (!(result.containsKey("success") && result.get("success") instanceof Boolean)) {
            exceptions.add("The Json for Execution Result must contain a not-null 'success' field of type Boolean");
        }
        if (result.containsKey("message") && (!(result.get("message") instanceof String))) {
            exceptions.add("If the 'message' key is present in the Json for Execution Result, it must contain a not-null message of type String");
        }
        if (!exceptions.isEmpty()) {
            throw new RuntimeException(StringUtils.join(exceptions, ", "));
        }
        if ((Boolean) result.get("success")) {
            executionResult.withSuccessMessages((String) result.get("message"));
        } else {
            executionResult.withErrorMessages((String) result.get("message"));
        }
        return executionResult;
    } catch (Exception e) {
        LOGGER.error("Error occurred while converting the Json to Execution Result. Error: {}. The Json received was '{}'.", e.getMessage(), responseBody);
        throw new RuntimeException(String.format("Error occurred while converting the Json to Execution Result. Error: %s.", e.getMessage()));
    }
}
 
开发者ID:gocd,项目名称:gocd,代码行数:27,代码来源:JsonBasedTaskExtensionHandler_V1.java


示例4: shouldExecuteAndReturnSuccessfulExecutionResultTaskThroughPlugin

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldExecuteAndReturnSuccessfulExecutionResultTaskThroughPlugin() {
    when(pluginManager.submitTo(eq(pluginId), any(GoPluginApiRequest.class))).thenReturn(response);
    when(handler.toExecutionResult(response.responseBody())).thenReturn(ExecutionResult.success("message1"));

    ExecutionResult result = new JsonBasedTaskExecutor(pluginId, pluginRequestHelper, handlerHashMap).execute(config(), context);

    assertThat(result.isSuccessful(), is(true));
    assertThat(result.getMessagesForDisplay(), is("message1"));

    ArgumentCaptor<GoPluginApiRequest> argument = ArgumentCaptor.forClass(GoPluginApiRequest.class);
    verify(pluginManager).submitTo(eq(pluginId), argument.capture());
    assertThat(argument.getValue().extension(), is(PLUGGABLE_TASK_EXTENSION));
    assertThat(argument.getValue().extensionVersion(), is(extensionVersion));
    assertThat(argument.getValue().requestName(), is(TaskExtension.EXECUTION_REQUEST));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:17,代码来源:JsonBasedTaskExecutorTest.java


示例5: build

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public void build(final DefaultGoPublisher publisher,
                  final EnvironmentVariableContext environmentVariableContext, TaskExtension taskExtension, ArtifactExtension artifactExtension, PluginRequestProcessorRegistry pluginRequestProcessorRegistry, String consoleLogCharset) throws CruiseControlException {
    ExecutionResult executionResult = null;
    try {
        executionResult = taskExtension.execute(pluginId, new ActionWithReturn<Task, ExecutionResult>() {
            @Override
            public ExecutionResult execute(Task task, GoPluginDescriptor pluginDescriptor) {
                return executeTask(task, publisher, environmentVariableContext, consoleLogCharset);
            }
        });
    } catch (Exception e) {
        logException(publisher, e);
    } finally {
        JobConsoleLoggerInternal.unsetContext();
    }
    if (executionResult == null) {
        logError(publisher, "ExecutionResult cannot be null. Please return a success or a failure response.");
    }
    if (!executionResult.isSuccessful()) {
        logError(publisher, executionResult.getMessagesForDisplay());
    }
}
 
开发者ID:gocd,项目名称:gocd,代码行数:24,代码来源:PluggableTaskBuilder.java


示例6: checkConnectionToPackage

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public Result checkConnectionToPackage(PackageConfiguration packageConfiguration, RepositoryConfiguration repositoryConfiguration) {
    CloudFoundryClient client = getClient(repositoryConfiguration);

    Result result = new Result();

    final String appNamePrefix = packageConfiguration.get("APP_NAME").getValue();
        if (lookupAppNames(client, appNamePrefix).isEmpty()) {
            LOGGER.warn("No app found.");
            result = ExecutionResult.failure("No such app found in CloudFoundry.");
        }

    return result;
}
 
开发者ID:Sounie,项目名称:springer-gocd-cloudfoundry-plugin,代码行数:15,代码来源:CloudFoundryPoller.java


示例7: execute

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public ExecutionResult execute(TaskConfig taskConfig, TaskExecutionContext taskExecutionContext) {
    ProcessBuilder powershell = createPowershellCommand(taskExecutionContext, taskConfig);

    Console console = taskExecutionContext.console();
    console.printLine("Launching command: " + StringUtils.join(powershell.command(), " "));

    try {
        Process process = powershell.start();

        PutScriptIntoPowershellStdin(taskExecutionContext, taskConfig, process);

        console.readErrorOf(process.getErrorStream());
        console.readOutputOf(process.getInputStream());

        int exitCode = process.waitFor();
        process.destroy();

        if (exitCode != 0) {
            return ExecutionResult.failure("Build Failure");
        }
    }
    catch(Exception e) {
        console.printLine(e.getMessage());
        return ExecutionResult.failure("Failed while running Powershell task ", e);
    }

    return ExecutionResult.success("Build Success");
}
 
开发者ID:manojlds,项目名称:gocd-powershell-runner,代码行数:30,代码来源:PowershellTaskExecutor.java


示例8: execute

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public ExecutionResult execute(TaskConfig tc, TaskExecutionContext tec) {
    Console console = tec.console();
    
    ProcessBuilder mvn = createMavenCommand(tc, tec);

    try {
        Process process = mvn.start();

        console.readErrorOf(process.getErrorStream());
        console.readOutputOf(process.getInputStream());

        int exitCode = process.waitFor();
        process.destroy();
        if (exitCode != 0) {
            return ExecutionResult.failure("Build failure");
        }
    } catch (Exception t) {
        console.printLine(t.getMessage());
        StringWriter sw = new StringWriter();
        PrintWriter pw = new PrintWriter(sw);
        t.printStackTrace(pw);
        console.printLine(sw.toString());
        return ExecutionResult.failure("Build failure: " + t.getMessage(), t);
    }

    return ExecutionResult.success("Build success");
}
 
开发者ID:ruckc,项目名称:gocd-maven-plugin,代码行数:29,代码来源:MavenTaskExecutor.java


示例9: execute

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public ExecutionResult execute(TaskConfig config, TaskExecutionContext taskEnvironment) {
    try {
        return runCommand(taskEnvironment, config);
    } catch (Exception e) {
        return ExecutionResult.failure("Failed to download file from URL: " + config.getValue(CurlTask.URL_PROPERTY), e);
    }
}
 
开发者ID:gocd,项目名称:go-plugins,代码行数:9,代码来源:CurlTaskExecutor.java


示例10: shouldUploadArtifactAndBuildDetails

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldUploadArtifactAndBuildDetails() throws IOException {
    TaskConfig config = new TaskConfigBuilder()
            .uri("test-repo/path/to/artifact.ext")
            .path("src/test/resources/artifact.txt")
            .property("a", "b")
            .build();

    TaskExecutionContext executionContext =
            new TaskExecutionContextBuilder()
                    .withWorkingDir(System.getProperty("java.io.tmpdir"))
                    .withEnvVars(map("ARTIFACTORY_URL", "http://localhost:8888")
                            .and("ARTIFACTORY_USER", "admin")
                            .and("ARTIFACTORY_PASSWORD", "password")
                            .and("GO_SERVER_URL", "http://localhost:8153/go")
                            .and("GO_PIPELINE_NAME", "pipeline")
                            .and("GO_PIPELINE_COUNTER", "1")
                            .and("GO_STAGE_COUNTER", "3"))
                    .build();

    File testResponse = new File(path("src", "test", "resources", "uploadResponse.json"));
    artifactoryStub.put("/test-repo/path/to/artifact.ext").withContent("content")
            .returns(response(201).withContent(read(testResponse)));

    artifactoryStub.put("/test-repo/path/to/artifact.ext.sha1").withContent("040f06fd774092478d450774f5ba30c5da78acc8").returns(response(201));
    artifactoryStub.put("/test-repo/path/to/artifact.ext.md5").withContent("9a0364b9e99bb480dd25e1f0284c8555").returns(response(201));
    artifactoryStub.put("/api/build").withHeader("Content-Type", "application/vnd.org.jfrog.artifactory+json").returns(response(204));

    ExecutionResult result = executor.execute(config, executionContext);

    ASSERT.that(result.isSuccessful()).isTrue();
    ASSERT.that(new File(pluginDirectory, "uploadMetadata.json").exists()).isTrue();
}
 
开发者ID:tusharm,项目名称:go-artifactory-plugin,代码行数:34,代码来源:PublishTaskExecutorIntegrationTest.java


示例11: shouldExecuteAndReturnFailureExecutionResultTaskThroughPlugin

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldExecuteAndReturnFailureExecutionResultTaskThroughPlugin() {
    when(pluginManager.submitTo(eq(pluginId), any(GoPluginApiRequest.class))).thenReturn(response);
    when(handler.toExecutionResult(response.responseBody())).thenReturn(ExecutionResult.failure("error1"));

    ExecutionResult result = new JsonBasedTaskExecutor(pluginId, pluginRequestHelper, handlerHashMap).execute(config(), context);

    assertThat(result.isSuccessful(), is(false));
    assertThat(result.getMessagesForDisplay(), is("error1"));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:11,代码来源:JsonBasedTaskExecutorTest.java


示例12: shouldExecuteTheTask

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldExecuteTheTask() {
    ActionWithReturn actionWithReturn = mock(ActionWithReturn.class);
    when(actionWithReturn.execute(any(JsonBasedPluggableTask.class), any(GoPluginDescriptor.class))).thenReturn(ExecutionResult.success("yay"));

    ExecutionResult executionResult = extension.execute(pluginId, actionWithReturn);

    verify(actionWithReturn).execute(any(JsonBasedPluggableTask.class), any(GoPluginDescriptor.class));
    assertThat(executionResult.getMessagesForDisplay(), is("yay"));
    assertTrue(executionResult.isSuccessful());
}
 
开发者ID:gocd,项目名称:gocd,代码行数:12,代码来源:TaskExtensionTest.java


示例13: shouldConstructExecutionResultFromSuccessfulExecutionResponse

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldConstructExecutionResultFromSuccessfulExecutionResponse() {
    GoPluginApiResponse response = mock(GoPluginApiResponse.class);
    when(response.responseBody()).thenReturn("{\"success\":true,\"message\":\"message1\"}");

    ExecutionResult result = new JsonBasedTaskExtensionHandler_V1().toExecutionResult(response.responseBody());
    assertThat(result.isSuccessful(), is(true));
    assertThat(result.getMessagesForDisplay(), is("message1"));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:10,代码来源:JsonBasedTaskExtensionHandler_V1Test.java


示例14: shouldConstructExecutionResultFromFailureExecutionResponse

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldConstructExecutionResultFromFailureExecutionResponse() {
    GoPluginApiResponse response = mock(GoPluginApiResponse.class);
    when(response.responseBody()).thenReturn("{\"success\":false,\"message\":\"error1\"}");

    ExecutionResult result = new JsonBasedTaskExtensionHandler_V1().toExecutionResult(response.responseBody());
    assertThat(result.isSuccessful(), is(false));
    assertThat(result.getMessagesForDisplay(), is("error1"));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:10,代码来源:JsonBasedTaskExtensionHandler_V1Test.java


示例15: executeTask

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
protected ExecutionResult executeTask(Task task,
                                      DefaultGoPublisher publisher,
                                      EnvironmentVariableContext environmentVariableContext, String consoleLogCharset) {
    final TaskExecutionContext taskExecutionContext = buildTaskContext(publisher, environmentVariableContext, consoleLogCharset);
    JobConsoleLoggerInternal.setContext(taskExecutionContext);

    TaskConfig config = buildTaskConfig(task.config());
    return task.executor().execute(config, taskExecutionContext);
}
 
开发者ID:gocd,项目名称:gocd,代码行数:10,代码来源:PluggableTaskBuilder.java


示例16: shouldInvokeTheTaskExecutorOfThePlugin

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldInvokeTheTaskExecutorOfThePlugin() throws Exception {
    final int[] executeTaskCalled = new int[1];
    PluggableTaskBuilder taskBuilder = new PluggableTaskBuilder(runIfConfigs, cancelBuilder, pluggableTask, TEST_PLUGIN_ID, "test-directory") {
        @Override
        protected ExecutionResult executeTask(Task task, DefaultGoPublisher publisher, EnvironmentVariableContext environmentVariableContext, String consoleLogCharset) {
            executeTaskCalled[0]++;
            return ExecutionResult.success("Test succeeded");
        }
    };

    taskBuilder.build(goPublisher, variableContext, taskExtension, null, null, "utf-8");

    assertThat(executeTaskCalled[0], is(1));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:16,代码来源:PluggableTaskBuilderTest.java


示例17: shouldRegisterTaskConfigDuringExecutionAndUnregisterOnSuccessfulCompletion

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldRegisterTaskConfigDuringExecutionAndUnregisterOnSuccessfulCompletion() throws CruiseControlException {
    final PluggableTaskBuilder builder = spy(new PluggableTaskBuilder(runIfConfigs, cancelBuilder, pluggableTask, "", ""));
    taskExtension = mock(TaskExtension.class);
    when(taskExtension.execute(eq(TEST_PLUGIN_ID), any(ActionWithReturn.class))).thenReturn(ExecutionResult.success("yay"));

    builder.build(goPublisher, variableContext, taskExtension, null, null, "utf-8");
    assertThat(ReflectionUtil.getStaticField(JobConsoleLogger.class, "context"), is(nullValue()));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:10,代码来源:PluggableTaskBuilderTest.java


示例18: shouldUnsetTaskExecutionContextFromJobConsoleLoggerWhenTaskExecutionFails

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Test
public void shouldUnsetTaskExecutionContextFromJobConsoleLoggerWhenTaskExecutionFails() throws CruiseControlException {
    final PluggableTaskBuilder builder = spy(new PluggableTaskBuilder(runIfConfigs, cancelBuilder, pluggableTask, "", ""));

    taskExtension = mock(TaskExtension.class);
    when(taskExtension.execute(eq(TEST_PLUGIN_ID), any(ActionWithReturn.class))).thenReturn(ExecutionResult.failure("oh no"));

    try {
        builder.build(goPublisher, variableContext, taskExtension, null, null, "utf-8");
        fail("should throw exception");
    } catch (Exception e) {
        assertThat(ReflectionUtil.getStaticField(JobConsoleLogger.class, "context"), is(nullValue()));
    }
}
 
开发者ID:gocd,项目名称:gocd,代码行数:15,代码来源:PluggableTaskBuilderTest.java


示例19: execute

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
public ExecutionResult execute(String pluginId, ActionWithReturn<Task, ExecutionResult> actionWithReturn) {
    JsonBasedPluggableTask task = new JsonBasedPluggableTask(pluginId, pluginRequestHelper, messageHandlerMap);
    return actionWithReturn.execute(task, pluginManager.getPluginDescriptorFor(pluginId));
}
 
开发者ID:gocd,项目名称:gocd,代码行数:5,代码来源:TaskExtension.java


示例20: checkConnectionToRepository

import com.thoughtworks.go.plugin.api.response.execution.ExecutionResult; //导入依赖的package包/类
@Override
public Result checkConnectionToRepository(RepositoryConfiguration repositoryConfiguration) {
    LOGGER.debug("checkConnectionToRepository called");

    CloudFoundryClient client = getClient(repositoryConfiguration);

    GetInfoResponse response = client.info().get(GetInfoRequest.builder().build()).block(Duration.ofSeconds(5));

    String apiVersion = response.getApiVersion();

    return ExecutionResult.success("Connected with supplied credentials, apiVersion: " + apiVersion);
}
 
开发者ID:Sounie,项目名称:springer-gocd-cloudfoundry-plugin,代码行数:13,代码来源:CloudFoundryPoller.java



注:本文中的com.thoughtworks.go.plugin.api.response.execution.ExecutionResult类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java MutableHistogram类代码示例发布时间:2022-05-22
下一篇:
Java PagingResponse类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap