本文整理汇总了Golang中github.com/megamsys/gulp/provision.Box.GetFullName方法的典型用法代码示例。如果您正苦于以下问题:Golang Box.GetFullName方法的具体用法?Golang Box.GetFullName怎么用?Golang Box.GetFullName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/megamsys/gulp/provision.Box
的用法示例。
在下文中一共展示了Box.GetFullName方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Bootstrap
func (p *chefsoloProvisioner) Bootstrap(box *provision.Box, w io.Writer) error {
fmt.Fprintf(w, "--- bootstrap box (%s)\n", box.GetFullName())
actions := []*action.Action{
&createMachine,
&updateStatusInRiak,
&updateIpsInRiak,
&appendAuthKeys,
&updateStatusInRiak,
&changeStateofMachine,
}
pipeline := action.NewPipeline(actions...)
args := runMachineActionsArgs{
box: box,
writer: w,
machineStatus: constants.StatusBootstrapping,
provisioner: p,
}
if err := pipeline.Execute(args); err != nil {
return err
}
fmt.Fprintf(w, "--- bootstrap box (%s) OK\n", box.GetFullName())
return nil
}
示例2: Stateup
func (p *chefsoloProvisioner) Stateup(b *provision.Box, w io.Writer) error {
fmt.Fprintf(w, "--- stateup box (%s)\n", b.GetFullName())
var repo string
if b.Repo != nil {
repo = b.Repo.Gitr()
}
DefaultAttributes, _ := json.Marshal(&Attributes{
RunList: []string{"recipe[" + p.Cookbook + "]"},
ToscaType: b.GetShortTosca(),
Scm: repo,
})
p.Attributes = string(DefaultAttributes)
p.Format = DefaultFormat
p.LogLevel = DefaultLogLevel
p.RootPath = meta.MC.Dir
p.Sudo = DefaultSudo
return p.kickOffSolo(b, w)
}
示例3: Stop
func (p *chefsoloProvisioner) Stop(b *provision.Box, w io.Writer) error {
fmt.Fprintf(w, "--- stop box (%s)\n", b.GetFullName())
actions := []*action.Action{
&updateStatusInRiak,
&stopBox,
&updateStatusInRiak,
}
pipeline := action.NewPipeline(actions...)
args := runMachineActionsArgs{
box: b,
writer: w,
machineStatus: constants.StatusStopping,
provisioner: p,
}
if err := pipeline.Execute(args); err != nil {
log.Errorf("error on execute stop pipeline for box %s - %s", b.GetFullName(), err)
return err
}
fmt.Fprintf(w, "--- stop box (%s) OK\n", b.GetFullName())
return nil
}
示例4: kickOffSolo
//1. &prepareJSON in generate the json file for chefsolo
//2. &prepareConfig in generate the config file for chefsolo.
//3. &updateStatus in Riak - Creating..
func (p *chefsoloProvisioner) kickOffSolo(b *provision.Box, w io.Writer) error {
fmt.Fprintf(w, "--- kickofff chefsolo box (%s)\n", b.GetFullName())
soloAction := make([]*action.Action, 0, 4)
soloAction = append(soloAction, &generateSoloJson, &generateSoloConfig, &cloneBox)
if b.Level != provision.BoxNone {
soloAction = append(soloAction, &chefSoloRun)
}
soloAction = append(soloAction, &updateStatusInRiak)
actions := soloAction
pipeline := action.NewPipeline(actions...)
args := runMachineActionsArgs{
box: b,
writer: w,
machineStatus: constants.StatusRunning,
provisioner: p,
}
if err := pipeline.Execute(args); err != nil {
log.Errorf("error on execute chefsolo pipeline for box %s - %s", b.GetFullName(), err)
return err
}
fmt.Fprintf(w, "--- kickofff chefsolo box (%s) OK\n", b.GetFullName())
return nil
}