Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Jenkins 中文社区
jenkins-cli
提交
04d8c784
J
jenkins-cli
项目概览
Jenkins 中文社区
/
jenkins-cli
通知
49
Star
8
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins-cli
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
04d8c784
编写于
8月 15, 2019
作者:
LinuxSuRen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use constant instead of duplicating literal
上级
5dac31cb
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
32 addition
and
64 deletion
+32
-64
client/job.go
client/job.go
+23
-60
client/user.go
client/user.go
+4
-4
util/http.go
util/http.go
+5
-0
未找到文件。
client/job.go
浏览文件 @
04d8c784
...
...
@@ -9,6 +9,8 @@ import (
"net/url"
"strconv"
"strings"
"github.com/jenkins-zh/jenkins-cli/util"
)
type
JobClient
struct
{
...
...
@@ -48,14 +50,8 @@ func (q *JobClient) Search(keyword string) (status *SearchResult, err error) {
}
return
}
func
(
q
*
JobClient
)
Build
(
jobName
string
)
(
err
error
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
jobName
)
api
:=
fmt
.
Sprintf
(
"%s/%s/build"
,
q
.
URL
,
path
)
var
(
req
*
http
.
Request
...
...
@@ -90,12 +86,7 @@ func (q *JobClient) Build(jobName string) (err error) {
}
func
(
q
*
JobClient
)
GetBuild
(
jobName
string
,
id
int
)
(
job
*
JobBuild
,
err
error
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
jobName
)
var
api
string
if
id
==
-
1
{
api
=
fmt
.
Sprintf
(
"%s/%s/lastBuild/api/json"
,
q
.
URL
,
path
)
...
...
@@ -132,12 +123,7 @@ func (q *JobClient) GetBuild(jobName string, id int) (job *JobBuild, err error)
}
func
(
q
*
JobClient
)
BuildWithParams
(
jobName
string
,
parameters
[]
ParameterDefinition
)
(
err
error
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
jobName
)
api
:=
fmt
.
Sprintf
(
"%s/%s/build"
,
q
.
URL
,
path
)
var
(
req
*
http
.
Request
...
...
@@ -164,7 +150,7 @@ func (q *JobClient) BuildWithParams(jobName string, parameters []ParameterDefini
if
err
=
q
.
CrumbHandle
(
req
);
err
!=
nil
{
log
.
Fatal
(
err
)
}
req
.
Header
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Add
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
code
:=
response
.
StatusCode
...
...
@@ -185,12 +171,7 @@ func (q *JobClient) BuildWithParams(jobName string, parameters []ParameterDefini
}
func
(
q
*
JobClient
)
StopJob
(
jobName
string
,
num
int
)
(
err
error
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
jobName
)
api
:=
fmt
.
Sprintf
(
"%s/%s/%d/stop"
,
q
.
URL
,
path
,
num
)
var
(
req
*
http
.
Request
...
...
@@ -224,12 +205,7 @@ func (q *JobClient) StopJob(jobName string, num int) (err error) {
}
func
(
q
*
JobClient
)
GetJob
(
name
string
)
(
job
*
Job
,
err
error
)
{
jobItems
:=
strings
.
Split
(
name
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
name
)
api
:=
fmt
.
Sprintf
(
"%s/%s/api/json"
,
q
.
URL
,
path
)
var
(
req
*
http
.
Request
...
...
@@ -296,16 +272,7 @@ func (q *JobClient) GetJobTypeCategories() (jobCategories []JobCategory, err err
}
func
(
q
*
JobClient
)
UpdatePipeline
(
name
,
script
string
)
(
err
error
)
{
jobItems
:=
strings
.
Split
(
name
,
" "
)
path
:=
""
for
i
,
item
:=
range
jobItems
{
if
i
==
0
{
path
=
fmt
.
Sprintf
(
"job/%s"
,
item
)
}
else
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
}
path
:=
parseJobPath
(
name
)
api
:=
fmt
.
Sprintf
(
"%s/%s/wfapisu/update"
,
q
.
URL
,
path
)
var
(
req
*
http
.
Request
...
...
@@ -324,9 +291,7 @@ func (q *JobClient) UpdatePipeline(name, script string) (err error) {
if
err
=
q
.
CrumbHandle
(
req
);
err
!=
nil
{
log
.
Fatal
(
err
)
}
req
.
Header
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
// req.Header.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3")
// req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
req
.
Header
.
Add
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
code
:=
response
.
StatusCode
...
...
@@ -346,12 +311,7 @@ func (q *JobClient) UpdatePipeline(name, script string) (err error) {
}
func
(
q
*
JobClient
)
GetPipeline
(
name
string
)
(
pipeline
*
Pipeline
,
err
error
)
{
jobItems
:=
strings
.
Split
(
name
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
name
)
api
:=
fmt
.
Sprintf
(
"%s/%s/wfapisu/script"
,
q
.
URL
,
path
)
var
(
req
*
http
.
Request
...
...
@@ -421,12 +381,7 @@ func (q *JobClient) GetHistory(name string) (builds []JobBuild, err error) {
// Log get the log of a job
func
(
q
*
JobClient
)
Log
(
jobName
string
,
history
int
,
start
int64
)
(
jobLog
JobLog
,
err
error
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
:=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
path
:=
parseJobPath
(
jobName
)
var
api
string
if
history
==
-
1
{
api
=
fmt
.
Sprintf
(
"%s/%s/lastBuild/logText/progressiveText?start=%d"
,
q
.
URL
,
path
,
start
)
...
...
@@ -505,7 +460,7 @@ func (q *JobClient) Create(jobName string, jobType string) (err error) {
}
else
{
return
}
req
.
Header
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Add
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
...
...
@@ -530,14 +485,13 @@ func (q *JobClient) Delete(jobName string) (err error) {
req
*
http
.
Request
response
*
http
.
Response
)
req
,
err
=
http
.
NewRequest
(
"POST"
,
api
,
nil
)
if
err
==
nil
{
q
.
AuthHandle
(
req
)
}
else
{
return
}
req
.
Header
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Add
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
...
...
@@ -556,6 +510,15 @@ func (q *JobClient) Delete(jobName string) (err error) {
return
}
func
parseJobPath
(
jobName
string
)
(
path
string
)
{
jobItems
:=
strings
.
Split
(
jobName
,
" "
)
path
=
""
for
_
,
item
:=
range
jobItems
{
path
=
fmt
.
Sprintf
(
"%s/job/%s"
,
path
,
item
)
}
return
}
type
JobLog
struct
{
HasMore
bool
NextStart
int64
...
...
client/user.go
浏览文件 @
04d8c784
...
...
@@ -79,7 +79,7 @@ func (q *UserClient) EditDesc(description string) (err error) {
return
}
req
.
Header
.
Set
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Set
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
if
err
=
q
.
CrumbHandle
(
req
);
err
!=
nil
{
log
.
Fatal
(
err
)
}
...
...
@@ -113,7 +113,7 @@ func (q *UserClient) Delete(username string) (err error) {
return
}
req
.
Header
.
Set
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Set
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
code
:=
response
.
StatusCode
...
...
@@ -163,7 +163,7 @@ func (q *UserClient) Create(username string) (user *UserForCreate, err error) {
return
}
req
.
Header
.
Set
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Set
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
client
:=
q
.
GetClient
()
if
response
,
err
=
client
.
Do
(
req
);
err
==
nil
{
code
:=
response
.
StatusCode
...
...
@@ -200,7 +200,7 @@ func (q *UserClient) CreateToken(newTokenName string) (status *Token, err error)
return
}
req
.
Header
.
Set
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
req
.
Header
.
Set
(
util
.
CONTENT_TYPE
,
util
.
APP_FORM
)
if
err
=
q
.
CrumbHandle
(
req
);
err
!=
nil
{
log
.
Fatal
(
err
)
}
...
...
util/http.go
浏览文件 @
04d8c784
...
...
@@ -12,6 +12,11 @@ import (
"github.com/gosuri/uiprogress"
)
const
(
CONTENT_TYPE
=
"Content-Type"
APP_FORM
=
"application/x-www-form-urlencoded"
)
type
HTTPDownloader
struct
{
TargetFilePath
string
URL
string
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录