func (d Deployment) CloudProvider(account string) (string, error) {
	return cloudProvider, nil
}
CloudProvider implements deploy.Deployment.CloudProvider
package mock
import (
	"github.com/pkg/errors"
	D "github.com/Netflix/chaosmonkey/deploy"
)
const cloudProvider = "aws"
func Dep() D.Deployment {
	prod := D.AccountName("prod")
	test := D.AccountName("test")
	usEast1 := D.RegionName("us-east-1")
	return &Deployment{map[string]D.AppMap{
		"foo":  {prod: D.AccountInfo{CloudProvider: cloudProvider, Clusters: D.ClusterMap{"foo-prod": {usEast1: {"foo-prod-v001": []D.InstanceID{"i-d3e3d611", "i-63f52e25"}}}}}},
		"bar":  {prod: D.AccountInfo{CloudProvider: cloudProvider, Clusters: D.ClusterMap{"bar-prod": {usEast1: {"bar-prod-v011": []D.InstanceID{"i-d7f06d45", "i-ce433cf1"}}}}}},
		"baz":  {prod: D.AccountInfo{CloudProvider: cloudProvider, Clusters: D.ClusterMap{"baz-prod": {usEast1: {"baz-prod-v004": []D.InstanceID{"i-25b86646", "i-573d46d5"}}}}}},
		"quux": {test: D.AccountInfo{CloudProvider: cloudProvider, Clusters: D.ClusterMap{"quux-test": {usEast1: {"quux-test-v004": []D.InstanceID{"i-25b866ab", "i-892d46d5"}}}}}},
	}}
}
func NewDeployment(apps map[string]D.AppMap) D.Deployment {
	return &Deployment{apps}
}
type Deployment struct {
	AppMap map[string]D.AppMap
}
func (d Deployment) Apps(c chan<- *D.App, apps []string) {
	defer close(c)
	for name, appmap := range d.AppMap {
		c <- D.NewApp(name, appmap)
	}
}
func (d Deployment) GetClusterNames(app string, account D.AccountName) ([]D.ClusterName, error) {
	result := make([]D.ClusterName, 0)
	for cluster := range d.AppMap[app][account].Clusters {
		result = append(result, cluster)
	}
	return result, nil
}
func (d Deployment) GetRegionNames(app string, account D.AccountName, cluster D.ClusterName) ([]D.RegionName, error) {
	result := make([]D.RegionName, 0)
	for region := range d.AppMap[app][account].Clusters[cluster] {
		result = append(result, region)
	}
	return result, nil
}
func (d Deployment) AppNames() ([]string, error) {
	result := make([]string, len(d.AppMap), len(d.AppMap))
	i := 0
	for app := range d.AppMap {
		result[i] = app
		i++
	}
	return result, nil
}
func (d Deployment) GetApp(name string) (*D.App, error) {
	return D.NewApp(name, d.AppMap[name]), nil
}