Exemple #1
0
func (p *ResourcePool) setDefaultConfig(c types.BaseResourceAllocationInfo) {
	info := c.GetResourceAllocationInfo()

	if info.Shares == nil {
		info.Shares = new(types.SharesInfo)
	}

	if info.Shares.Level == "" {
		info.Shares.Level = types.SharesLevelNormal
	}

	if info.ExpandableReservation == nil {
		info.ExpandableReservation = types.NewBool(false)
	}
}
Exemple #2
0
func writeInfo(w io.Writer, name string, units string, ru *types.ResourcePoolResourceUsage, b types.BaseResourceAllocationInfo) {
	ra := b.GetResourceAllocationInfo()
	usage := 100.0 * float64(ru.OverallUsage) / float64(ru.MaxUsage)
	shares := ""
	limit := "unlimited"

	if ra.Shares.Level == types.SharesLevelCustom {
		shares = fmt.Sprintf(" (%d)", ra.Shares.Shares)
	}

	if ra.Limit != -1 {
		limit = fmt.Sprintf("%d%s", ra.Limit, units)
	}

	fmt.Fprintf(w, "  %s Usage:\t%d%s (%0.1f%%)\n", name, ru.OverallUsage, units, usage)
	fmt.Fprintf(w, "  %s Shares:\t%s%s\n", name, ra.Shares.Level, shares)
	fmt.Fprintf(w, "  %s Reservation:\t%d%s (expandable=%v)\n", name, ra.Reservation, units, *ra.ExpandableReservation)
	fmt.Fprintf(w, "  %s Limit:\t%s\n", name, limit)
}