github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/payload/status/util_test.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package status 5 6 import ( 7 "fmt" 8 9 "gopkg.in/juju/charm.v6-unstable" 10 11 "github.com/juju/juju/payload" 12 ) 13 14 func NewPayload(name, service string, machine, unit int, labels ...string) payload.FullPayloadInfo { 15 if len(labels) == 0 { 16 labels = nil 17 } 18 return payload.FullPayloadInfo{ 19 Payload: payload.Payload{ 20 PayloadClass: charm.PayloadClass{ 21 Name: name, 22 Type: "docker", 23 }, 24 ID: "id" + name, 25 Status: payload.StateRunning, 26 Labels: labels, 27 Unit: fmt.Sprintf("%s/%d", service, unit), 28 }, 29 Machine: fmt.Sprintf("%d", machine), 30 } 31 } 32 33 func Formatted(payloads ...payload.FullPayloadInfo) []FormattedPayload { 34 var formatted []FormattedPayload 35 for _, payload := range payloads { 36 formatted = append(formatted, FormatPayload(payload)) 37 } 38 return formatted 39 }