回答

1

我設法讓它工作。

拳頭我定義了一個實現EnvironmentContributingAction接口的Action類。

public class RunInCloudEnvInject implements EnvironmentContributingAction { 

    private String key; 

    private String value; 

    public RunInCloudEnvInject(String key, String value) { 
     this.key = key; 
     this.value = value; 
    } 

    @Override public void buildEnvVars(AbstractBuild<?, ?> abstractBuild, EnvVars envVars) { 
     if (envVars != null && key != null && value != null) { 
      envVars.put(key, value); 
     } 
    } 

    @Override public String getIconFileName() { 
     return null; 
    } 

    @Override public String getDisplayName() { 
     return "RunInCloudBuilderEnvInjectionAction"; 
    } 

    @Override public String getUrlName() { 
     return null; 
    } 
} 

之後我修改這個片段波紋管內部的@Override執行實現抽象助洗劑之類的()方法。

 String cloudLink = String.format("%s/#service/testrun/%s/%s", cloudLinkPrefix, testRun.getProjectId(), 
       testRun.getId()); 
     build.getActions().add(new CloudLink(build, cloudLink)); 

     RunInCloudEnvInject variable = new RunInCloudEnvInject("CLOUD_LINK", cloudLink); 
     build.addAction(variable); 

現在我可以用我的CLOUD_LINK環境變量裏面的詹金斯建立後的結果網址在例如鬆弛通知。

這裏是拉請求https://github.com/jenkinsci/testdroid-run-in-cloud-plugin/pull/4