Exemplo n.º 1
0
func SysInit() error {
	cfg, err := config.LoadConfig()
	if err != nil {
		return err
	}

	_, err = config.ChainCfgFuncs(cfg,
		loadImages,
		func(cfg *config.CloudConfig) (*config.CloudConfig, error) {
			p, err := compose.GetProject(cfg, false)
			if err != nil {
				return cfg, err
			}
			return cfg, p.Up()
		},
		func(cfg *config.CloudConfig) (*config.CloudConfig, error) {
			syscall.Sync()
			return cfg, nil
		},
		func(cfg *config.CloudConfig) (*config.CloudConfig, error) {
			log.Infof("RancherOS %s started", config.VERSION)
			return cfg, nil
		})
	return err
}
Exemplo n.º 2
0
func (p *projectFactory) Create(c *cli.Context) (*project.Project, error) {
	cfg, err := config.LoadConfig()
	if err != nil {
		return nil, err
	}

	return compose.GetProject(cfg)
}
Exemplo n.º 3
0
Arquivo: main.go Projeto: keevol/os
func enter(cfg *config.CloudConfig) error {
	context := cfg.Rancher.Docker.StorageContext
	if context == "" {
		context = DEFAULT_STORAGE_CONTEXT
	}

	p, err := compose.GetProject(cfg)
	if err != nil {
		return err
	}

	pid, err := waitForPid(context, p)
	if err != nil {
		return err
	}

	log.Infof("%s PID %d", context, pid)

	return runNsenter(pid)
}