Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
jenkinsci
sub-group
Jenkins Cli
提交
9bb6febe
J
Jenkins Cli
项目概览
jenkinsci
/
sub-group
/
Jenkins Cli
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
Jenkins Cli
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9bb6febe
编写于
7月 02, 2019
作者:
LinuxSuRen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add batchOption for job build
上级
e25c8531
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
35 addition
and
5 deletion
+35
-5
app/cmd/common.go
app/cmd/common.go
+22
-5
app/cmd/job_build.go
app/cmd/job_build.go
+13
-0
未找到文件。
app/cmd/common.go
浏览文件 @
9bb6febe
...
@@ -4,6 +4,7 @@ import (
...
@@ -4,6 +4,7 @@ import (
"encoding/json"
"encoding/json"
"fmt"
"fmt"
"github.com/AlecAivazis/survey"
"gopkg.in/yaml.v2"
"gopkg.in/yaml.v2"
)
)
...
@@ -12,11 +13,6 @@ type OutputOption struct {
...
@@ -12,11 +13,6 @@ type OutputOption struct {
Format
string
Format
string
}
}
// BatchOption represent the options for a batch operation
type
BatchOption
struct
{
Batch
bool
}
type
FormatOutput
interface
{
type
FormatOutput
interface
{
Output
(
obj
interface
{},
format
string
)
(
data
[]
byte
,
err
error
)
Output
(
obj
interface
{},
format
string
)
(
data
[]
byte
,
err
error
)
}
}
...
@@ -47,3 +43,24 @@ func Format(obj interface{}, format string) (data []byte, err error) {
...
@@ -47,3 +43,24 @@ func Format(obj interface{}, format string) (data []byte, err error) {
return
nil
,
fmt
.
Errorf
(
"not support format %s"
,
format
)
return
nil
,
fmt
.
Errorf
(
"not support format %s"
,
format
)
}
}
// BatchOption represent the options for a batch operation
type
BatchOption
struct
{
Batch
bool
}
// Confirm prompte user if they really want to do this
func
(
b
*
BatchOption
)
Confirm
(
message
string
)
bool
{
if
!
b
.
Batch
{
confirm
:=
false
prompt
:=
&
survey
.
Confirm
{
Message
:
message
,
}
survey
.
AskOne
(
prompt
,
&
confirm
)
if
!
confirm
{
return
false
}
}
return
true
}
app/cmd/job_build.go
浏览文件 @
9bb6febe
package
cmd
package
cmd
import
(
import
(
"fmt"
"github.com/linuxsuren/jenkins-cli/client"
"github.com/linuxsuren/jenkins-cli/client"
"github.com/spf13/cobra"
"github.com/spf13/cobra"
)
)
type
JobBuildOption
struct
{
BatchOption
}
var
jobBuildOption
JobBuildOption
func
init
()
{
func
init
()
{
jobCmd
.
AddCommand
(
jobBuildCmd
)
jobCmd
.
AddCommand
(
jobBuildCmd
)
jobBuildCmd
.
Flags
()
.
BoolVarP
(
&
jobBuildOption
.
Batch
,
"batch"
,
"b"
,
false
,
"Batch mode, no need confirm"
)
}
}
var
jobBuildCmd
=
&
cobra
.
Command
{
var
jobBuildCmd
=
&
cobra
.
Command
{
...
@@ -19,6 +28,10 @@ var jobBuildCmd = &cobra.Command{
...
@@ -19,6 +28,10 @@ var jobBuildCmd = &cobra.Command{
return
return
}
}
if
!
jobBuildOption
.
Confirm
(
fmt
.
Sprintf
(
"Are you sure to build job %s"
,
jobOption
.
Name
))
{
return
}
jenkins
:=
getCurrentJenkins
()
jenkins
:=
getCurrentJenkins
()
jclient
:=
&
client
.
JobClient
{}
jclient
:=
&
client
.
JobClient
{}
jclient
.
URL
=
jenkins
.
URL
jclient
.
URL
=
jenkins
.
URL
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录