@@ -50,10 +50,11 @@ var (
50
50
)
51
51
52
52
type upgradeOptions struct {
53
- id string
54
- role string
55
- host string
56
- force bool
53
+ id string
54
+ role string
55
+ host string
56
+ force bool
57
+ useLocalImage bool
57
58
}
58
59
59
60
func NewUpgradeCommand (curveadm * cli.DingoAdm ) * cobra.Command {
@@ -77,6 +78,7 @@ func NewUpgradeCommand(curveadm *cli.DingoAdm) *cobra.Command {
77
78
flags .StringVar (& options .role , "role" , "*" , "Specify service role" )
78
79
flags .StringVar (& options .host , "host" , "*" , "Specify service host" )
79
80
flags .BoolVarP (& options .force , "force" , "f" , false , "Never prompt" )
81
+ flags .BoolVar (& options .useLocalImage , "local" , false , "Use local image" )
80
82
81
83
return cmd
82
84
}
@@ -94,6 +96,15 @@ func genUpgradePlaybook(curveadm *cli.DingoAdm,
94
96
}
95
97
96
98
steps := UPGRADE_PLAYBOOK_STEPS
99
+ if options .useLocalImage {
100
+ // remove PULL_IMAGE step
101
+ for i , item := range steps {
102
+ if item == PULL_IMAGE {
103
+ steps = append (steps [:i ], steps [i + 1 :]... )
104
+ break
105
+ }
106
+ }
107
+ }
97
108
pb := playbook .NewPlaybook (curveadm )
98
109
for _ , step := range steps {
99
110
pb .AddStep (& playbook.PlaybookStep {
0 commit comments