func (m *DefaultManager) UpdateSpaces() error {
	m.spaces = nil
	spaceConfigs, err := m.Cfg.GetSpaceConfigs()
	if err != nil {
		return err
	}
	err = m.init()
	if err != nil {
		return err
	}
	for _, input := range spaceConfigs {
		space, err := m.FindSpace(input.Org, input.Space)
		if err != nil {
			continue
		}
		lo.G.Debug("Processing space", space.Name)
		if input.AllowSSHUntil != "" {
			allowUntil, err := time.Parse(time.RFC3339, input.AllowSSHUntil)
			if err != nil {
				return errors.Wrap(err, fmt.Sprintf("Unable to parse %s with format %s", input.AllowSSHUntil, time.RFC3339))
			}
			if allowUntil.After(time.Now()) && !space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: temporarily enabling sshAllowed for org/space %s/%s until %s", input.Org, space.Name, input.AllowSSHUntil)
					continue
				}
				lo.G.Infof("temporarily enabling sshAllowed for org/space %s/%s until %s", input.Org, space.Name, input.AllowSSHUntil)
				if err := m.UpdateSpaceSSH(true, space, input.Org); err != nil {
					return err
				}
			}
			if allowUntil.Before(time.Now()) && space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: removing temporarily enabling sshAllowed for org/space %s/%s as past %s", input.Org, space.Name, input.AllowSSHUntil)
					continue
				}
				lo.G.Infof("removing temporarily enabling sshAllowed for org/space %s/%s as past %s", input.Org, space.Name, input.AllowSSHUntil)
				if err := m.UpdateSpaceSSH(false, space, input.Org); err != nil {
					return err
				}
			}
		} else {
			if input.AllowSSH != space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: setting sshAllowed to %v for org/space %s/%s", input.AllowSSH, input.Org, space.Name)
					continue
				}
				lo.G.Infof("setting sshAllowed to %v for org/space %s/%s", input.AllowSSH, input.Org, space.Name)
				if err := m.UpdateSpaceSSH(input.AllowSSH, space, input.Org); err != nil {
					return err
				}
			}
		}
	}
	m.spaces = nil
	return nil
}
func (m *DefaultManager) UpdateSpaces() error {
	m.spaces = nil
	spaceConfigs, err := m.Cfg.GetSpaceConfigs()
	if err != nil {
		return err
	}
	err = m.init()
	if err != nil {
		return err
	}
	for _, input := range spaceConfigs {
		space, err := m.FindSpace(input.Org, input.Space)
		if err != nil {
			continue
		}
		lo.G.Debug("Processing space", space.Name)
		if input.AllowSSHUntil != "" {
			allowUntil, err := time.Parse(time.RFC3339, input.AllowSSHUntil)
			if err != nil {
				return errors.Wrap(err, fmt.Sprintf("Unable to parse %s with format %s", input.AllowSSHUntil, time.RFC3339))
			}
			if allowUntil.After(time.Now()) && !space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: temporarily enabling sshAllowed for org/space %s/%s until %s", input.Org, space.Name, input.AllowSSHUntil)
					continue
				}
				lo.G.Infof("temporarily enabling sshAllowed for org/space %s/%s until %s", input.Org, space.Name, input.AllowSSHUntil)
				if err := m.UpdateSpaceSSH(true, space, input.Org); err != nil {
					return err
				}
			}
			if allowUntil.Before(time.Now()) && space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: removing temporarily enabling sshAllowed for org/space %s/%s as past %s", input.Org, space.Name, input.AllowSSHUntil)
					continue
				}
				lo.G.Infof("removing temporarily enabling sshAllowed for org/space %s/%s as past %s", input.Org, space.Name, input.AllowSSHUntil)
				if err := m.UpdateSpaceSSH(false, space, input.Org); err != nil {
					return err
				}
			}
		} else {
			if input.AllowSSH != space.AllowSSH {
				if m.Peek {
					lo.G.Infof("[dry-run]: setting sshAllowed to %v for org/space %s/%s", input.AllowSSH, input.Org, space.Name)
					continue
				}
				lo.G.Infof("setting sshAllowed to %v for org/space %s/%s", input.AllowSSH, input.Org, space.Name)
				if err := m.UpdateSpaceSSH(input.AllowSSH, space, input.Org); err != nil {
					return err
				}
			}
		}
	}
	m.spaces = nil
	return nil
}
func ( m * DefaultManager ) UpdateSpaces ( ) error { m . spaces = nil spaceConfigs , err := m . Cfg . GetSpaceConfigs ( ) if err != nil { return err } err = m . init ( ) if err != nil { return err } for _ , input := range spaceConfigs { space , err := m . FindSpace ( input . Org , input . Space ) if err != nil { continue } lo . G . Debug ( " " , space . Name ) if input . AllowSSHUntil != " " { allowUntil , err := time . Parse ( time . RFC3339 , input . AllowSSHUntil ) if err != nil { return errors . Wrap ( err , fmt . Sprintf ( " " , input . AllowSSHUntil , time . RFC3339 ) ) } if allowUntil . After ( time . Now ( ) ) && ! space . AllowSSH { if m . Peek { lo . G . Infof ( " " , input . Org , space . Name , input . AllowSSHUntil ) continue } lo . G . Infof ( " " , input . Org , space . Name , input . AllowSSHUntil ) if err := m . UpdateSpaceSSH ( true , space , input . Org ) ; err != nil { return err } } if allowUntil . Before ( time . Now ( ) ) && space . AllowSSH { if m . Peek { lo . G . Infof ( " " , input . Org , space . Name , input . AllowSSHUntil ) continue } lo . G . Infof ( " " , input . Org , space . Name , input . AllowSSHUntil ) if err := m . UpdateSpaceSSH ( false , space , input . Org ) ; err != nil { return err } } } else { if input . AllowSSH != space . AllowSSH { if m . Peek { lo . G . Infof ( " " , input . AllowSSH , input . Org , space . Name ) continue } lo . G . Infof ( " " , input . AllowSSH , input . Org , space . Name ) if err := m . UpdateSpaceSSH ( input . AllowSSH , space , input . Org ) ; err != nil { return err } } } } m . spaces = nil return nil }
//UpdateSpaces -
UpdateSpaces -