当前位置: 首页>>代码示例>>Golang>>正文


Golang config.NewTopLevelConfig函数代码示例

本文整理汇总了Golang中github.com/contiv/volplugin/config.NewTopLevelConfig函数的典型用法代码示例。如果您正苦于以下问题:Golang NewTopLevelConfig函数的具体用法?Golang NewTopLevelConfig怎么用?Golang NewTopLevelConfig使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了NewTopLevelConfig函数的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: TenantUpload

// TenantUpload uploads a Tenant intent from stdin.
func TenantUpload(ctx *cli.Context) {
	if len(ctx.Args()) != 1 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg, err := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	if err != nil {
		errExit(ctx, err, false)
	}

	content, err := ioutil.ReadAll(os.Stdin)
	if err != nil {
		errExit(ctx, err, false)
	}

	tenant := &config.TenantConfig{}

	if err := json.Unmarshal(content, tenant); err != nil {
		errExit(ctx, err, false)
	}

	if err := cfg.PublishTenant(ctx.Args()[0], tenant); err != nil {
		errExit(ctx, err, false)
	}
}
开发者ID:hankerepo,项目名称:volplugin,代码行数:26,代码来源:volcli.go

示例2: TenantGet

// TenantGet retrieves tenant configuration, the name of which is supplied as
// an argument.
func TenantGet(ctx *cli.Context) {
	if len(ctx.Args()) != 1 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	tenant := ctx.Args()[0]

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	value, err := cfg.GetTenant(tenant)
	if err != nil {
		errExit(ctx, err, false)
	}

	// The following lines pretty-print the json by re-evaluating it. This is
	// purely a nicety for the CLI and is not necessary to use the tool.
	tenantObj := &config.TenantConfig{}

	if err := json.Unmarshal([]byte(value), tenantObj); err != nil {
		errExit(ctx, err, false)
	}

	content, err := ppJSON(tenantObj)
	if err != nil {
		errExit(ctx, err, false)
	}

	fmt.Println(string(content))
}
开发者ID:cloudstrack,项目名称:volplugin,代码行数:30,代码来源:volcli.go

示例3: MountForceRemove

// MountForceRemove deletes the mount entry from etcd; useful for clearing a
// stale mount.
func MountForceRemove(ctx *cli.Context) {
	if len(ctx.Args()) != 2 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	if err := cfg.RemoveMount(&config.MountConfig{Pool: ctx.Args()[0], Volume: ctx.Args()[1]}); err != nil {
		errExit(ctx, err, false)
	}
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:12,代码来源:volcli.go

示例4: start

func start(ctx *cli.Context) {
	if ctx.Bool("debug") {
		log.SetLevel(log.DebugLevel)
		log.Debug("Debug logging enabled")
	}

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))

	daemon(cfg, ctx.Bool("debug"), ctx.String("listen"))
}
开发者ID:leochencipher,项目名称:volplugin,代码行数:10,代码来源:cli.go

示例5: MountList

// MountList returns a list of the mounts the volmaster knows about.
func MountList(ctx *cli.Context) {
	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	mounts, err := cfg.ListMounts()
	if err != nil {
		errExit(ctx, err, false)
	}

	for _, name := range mounts {
		fmt.Println(name)
	}
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:12,代码来源:volcli.go

示例6: VolumeListAll

// VolumeListAll returns a list of the pools the volmaster knows about.
func VolumeListAll(ctx *cli.Context) {
	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	pools, err := cfg.ListAllVolumes()
	if err != nil {
		errExit(ctx, err, false)
	}

	for _, name := range pools {
		fmt.Println(name)
	}
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:12,代码来源:volcli.go

示例7: start

func start(ctx *cli.Context) {
	if ctx.Bool("debug") {
		log.SetLevel(log.DebugLevel)
		log.Debug("Debug logging enabled")
	}

	cfg, err := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	if err != nil {
		log.Fatal(err)
	}

	volsupervisor.Daemon(cfg)
}
开发者ID:hankerepo,项目名称:volplugin,代码行数:13,代码来源:cli.go

示例8: TenantDelete

// TenantDelete removes a tenant supplied as an argument.
func TenantDelete(ctx *cli.Context) {
	if len(ctx.Args()) != 1 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	tenant := ctx.Args()[0]

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	if err := cfg.DeleteTenant(tenant); err != nil {
		errExit(ctx, err, false)
	}

	fmt.Printf("%q removed!\n", tenant)
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:15,代码来源:volcli.go

示例9: VolumeForceRemove

// VolumeForceRemove removes a volume forcefully.
func VolumeForceRemove(ctx *cli.Context) {
	if len(ctx.Args()) != 2 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg, err := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	if err != nil {
		errExit(ctx, err, false)
	}

	if err := cfg.RemoveVolume(ctx.Args()[0], ctx.Args()[1]); err != nil {
		errExit(ctx, err, false)
	}
}
开发者ID:hankerepo,项目名称:volplugin,代码行数:15,代码来源:volcli.go

示例10: TenantList

// TenantList provides a list of the tenant names.
func TenantList(ctx *cli.Context) {
	if len(ctx.Args()) != 0 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	tenants, err := cfg.ListTenants()
	if err != nil {
		errExit(ctx, err, false)
	}

	for _, tenant := range tenants {
		fmt.Println(path.Base(tenant))
	}
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:16,代码来源:volcli.go

示例11: VolumeList

// VolumeList prints the list of volumes for a pool.
func VolumeList(ctx *cli.Context) {
	if len(ctx.Args()) != 1 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	vols, err := cfg.ListVolumes(ctx.Args()[0])
	if err != nil {
		errExit(ctx, err, false)
	}

	for name := range vols {
		fmt.Println(name)
	}
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:16,代码来源:volcli.go

示例12: MountGet

// MountGet retrieves the JSON information for a mount.
func MountGet(ctx *cli.Context) {
	if len(ctx.Args()) != 2 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	mount, err := cfg.GetMount(ctx.Args()[0], ctx.Args()[1])
	if err != nil {
		errExit(ctx, err, false)
	}

	content, err := ppJSON(mount)
	if err != nil {
		errExit(ctx, err, false)
	}

	fmt.Println(string(content))
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:19,代码来源:volcli.go

示例13: TenantGet

// TenantGet retrieves tenant configuration, the name of which is supplied as
// an argument.
func TenantGet(ctx *cli.Context) {
	if len(ctx.Args()) != 1 {
		errExit(ctx, fmt.Errorf("Invalid arguments"), true)
	}

	tenant := ctx.Args()[0]

	cfg := config.NewTopLevelConfig(ctx.String("prefix"), ctx.StringSlice("etcd"))
	value, err := cfg.GetTenant(tenant)
	if err != nil {
		errExit(ctx, err, false)
	}

	content, err := ppJSON(value)
	if err != nil {
		errExit(ctx, err, false)
	}

	fmt.Println(string(content))
}
开发者ID:jainvipin,项目名称:volplugin,代码行数:22,代码来源:volcli.go


注:本文中的github.com/contiv/volplugin/config.NewTopLevelConfig函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。