任务扩展

概观

GoCD支持从配置UI直接配置几种任务(Nant,Ant和Rake),而无需将其指定为自定义命令。 例如,如果您转到配置用户界面,您会看到如下所示的内容:

一个任务插件允许你扩展它,这样你就可以在这里获得其他任务。 该插件还允许您控制UI以及为此任务存储的数据。

例如,你可以找到一个示例Curl插件的源代码,在这个位置。 假设你已经安装了插件,你会看到作业配置UI中的下拉列表已经改变,如下所示:

选中该对话框后,您可以配置有关该任务的详细信息,如下所示:

在配置XML中,为此任务输入的信息如下所示:

<task>
  <pluginConfiguration id="curl.task.plugin" version="1" />
  <configuration>
    <property>
      <key>Url</key>
      <value>http://www.google.com</value>
    </property>
    <property>
      <key>SecureConnection</key>
      <value>no</value>
    </property>
    <property>
      <key>RequestType</key>
      <value>-G</value>
    </property>
    <property>
      <key>AdditionalOptions</key>
      <value />
    </property>
  </configuration>
  <runif status="passed" />
</task>

当使用插件的构建运行时,构建的输出如下所示:

[go] Start to execute task: Plugin with ID: curl.task.plugin.
Launching command: [curl, -G, --insecure, -o, pipelines/up42/index.txt, http://www.google.com]
Environment variables:
Name= MAVEN_OPTS  Value= -Xms256m -Xmx512m
Name= GO_STAGE_COUNTER  Value= 1
Name= GO_REVISION_BLAH  Value= cde1e03a05170b991a92a136278c3464e4f35fe7
Name= GO_JOB_NAME  Value= up42_job
Name= EDITOR  Value= vim
Name= SECURITYSESSIONID  Value= 186a4
... lots more environment variables ...
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed

0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
100   259  100   259    0     0    122      0  0:00:02  0:00:02 --:--:--   122

GoCD提供了两种编写任务插件的方式:

results matching ""

    No results matching ""