Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
FIY695
jenkins
提交
fa9d4cc6
J
jenkins
项目概览
FIY695
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
fa9d4cc6
编写于
12月 10, 2010
作者:
K
Kohsuke Kawaguchi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
allow the build display name to be set by the user.
上级
e878b35b
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
92 addition
and
2 deletion
+92
-2
core/src/main/java/hudson/model/Run.java
core/src/main/java/hudson/model/Run.java
+44
-2
core/src/main/resources/hudson/model/AbstractBuild/tasks.jelly
...src/main/resources/hudson/model/AbstractBuild/tasks.jelly
+1
-0
core/src/main/resources/hudson/model/ExternalRun/sidepanel.jelly
...c/main/resources/hudson/model/ExternalRun/sidepanel.jelly
+1
-0
core/src/main/resources/hudson/model/Run/configure.jelly
core/src/main/resources/hudson/model/Run/configure.jelly
+46
-0
未找到文件。
core/src/main/java/hudson/model/Run.java
浏览文件 @
fa9d4cc6
...
...
@@ -40,6 +40,7 @@ import hudson.console.AnnotatedLargeText;
import
hudson.console.ConsoleNote
;
import
hudson.matrix.MatrixBuild
;
import
hudson.matrix.MatrixRun
;
import
hudson.model.Descriptor.FormException
;
import
hudson.model.listeners.RunListener
;
import
hudson.model.listeners.SaveableListener
;
import
hudson.search.SearchIndexBuilder
;
...
...
@@ -47,11 +48,14 @@ import hudson.security.ACL;
import
hudson.security.AccessControlled
;
import
hudson.security.Permission
;
import
hudson.security.PermissionGroup
;
import
hudson.tasks.BuildTrigger
;
import
hudson.tasks.LogRotator
;
import
hudson.tasks.Mailer
;
import
hudson.tasks.BuildWrapper
;
import
hudson.tasks.BuildStep
;
import
hudson.tasks.Publisher
;
import
hudson.tasks.test.AbstractTestResultAction
;
import
hudson.util.DescribableList
;
import
hudson.util.FlushProofOutputStream
;
import
hudson.util.IOException2
;
import
hudson.util.LogTaskListener
;
...
...
@@ -93,9 +97,12 @@ import java.util.zip.GZIPInputStream;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletResponse
;
import
net.sf.json.JSONObject
;
import
org.apache.commons.io.input.NullInputStream
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.jelly.XMLOutput
;
import
org.kohsuke.stapler.HttpResponse
;
import
org.kohsuke.stapler.HttpResponses
;
import
org.kohsuke.stapler.QueryParameter
;
import
org.kohsuke.stapler.StaplerRequest
;
import
org.kohsuke.stapler.StaplerResponse
;
...
...
@@ -168,6 +175,13 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run
*/
protected
volatile
String
description
;
/**
* Human-readable name of this build. Can be null.
* If non-null, this text is displayed instead of "#NNN", which is the default.
* @since 1.390
*/
private
volatile
String
displayName
;
/**
* The current build state.
*/
...
...
@@ -594,11 +608,21 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run
@Exported
public
String
getFullDisplayName
()
{
return
project
.
getFullDisplayName
()+
" #"
+
number
;
return
project
.
getFullDisplayName
()+
' '
+
getDisplayName
()
;
}
public
String
getDisplayName
()
{
return
"#"
+
number
;
return
displayName
!=
null
?
displayName
:
"#"
+
number
;
}
public
boolean
hasCustomDisplayName
()
{
return
displayName
!=
null
;
}
public
void
setDisplayName
(
String
value
)
throws
IOException
{
checkPermission
(
UPDATE
);
this
.
displayName
=
value
;
save
();
}
@Exported
(
visibility
=
2
)
...
...
@@ -1805,6 +1829,24 @@ public abstract class Run <JobT extends Job<JobT,RunT>,RunT extends Run<JobT,Run
return
project
.
getEstimatedDuration
();
}
public
HttpResponse
doConfigSubmit
(
StaplerRequest
req
)
throws
IOException
,
ServletException
,
FormException
{
checkPermission
(
UPDATE
);
BulkChange
bc
=
new
BulkChange
(
this
);
try
{
JSONObject
json
=
req
.
getSubmittedForm
();
submit
(
json
);
bc
.
commit
();
}
finally
{
bc
.
abort
();
}
return
HttpResponses
.
redirectToDot
();
}
protected
void
submit
(
JSONObject
json
)
throws
IOException
{
setDisplayName
(
json
.
getString
(
"displayName"
));
setDescription
(
json
.
getString
(
"description"
));
}
public
static
final
XStream
XSTREAM
=
new
XStream2
();
static
{
XSTREAM
.
alias
(
"build"
,
FreeStyleBuild
.
class
);
...
...
core/src/main/resources/hudson/model/AbstractBuild/tasks.jelly
浏览文件 @
fa9d4cc6
...
...
@@ -46,4 +46,5 @@ THE SOFTWARE.
<l:task icon="images/24x24/terminal.gif" href="${buildUrl.baseUrl}/console" title="${%Console Output}" />
</j:otherwise>
</j:choose>
<l:task icon="images/24x24/setting.gif" href="${buildUrl.baseUrl}/configure" title="${h.hasPermission(it,it.UPDATE)?'%Configure':'%View Configuration'}"/>
</j:jelly>
\ No newline at end of file
core/src/main/resources/hudson/model/ExternalRun/sidepanel.jelly
浏览文件 @
fa9d4cc6
...
...
@@ -35,6 +35,7 @@ THE SOFTWARE.
<l:task icon="images/24x24/package.gif" href="artifacts-index" title="${%Artifacts}" />
</j:if>
<st:include page="actions.jelly"/>
<l:task icon="images/24x24/setting.gif" href="configure" title="${h.hasPermission(it,it.UPDATE)?'%Configure':'%View Configuration'}"/>
<j:if test="${it.previousBuild!=null}">
<l:task icon="images/24x24/previous.gif" href="${rootURL}/${it.previousBuild.url}" title="${%Previous Run}" />
</j:if>
...
...
core/src/main/resources/hudson/model/Run/configure.jelly
0 → 100644
浏览文件 @
fa9d4cc6
<!--
The MIT License
Copyright (c) 2010, CloudBees, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
-->
<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler" xmlns:d="jelly:define" xmlns:l="/lib/layout" xmlns:t="/lib/hudson" xmlns:f="/lib/form" xmlns:i="jelly:fmt">
<l:layout title="${it.displayName} Config" norefresh="true">
<st:include page="sidepanel.jelly" />
<l:main-panel>
<div class="behavior-loading">${%LOADING}</div>
<f:form method="post" action="configSubmit" name="config">
<f:entry title="${%DisplayName}" help="/help/project-config/displayName.html">
<f:textbox name="displayName" value="${it.hasCustomDisplayName()?it.displayName:''}"/>
</f:entry>
<f:entry title="${%Description}" help="/help/project-config/description.html">
<f:textarea name="description" value="${it.description}"/>
</f:entry>
<j:if test="${h.hasPermission(it,it.UPDATE)}">
<f:block>
<f:submit value="${%Save}" />
</f:block>
</j:if>
</f:form>
</l:main-panel>
</l:layout>
</j:jelly>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录