From b870ac2eaa1cf79e7db2fdf473df9f66c194c255 Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Sun, 17 Dec 2017 22:48:29 +0800 Subject: [PATCH 1/7] [hyper-provider] 1.fix hyper.NewClient 2.add instanceType 3.fix incrementRefCounters and decrementRefCounters --- manager/resource.go | 8 ++--- providers/hypersh/config.go | 8 ++++- providers/hypersh/hypersh.go | 60 +++++++++++++++++++++++++++++++----- 3 files changed, 63 insertions(+), 13 deletions(-) diff --git a/manager/resource.go b/manager/resource.go index 55512fd77..801a13dd5 100644 --- a/manager/resource.go +++ b/manager/resource.go @@ -257,11 +257,11 @@ func (rm *ResourceManager) watchSecrets() { func (rm *ResourceManager) incrementRefCounters(p *v1.Pod) { for _, c := range p.Spec.Containers { for _, e := range c.Env { - if e.ValueFrom.ConfigMapKeyRef != nil { + if e.ValueFrom != nil && e.ValueFrom.ConfigMapKeyRef != nil { rm.configMapRef[e.ValueFrom.ConfigMapKeyRef.Name]++ } - if e.ValueFrom.SecretKeyRef != nil { + if e.ValueFrom != nil && e.ValueFrom.SecretKeyRef != nil { rm.secretRef[e.ValueFrom.SecretKeyRef.Name]++ } } @@ -277,11 +277,11 @@ func (rm *ResourceManager) incrementRefCounters(p *v1.Pod) { func (rm *ResourceManager) decrementRefCounters(p *v1.Pod) { for _, c := range p.Spec.Containers { for _, e := range c.Env { - if e.ValueFrom.ConfigMapKeyRef != nil { + if e.ValueFrom != nil && e.ValueFrom.ConfigMapKeyRef != nil { rm.configMapRef[e.ValueFrom.ConfigMapKeyRef.Name]-- } - if e.ValueFrom.SecretKeyRef != nil { + if e.ValueFrom != nil && e.ValueFrom.SecretKeyRef != nil { rm.secretRef[e.ValueFrom.SecretKeyRef.Name]-- } } diff --git a/providers/hypersh/config.go b/providers/hypersh/config.go index 59f8872c6..52f61b075 100644 --- a/providers/hypersh/config.go +++ b/providers/hypersh/config.go @@ -4,8 +4,8 @@ import ( "fmt" "io" - "github.com/virtual-kubelet/virtual-kubelet/providers" "github.com/BurntSushi/toml" + "github.com/virtual-kubelet/virtual-kubelet/providers" ) type providerConfig struct { @@ -15,6 +15,7 @@ type providerConfig struct { OperatingSystem string CPU string Memory string + InstanceType string Pods string } @@ -27,6 +28,11 @@ func (p *HyperProvider) loadConfig(r io.Reader) error { p.accessKey = config.AccessKey p.secretKey = config.SecretKey + p.instanceType = "s4" + if config.InstanceType != "" { + p.instanceType = config.InstanceType + } + // Default to 20 mcpu p.cpu = "20" if config.CPU != "" { diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go index 838da8732..15007fa8a 100644 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -6,8 +6,11 @@ import ( "log" "net/http" "os" + "runtime" "github.com/docker/go-connections/nat" + "github.com/docker/go-connections/sockets" + "github.com/docker/go-connections/tlsconfig" hyper "github.com/hyperhq/hyper-api/client" "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hyper-api/types/container" @@ -20,11 +23,13 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) +var host = "tcp://*.hyper.sh:443" + const ( - host = "https://us-west-1.hyper.sh" - verStr = "v1.23" - containerLabel = "hyper-virtual-kubelet" - nodeLabel = containerLabel + "-node" + verStr = "v1.23" + containerLabel = "hyper-virtual-kubelet" + nodeLabel = containerLabel + "-node" + instanceTypeLabel = "sh_hyper_instancetype" ) // HyperProvider implements the virtual-kubelet provider interface and communicates with hyper.sh APIs. @@ -38,6 +43,7 @@ type HyperProvider struct { secretKey string cpu string memory string + instanceType string pods string } @@ -72,10 +78,21 @@ func NewHyperProvider(config string, rm *manager.ResourceManager, nodeName, oper p.region = r } + if it := os.Getenv("HYPERSH_INSTANCE_TYPE"); it != "" { + p.instanceType = it + } + + host = fmt.Sprintf("tcp://%v.hyper.sh:443", p.region) + httpClient, err := newHTTPClient(host, &tlsconfig.Options{InsecureSkipVerify: false}) + + customHeaders := map[string]string{} + ver := "0.1" + customHeaders["User-Agent"] = fmt.Sprintf("Virtual-Kubelet-Client/%v (%v)", ver, runtime.GOOS) + p.operatingSystem = operatingSystem p.nodeName = nodeName - p.hyperClient, err = hyper.NewClient(host, verStr, http.DefaultClient, nil, p.accessKey, p.secretKey, p.region) + p.hyperClient, err = hyper.NewClient(host, verStr, httpClient, customHeaders, p.accessKey, p.secretKey, p.region) if err != nil { return nil, err } @@ -83,6 +100,31 @@ func NewHyperProvider(config string, rm *manager.ResourceManager, nodeName, oper return &p, nil } +func newHTTPClient(host string, tlsOptions *tlsconfig.Options) (*http.Client, error) { + if tlsOptions == nil { + // let the api client configure the default transport. + return nil, nil + } + + config, err := tlsconfig.Client(*tlsOptions) + if err != nil { + return nil, err + } + tr := &http.Transport{ + TLSClientConfig: config, + } + proto, addr, _, err := hyper.ParseHost(host) + if err != nil { + return nil, err + } + + sockets.ConfigureTransport(tr, proto, addr) + + return &http.Client{ + Transport: tr, + }, nil +} + // CreatePod accepts a Pod definition and creates // a hyper.sh deployment func (p *HyperProvider) CreatePod(pod *v1.Pod) error { @@ -98,10 +140,12 @@ func (p *HyperProvider) CreatePod(pod *v1.Pod) error { // Iterate over the containers to create and start them. for k, ctr := range containers { containerName := fmt.Sprintf("pod-%s-%s", pod.Name, pod.Spec.Containers[k].Name) + // Add labels to the pod containers. ctr.Labels = map[string]string{ - containerLabel: pod.Name, - nodeLabel: p.nodeName, + containerLabel: pod.Name, + nodeLabel: p.nodeName, + instanceTypeLabel: p.instanceType, } // Create the container. @@ -147,7 +191,7 @@ func (p *HyperProvider) GetPodStatus(namespace, name string) (*v1.PodStatus, err // GetPods returns a list of all pods known to be running within hyper.sh. func (p *HyperProvider) GetPods() ([]*v1.Pod, error) { - filter, err := filters.FromParam(nodeLabel + "=" + p.nodeName) + filter, err := filters.FromParam(fmt.Sprintf("{\"%v\":{\"%v\":true}}", nodeLabel, p.nodeName)) if err != nil { return nil, fmt.Errorf("Creating filter to get containers by node name failed: %v", err) } From e58802908616e7aace6da81ae7ebfe965c773e92 Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Mon, 18 Dec 2017 17:14:39 +0800 Subject: [PATCH 2/7] [hyper-provider] fix for HostPort is 0 --- providers/hypersh/hypersh.go | 4 ++++ 1 file changed, 4 insertions(+) mode change 100644 => 100755 providers/hypersh/hypersh.go diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go old mode 100644 new mode 100755 index 15007fa8a..f9c99ff36 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -285,6 +285,10 @@ func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, err ports := map[nat.Port]struct{}{} portBindings := nat.PortMap{} for _, p := range ctr.Ports { + //TODO: p.HostPort is 0 by default, but it's invalid in hyper.sh + if p.HostPort == 0 { + p.HostPort = p.ContainerPort + } port, err := nat.NewPort(string(p.Protocol), fmt.Sprintf("%d", p.HostPort)) if err != nil { return nil, nil, fmt.Errorf("creating new port in container conversion failed: %v", err) From 785d223eee527a76a3810ca68ad93550cb6f9dec Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Wed, 20 Dec 2017 01:37:04 +0800 Subject: [PATCH 3/7] [hyper-provider] 1.fix start container 2.support DeletePod --- providers/hypersh/hypersh.go | 251 ++++++++++++++++++++++++++++++++--- 1 file changed, 232 insertions(+), 19 deletions(-) diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go index f9c99ff36..654816edd 100755 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -7,6 +7,8 @@ import ( "net/http" "os" "runtime" + "strings" + "time" "github.com/docker/go-connections/nat" "github.com/docker/go-connections/sockets" @@ -82,12 +84,12 @@ func NewHyperProvider(config string, rm *manager.ResourceManager, nodeName, oper p.instanceType = it } - host = fmt.Sprintf("tcp://%v.hyper.sh:443", p.region) + host = fmt.Sprintf("tcp://%s.hyper.sh:443", p.region) httpClient, err := newHTTPClient(host, &tlsconfig.Options{InsecureSkipVerify: false}) customHeaders := map[string]string{} ver := "0.1" - customHeaders["User-Agent"] = fmt.Sprintf("Virtual-Kubelet-Client/%v (%v)", ver, runtime.GOOS) + customHeaders["User-Agent"] = fmt.Sprintf("Virtual-Kubelet-Client/%s (%s)", ver, runtime.GOOS) p.operatingSystem = operatingSystem p.nodeName = nodeName @@ -128,8 +130,15 @@ func newHTTPClient(host string, tlsOptions *tlsconfig.Options) (*http.Client, er // CreatePod accepts a Pod definition and creates // a hyper.sh deployment func (p *HyperProvider) CreatePod(pod *v1.Pod) error { + log.Printf("receive CreatePod %q\n", pod.Name) - // get containers + //Ignore daemonSet Pod + if pod != nil && pod.OwnerReferences != nil && len(pod.OwnerReferences) != 0 && pod.OwnerReferences[0].Kind == "DaemonSet" { + log.Printf("Skip to create DaemonSet pod %q\n", pod.Name) + return nil + } + + // Get containers containers, hostConfigs, err := getContainers(pod) if err != nil { return err @@ -139,6 +148,7 @@ func (p *HyperProvider) CreatePod(pod *v1.Pod) error { // Iterate over the containers to create and start them. for k, ctr := range containers { + //one container in a Pod in hyper.sh currently containerName := fmt.Sprintf("pod-%s-%s", pod.Name, pod.Spec.Containers[k].Name) // Add labels to the pod containers. @@ -147,23 +157,26 @@ func (p *HyperProvider) CreatePod(pod *v1.Pod) error { nodeLabel: p.nodeName, instanceTypeLabel: p.instanceType, } + hostConfigs[k].NetworkMode = "bridge" // Create the container. resp, err := p.hyperClient.ContainerCreate(context.Background(), &ctr, &hostConfigs[k], &network.NetworkingConfig{}, containerName) if err != nil { - return fmt.Errorf("Creating container %q failed in pod %q: %v", containerName, pod.Name, err) + return err } + log.Printf("container %q for pod %q was created\n", resp.ID, pod.Name) + // Iterate throught the warnings. for _, warning := range resp.Warnings { - log.Printf("Warning while creating container %q for pod %q: %s", containerName, pod.Name, warning) + log.Printf("warning while creating container %q for pod %q: %s", containerName, pod.Name, warning) } // Start the container. if err := p.hyperClient.ContainerStart(context.Background(), resp.ID, ""); err != nil { - return fmt.Errorf("Starting container %q failed in pod %q: %v", containerName, pod.Name, err) + return err } + log.Printf("container %q for pod %q was started\n", resp.ID, pod.Name) } - return nil } @@ -173,40 +186,101 @@ func (p *HyperProvider) UpdatePod(pod *v1.Pod) error { } // DeletePod deletes the specified pod out of hyper.sh. -func (p *HyperProvider) DeletePod(pod *v1.Pod) error { +func (p *HyperProvider) DeletePod(pod *v1.Pod) (err error) { + log.Printf("receive DeletePod %q\n", pod.Name) + var ( + containerName = fmt.Sprintf("pod-%s-%s", pod.Name, pod.Name) + container types.ContainerJSON + ) + // Inspect hyper container + container, err = p.hyperClient.ContainerInspect(context.Background(), containerName) + if err != nil { + return err + } + // Check container label + if v, ok := container.Config.Labels[containerLabel]; ok { + // Check value of label + if v != pod.Name { + return fmt.Errorf("the label %q of hyper container %q should be %q, but it's %q currently", pod.Name, containerLabel, container.Name, pod.Name, v) + } + rmOptions := types.ContainerRemoveOptions{ + RemoveVolumes: true, + Force: true, + } + // Delete hyper container + resp, err := p.hyperClient.ContainerRemove(context.Background(), container.ID, rmOptions) + if err != nil { + return err + } + // Iterate throught the warnings. + for _, warning := range resp { + log.Printf("warning while deleting container %q for pod %q: %s", container.ID, pod.Name, warning) + } + log.Printf("container %q for pod %q was deleted\n", container.ID, pod.Name) + } else { + return fmt.Errorf("hyper container %q has no label %q", pod.Name, container.Name, containerLabel) + } return nil } // GetPod returns a pod by name that is running inside hyper.sh // returns nil if a pod by that name is not found. -func (p *HyperProvider) GetPod(namespace, name string) (*v1.Pod, error) { - return nil, nil +func (p *HyperProvider) GetPod(namespace, name string) (pod *v1.Pod, err error) { + var ( + containerName = fmt.Sprintf("pod-%s-%s", name, name) + container types.ContainerJSON + ) + // Inspect hyper container + container, err = p.hyperClient.ContainerInspect(context.Background(), containerName) + if err != nil { + return nil, err + } + // Convert hyper container into Pod + pod, err = containerJSONToPod(&container) + if err != nil { + return nil, err + } else { + return pod, nil + } } // GetPodStatus returns the status of a pod by name that is running inside hyper.sh // returns nil if a pod by that name is not found. func (p *HyperProvider) GetPodStatus(namespace, name string) (*v1.PodStatus, error) { - return nil, nil + pod, err := p.GetPod(namespace, name) + if err != nil { + return nil, err + } + return &pod.Status, nil } // GetPods returns a list of all pods known to be running within hyper.sh. func (p *HyperProvider) GetPods() ([]*v1.Pod, error) { - filter, err := filters.FromParam(fmt.Sprintf("{\"%v\":{\"%v\":true}}", nodeLabel, p.nodeName)) + log.Printf("receive GetPods\n") + filter, err := filters.FromParam(fmt.Sprintf("{\"label\":{\"%s=%s\":true}}", nodeLabel, p.nodeName)) if err != nil { - return nil, fmt.Errorf("Creating filter to get containers by node name failed: %v", err) + return nil, err } // Filter by label. - _, err = p.hyperClient.ContainerList(context.Background(), types.ContainerListOptions{ + containers, err := p.hyperClient.ContainerList(context.Background(), types.ContainerListOptions{ Filter: filter, All: true, }) if err != nil { - return nil, fmt.Errorf("Listing containers failed: %v", err) + return nil, err } + log.Printf("found %d pods\n", len(containers)) - // TODO: convert containers into pods - - return nil, nil + var pods = []*v1.Pod{} + for _, container := range containers { + pod, err := containerToPod(&container) + if err != nil { + fmt.Errorf("convert container %q to pod error: %v\n", container.ID, err) + continue + } + pods = append(pods, pod) + } + return pods, nil } // Capacity returns a resource list containing the capacity limits set for hyper.sh. @@ -289,7 +363,7 @@ func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, err if p.HostPort == 0 { p.HostPort = p.ContainerPort } - port, err := nat.NewPort(string(p.Protocol), fmt.Sprintf("%d", p.HostPort)) + port, err := nat.NewPort(strings.ToLower(string(p.Protocol)), fmt.Sprintf("%d", p.HostPort)) if err != nil { return nil, nil, fmt.Errorf("creating new port in container conversion failed: %v", err) } @@ -297,6 +371,7 @@ func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, err portBindings[port] = []nat.PortBinding{ { + HostIP: "0.0.0.0", HostPort: fmt.Sprintf("%d", p.HostPort), }, } @@ -328,3 +403,141 @@ func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, err } return containers, hostConfigs, nil } + +func containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { + // TODO: convert containers into pods + podName, found := container.Config.Labels[containerLabel] + if !found { + return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) + } + + nodeName, found := container.Config.Labels[nodeLabel] + if !found { + return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) + } + + created, err := time.Parse(time.RFC3339, container.Created) + if err != nil { + return nil, fmt.Errorf("parse Created time failed:%v", container.Created) + } + + p := v1.Pod{ + TypeMeta: metav1.TypeMeta{ + Kind: "Pod", + APIVersion: "v1", + }, + ObjectMeta: metav1.ObjectMeta{ + Name: podName, + Namespace: "default", + CreationTimestamp: metav1.NewTime(created), + }, + Spec: v1.PodSpec{ + NodeName: nodeName, + Volumes: []v1.Volume{}, + Containers: []v1.Container{ + { + Name: podName, + Image: container.Config.Image, + Command: container.Config.Cmd, + }, + }, + }, + Status: v1.PodStatus{ + Phase: hyperStateToPodPhase(container.State.Status), + Conditions: []v1.PodCondition{}, + Message: "", + Reason: "", + HostIP: "", + PodIP: container.NetworkSettings.IPAddress, + ContainerStatuses: []v1.ContainerStatus{ + { + Name: "", + State: v1.ContainerState{}, + Ready: container.State.Running, + RestartCount: int32(container.RestartCount), + Image: container.Config.Image, + ImageID: container.Image, + ContainerID: container.ID, + }, + }, + }, + } + + return &p, nil +} + +func containerToPod(container *types.Container) (*v1.Pod, error) { + // TODO: convert containers into pods + podName, found := container.Labels[containerLabel] + if !found { + return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) + } + + nodeName, found := container.Labels[nodeLabel] + if !found { + return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) + } + + p := v1.Pod{ + TypeMeta: metav1.TypeMeta{ + Kind: "Pod", + APIVersion: "v1", + }, + ObjectMeta: metav1.ObjectMeta{ + Name: podName, + Namespace: "default", + ClusterName: "", + UID: "", + CreationTimestamp: metav1.NewTime(time.Unix(container.Created, 0)), + }, + Spec: v1.PodSpec{ + NodeName: nodeName, + Volumes: []v1.Volume{}, + Containers: []v1.Container{ + { + Name: podName, + Image: container.Image, + Command: strings.Split(container.Command, " "), + Resources: v1.ResourceRequirements{}, + }, + }, + }, + Status: v1.PodStatus{ + //Phase: "", + Conditions: []v1.PodCondition{}, + Message: "", + Reason: "", + HostIP: "", + PodIP: "", + ContainerStatuses: []v1.ContainerStatus{ + { + Name: container.Names[0], + Ready: string(container.State) == string(v1.PodRunning), + Image: container.Image, + ImageID: container.ImageID, + ContainerID: container.ID, + }, + }, + }, + } + + return &p, nil +} + +func hyperStateToPodPhase(state string) v1.PodPhase { + switch strings.ToLower(state) { + case "running": + return v1.PodRunning + case "paused": + return v1.PodSucceeded + case "restarting": + return v1.PodPending + case "created": + return v1.PodPending + case "dead": + return v1.PodFailed + case "exited": + return v1.PodFailed + } + return v1.PodUnknown +} From fb34a8c990ac0c1938cc4bbf5dcadc5f09b003ea Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Wed, 20 Dec 2017 17:36:50 +0800 Subject: [PATCH 4/7] [hyper-provider] 1.add doc 2.support read hyper config file --- providers/hypersh/README.md | 124 +++++++++++++++++++++++++++ providers/hypersh/config.go | 64 -------------- providers/hypersh/example.toml | 8 -- providers/hypersh/hypersh.go | 149 ++++++++++++++++++++++++++------- 4 files changed, 245 insertions(+), 100 deletions(-) create mode 100644 providers/hypersh/README.md delete mode 100644 providers/hypersh/config.go delete mode 100644 providers/hypersh/example.toml diff --git a/providers/hypersh/README.md b/providers/hypersh/README.md new file mode 100644 index 000000000..8a871517a --- /dev/null +++ b/providers/hypersh/README.md @@ -0,0 +1,124 @@ +hyper.sh provider for virtual-kubelet +===================================== + +# Configure for hyper.sh + +## Use environment variable + +- necessary + - HYPER_ACCESS_KEY + - HYPER_SECRET_KEY +- optional + - HYPER_INSTANCE_TYPE: default s4 + - HYPER_DEFAULT_REGION: default us-west-1 + - HYPER_HOST: tcp://${HYPER_DEFAULT_REGION}.hyper.sh:443 + +> You can use You can use either HYPER_HOST or HYPER_DEFAULT_REGION + + +## Use config file + +> default config file for hyper.sh is ~/.hyper/config.json + +``` +//example configuration file for Hyper.sh +{ + "auths": { + "https://index.docker.io/v1/": { + "auth": "xxxxxx", + "email": "xxxxxx" + }, + }, + "clouds": { + "tcp://*.hyper.sh:443": { + "accesskey": "xxxxxx", + "secretkey": "xxxxxx", + "region": "us-west-1" + } + } +} +``` + +# Usage of virtual-kubelet cli + +``` +// example 1 : use environment variable +export HYPER_ACCESS_KEY=xxxxxx +export HYPER_SECRET_KEY=xxxxxx +export HYPER_DEFAULT_REGION=eu-central-1 +export HYPER_INSTANCE_TYPE=s4 +./virtual-kubelet --provider=hyper + + +// example 2 : use default config file(~/.hyper/config.json) +unset HYPER_ACCESS_KEY +unset HYPER_SECRET_KEY +export HYPER_DEFAULT_REGION=eu-central-1 +./virtual-kubelet --provider=hyper + + +// example 3 : use custom config file, eg: ~/.hyper2/config.json +$ ./virtual-kubelet --provider=hyper --provider-config=$HOME/.hyper2 +``` + + +# Quick Start + +## create pod yaml + +``` +$ cat pod-nginx +apiVersion: v1 +kind: Pod +metadata: + name: nginx +spec: + nodeName: virtual-kubelet + containers: + - name: nginx + image: nginx:latest + ports: + - containerPort: 80 +``` + +## create pod + +``` +$ kubectl create -f pod-nginx +``` + +## list container on hyper.sh + +``` +$ hyper ps +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES PUBLIC IP +a0ae3d4112d5 nginx:latest "nginx -g 'daemon off" 9 seconds ago Up 4 seconds 0.0.0.0:80->80/tcp pod-nginx-nginx +``` + +## server log + +``` +$ export HYPER_DEFAULT_REGION=eu-central-1 +$ ./virtual-kubelet --provider=hyper --provider-config=$HOME/.hyper3 +/home/xjimmy/.kube/config +2017/12/20 17:30:30 config file under "/home/xjimmy/.hyper3" was loaded +2017/12/20 17:30:30 + Host: tcp://eu-central-1.hyper.sh:443 + AccessKey: K********** + SecretKey: 4********** + InstanceType: s4 +2017/12/20 17:30:31 Node 'virtual-kubelet' with OS type 'Linux' registered +2017/12/20 17:30:31 receive GetPods +2017/12/20 17:30:32 found 0 pods +2017/12/20 17:30:37 receive GetPods +2017/12/20 17:30:37 found 0 pods +2017/12/20 17:30:38 Error retrieving pod 'nginx' from provider: Error: No such container: pod-nginx-nginx +2017/12/20 17:30:38 receive CreatePod "nginx" +2017/12/20 17:30:38 container "a0ae3d4112d53023b5972906f2f15c0d34360c132b3c273b286473afad613b63" for pod "nginx" was created +2017/12/20 17:30:43 container "a0ae3d4112d53023b5972906f2f15c0d34360c132b3c273b286473afad613b63" for pod "nginx" was started +2017/12/20 17:30:43 Pod 'nginx' created. +2017/12/20 17:30:43 receive GetPods +2017/12/20 17:30:43 found 1 pods +2017/12/20 17:30:47 receive GetPods +2017/12/20 17:30:47 found 1 pods +``` diff --git a/providers/hypersh/config.go b/providers/hypersh/config.go deleted file mode 100644 index 52f61b075..000000000 --- a/providers/hypersh/config.go +++ /dev/null @@ -1,64 +0,0 @@ -package hypersh - -import ( - "fmt" - "io" - - "github.com/BurntSushi/toml" - "github.com/virtual-kubelet/virtual-kubelet/providers" -) - -type providerConfig struct { - Region string - AccessKey string - SecretKey string - OperatingSystem string - CPU string - Memory string - InstanceType string - Pods string -} - -func (p *HyperProvider) loadConfig(r io.Reader) error { - var config providerConfig - if _, err := toml.DecodeReader(r, &config); err != nil { - return err - } - p.region = config.Region - p.accessKey = config.AccessKey - p.secretKey = config.SecretKey - - p.instanceType = "s4" - if config.InstanceType != "" { - p.instanceType = config.InstanceType - } - - // Default to 20 mcpu - p.cpu = "20" - if config.CPU != "" { - p.cpu = config.CPU - } - // Default to 100Gi - p.memory = "100Gi" - if config.Memory != "" { - p.memory = config.Memory - } - // Default to 20 pods - p.pods = "20" - if config.Pods != "" { - p.pods = config.Pods - } - - // Default to Linux if the operating system was not defined in the config. - if config.OperatingSystem == "" { - config.OperatingSystem = providers.OperatingSystemLinux - } - - // Validate operating system from config. - if config.OperatingSystem != providers.OperatingSystemLinux { - return fmt.Errorf("%q is not a valid operating system, only %s is valid", config.OperatingSystem, providers.OperatingSystemLinux) - } - - p.operatingSystem = config.OperatingSystem - return nil -} diff --git a/providers/hypersh/example.toml b/providers/hypersh/example.toml deleted file mode 100644 index cf439affc..000000000 --- a/providers/hypersh/example.toml +++ /dev/null @@ -1,8 +0,0 @@ -# example configuration file for Hyper.sh virtual-kubelet - -AccessKey = "" -SecretKey = "" -Region = "us-west-1" -CPU = 100 -Memory = 100Gi -Pods = 50 diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go index 654816edd..ae70e0819 100755 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -5,6 +5,7 @@ import ( "fmt" "log" "net/http" + "net/url" "os" "runtime" "strings" @@ -18,6 +19,8 @@ import ( "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hypercli/cliconfig" + "github.com/hyperhq/hypercli/opts" "github.com/virtual-kubelet/virtual-kubelet/manager" "github.com/virtual-kubelet/virtual-kubelet/providers" "k8s.io/api/core/v1" @@ -37,10 +40,12 @@ const ( // HyperProvider implements the virtual-kubelet provider interface and communicates with hyper.sh APIs. type HyperProvider struct { hyperClient *hyper.Client + configFile *cliconfig.ConfigFile resourceManager *manager.ResourceManager nodeName string operatingSystem string region string + host string accessKey string secretKey string cpu string @@ -51,41 +56,102 @@ type HyperProvider struct { // NewHyperProvider creates a new HyperProvider func NewHyperProvider(config string, rm *manager.ResourceManager, nodeName, operatingSystem string) (*HyperProvider, error) { - var p HyperProvider - var err error + var ( + p HyperProvider + err error + host string + dft bool + tlsOptions = &tlsconfig.Options{InsecureSkipVerify: false} + ) p.resourceManager = rm - if config != "" { - f, err := os.Open(config) - if err != nil { - return nil, err - } - defer f.Close() - - if err := p.loadConfig(f); err != nil { - return nil, err - } + // Get config from environment variable + if h := os.Getenv("HYPER_HOST"); h != "" { + p.host = h } - - if ak := os.Getenv("HYPERSH_ACCESS_KEY"); ak != "" { + if ak := os.Getenv("HYPER_ACCESS_KEY"); ak != "" { p.accessKey = ak } - - if sk := os.Getenv("HYPERSH_SECRET_KEY"); sk != "" { + if sk := os.Getenv("HYPER_SECRET_KEY"); sk != "" { p.secretKey = sk } - - if r := os.Getenv("HYPERSH_REGION"); r != "" { - p.region = r + if p.host == "" { + // ignore HYPER_DEFAULT_REGION when HYPER_HOST was specified + if r := os.Getenv("HYPER_DEFAULT_REGION"); r != "" { + p.region = r + } } - - if it := os.Getenv("HYPERSH_INSTANCE_TYPE"); it != "" { + if it := os.Getenv("HYPER_INSTANCE_TYPE"); it != "" { p.instanceType = it + } else { + p.instanceType = "s4" } - host = fmt.Sprintf("tcp://%s.hyper.sh:443", p.region) - httpClient, err := newHTTPClient(host, &tlsconfig.Options{InsecureSkipVerify: false}) + if p.accessKey != "" || p.secretKey != "" { + //use environment variable + if p.accessKey == "" || p.secretKey == "" { + return nil, fmt.Errorf("WARNING: Need to specify HYPER_ACCESS_KEY and HYPER_SECRET_KEY at the same time.") + } + log.Printf("Use AccessKey and SecretKey from HYPER_ACCESS_KEY and HYPER_SECRET_KEY") + if p.region == "" { + p.region = cliconfig.DefaultHyperRegion + } + if p.host == "" { + host, _, err = p.getServerHost(p.region, tlsOptions) + if err != nil { + return nil, err + } + p.host = host + } + } else { + // use config file, default path is ~/.hyper + if config == "" { + config = cliconfig.ConfigDir() + } + configFile, err := cliconfig.Load(config) + if err != nil { + return nil, fmt.Errorf("WARNING: Error loading config file %q: %v\n", config, err) + } + p.configFile = configFile + log.Printf("config file under %q was loaded\n", config) + + if p.host == "" { + host, dft, err = p.getServerHost(p.region, tlsOptions) + if err != nil { + return nil, err + } + p.host = host + } + // Get Region, AccessKey and SecretKey from config file + cc, ok := configFile.CloudConfig[p.host] + if !ok { + cc, ok = configFile.CloudConfig[cliconfig.DefaultHyperFormat] + } + if ok { + p.accessKey = cc.AccessKey + p.secretKey = cc.SecretKey + + if p.region == "" && dft { + if p.region = cc.Region; p.region == "" { + p.region = p.getDefaultRegion() + } + } + if !dft { + if p.region = cc.Region; p.region == "" { + p.region = cliconfig.DefaultHyperRegion + } + } + } else { + return nil, fmt.Errorf("WARNING: can not find entrypoint %q in config file", cliconfig.DefaultHyperFormat) + } + if p.accessKey == "" || p.secretKey == "" { + return nil, fmt.Errorf("WARNING: AccessKey or SecretKey is empty in config %q", config) + } + } + + log.Printf("\n Host: %s\n AccessKey: %s**********\n SecretKey: %s**********\n InstanceType: %s\n", p.host, p.accessKey[0:1], p.secretKey[0:1], p.instanceType) + httpClient, err := newHTTPClient(p.host, tlsOptions) customHeaders := map[string]string{} ver := "0.1" @@ -94,11 +160,15 @@ func NewHyperProvider(config string, rm *manager.ResourceManager, nodeName, oper p.operatingSystem = operatingSystem p.nodeName = nodeName - p.hyperClient, err = hyper.NewClient(host, verStr, httpClient, customHeaders, p.accessKey, p.secretKey, p.region) + p.hyperClient, err = hyper.NewClient(p.host, verStr, httpClient, customHeaders, p.accessKey, p.secretKey, p.region) + if err != nil { + return nil, err + } + //test connect to hyper.sh + _, err = p.hyperClient.Info(context.Background()) if err != nil { return nil, err } - return &p, nil } @@ -201,7 +271,7 @@ func (p *HyperProvider) DeletePod(pod *v1.Pod) (err error) { if v, ok := container.Config.Labels[containerLabel]; ok { // Check value of label if v != pod.Name { - return fmt.Errorf("the label %q of hyper container %q should be %q, but it's %q currently", pod.Name, containerLabel, container.Name, pod.Name, v) + return fmt.Errorf("the label %q of hyper container %q should be %q, but it's %q currently", containerLabel, container.Name, pod.Name, v) } rmOptions := types.ContainerRemoveOptions{ RemoveVolumes: true, @@ -218,7 +288,7 @@ func (p *HyperProvider) DeletePod(pod *v1.Pod) (err error) { } log.Printf("container %q for pod %q was deleted\n", container.ID, pod.Name) } else { - return fmt.Errorf("hyper container %q has no label %q", pod.Name, container.Name, containerLabel) + return fmt.Errorf("hyper container %q has no label %q", container.Name, containerLabel) } return nil } @@ -275,7 +345,7 @@ func (p *HyperProvider) GetPods() ([]*v1.Pod, error) { for _, container := range containers { pod, err := containerToPod(&container) if err != nil { - fmt.Errorf("convert container %q to pod error: %v\n", container.ID, err) + log.Printf("WARNING: convert container %q to pod error: %v\n", container.ID, err) continue } pods = append(pods, pod) @@ -541,3 +611,26 @@ func hyperStateToPodPhase(state string) v1.PodPhase { } return v1.PodUnknown } + +func (p *HyperProvider) getServerHost(region string, tlsOptions *tlsconfig.Options) (host string, dft bool, err error) { + dft = false + host = region + if host == "" { + host = os.Getenv("HYPER_DEFAULT_REGION") + region = p.getDefaultRegion() + } + if _, err := url.ParseRequestURI(host); err != nil { + host = "tcp://" + region + "." + cliconfig.DefaultHyperEndpoint + dft = true + } + host, err = opts.ParseHost(tlsOptions != nil, host) + return +} + +func (p *HyperProvider) getDefaultRegion() string { + cc, ok := p.configFile.CloudConfig[cliconfig.DefaultHyperFormat] + if ok && cc.Region != "" { + return cc.Region + } + return cliconfig.DefaultHyperRegion +} From 1b3d6eae8284f548b3fca1074580ea3308fc7b21 Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Thu, 21 Dec 2017 22:33:58 +0800 Subject: [PATCH 5/7] [hyper-provider] 1. support pull image 2. improve containerJSONToPod() --- providers/hypersh/hypersh.go | 135 ++++++++++++++++++++++++++++++----- 1 file changed, 118 insertions(+), 17 deletions(-) diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go index ae70e0819..dd2521e2b 100755 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -21,6 +21,8 @@ import ( "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/cliconfig" "github.com/hyperhq/hypercli/opts" + "github.com/hyperhq/hypercli/pkg/jsonmessage" + "github.com/hyperhq/hypercli/pkg/term" "github.com/virtual-kubelet/virtual-kubelet/manager" "github.com/virtual-kubelet/virtual-kubelet/providers" "k8s.io/api/core/v1" @@ -221,6 +223,10 @@ func (p *HyperProvider) CreatePod(pod *v1.Pod) error { //one container in a Pod in hyper.sh currently containerName := fmt.Sprintf("pod-%s-%s", pod.Name, pod.Spec.Containers[k].Name) + if err = p.ensureImage(ctr.Image); err != nil { + return err + } + // Add labels to the pod containers. ctr.Labels = map[string]string{ containerLabel: pod.Name, @@ -475,7 +481,6 @@ func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, err } func containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { - // TODO: convert containers into pods podName, found := container.Config.Labels[containerLabel] if !found { return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) @@ -490,6 +495,68 @@ func containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { if err != nil { return nil, fmt.Errorf("parse Created time failed:%v", container.Created) } + startedAt, err := time.Parse(time.RFC3339, container.State.StartedAt) + if err != nil { + return nil, fmt.Errorf("parse StartedAt time failed:%v", container.State.StartedAt) + } + finishedAt, err := time.Parse(time.RFC3339, container.State.FinishedAt) + if err != nil { + return nil, fmt.Errorf("parse FinishedAt time failed:%v", container.State.FinishedAt) + } + + var ( + podCondition v1.PodCondition + containerState v1.ContainerState + ) + switch hyperStateToPodPhase(container.State.Status) { + case v1.PodPending: + podCondition = v1.PodCondition{ + Type: v1.PodInitialized, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Waiting: &v1.ContainerStateWaiting{}, + } + case v1.PodRunning: // running + podCondition = v1.PodCondition{ + Type: v1.PodReady, + Status: v1.ConditionTrue, + } + containerState = v1.ContainerState{ + Running: &v1.ContainerStateRunning{ + StartedAt: metav1.NewTime(startedAt), + }, + } + case v1.PodSucceeded: // normal exit + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Terminated: &v1.ContainerStateTerminated{ + ExitCode: int32(container.State.ExitCode), + FinishedAt: metav1.NewTime(finishedAt), + }, + } + case v1.PodFailed: // exit with error + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Terminated: &v1.ContainerStateTerminated{ + ExitCode: int32(container.State.ExitCode), + FinishedAt: metav1.NewTime(finishedAt), + Reason: container.State.Error, + }, + } + default: //unkown + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionUnknown, + } + containerState = v1.ContainerState{} + } p := v1.Pod{ TypeMeta: metav1.TypeMeta{ @@ -514,25 +581,24 @@ func containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { }, Status: v1.PodStatus{ Phase: hyperStateToPodPhase(container.State.Status), - Conditions: []v1.PodCondition{}, + Conditions: []v1.PodCondition{podCondition}, Message: "", Reason: "", HostIP: "", PodIP: container.NetworkSettings.IPAddress, ContainerStatuses: []v1.ContainerStatus{ { - Name: "", - State: v1.ContainerState{}, - Ready: container.State.Running, + Name: podName, RestartCount: int32(container.RestartCount), Image: container.Config.Image, ImageID: container.Image, ContainerID: container.ID, + Ready: container.State.Running, + State: containerState, }, }, }, } - return &p, nil } @@ -548,6 +614,23 @@ func containerToPod(container *types.Container) (*v1.Pod, error) { return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) } + var ( + podCondition v1.PodCondition + isReady bool = true + ) + if strings.ToLower(string(container.State)) == strings.ToLower(string(v1.PodRunning)) { + podCondition = v1.PodCondition{ + Type: v1.PodReady, + Status: v1.ConditionTrue, + } + } else { + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + isReady = false + } + p := v1.Pod{ TypeMeta: metav1.TypeMeta{ Kind: "Pod", @@ -574,7 +657,7 @@ func containerToPod(container *types.Container) (*v1.Pod, error) { }, Status: v1.PodStatus{ //Phase: "", - Conditions: []v1.PodCondition{}, + Conditions: []v1.PodCondition{podCondition}, Message: "", Reason: "", HostIP: "", @@ -582,31 +665,31 @@ func containerToPod(container *types.Container) (*v1.Pod, error) { ContainerStatuses: []v1.ContainerStatus{ { Name: container.Names[0], - Ready: string(container.State) == string(v1.PodRunning), Image: container.Image, ImageID: container.ImageID, ContainerID: container.ID, + Ready: isReady, + State: v1.ContainerState{}, }, }, }, } - return &p, nil } func hyperStateToPodPhase(state string) v1.PodPhase { switch strings.ToLower(state) { - case "running": - return v1.PodRunning - case "paused": - return v1.PodSucceeded - case "restarting": - return v1.PodPending case "created": return v1.PodPending - case "dead": - return v1.PodFailed + case "restarting": + return v1.PodPending + case "running": + return v1.PodRunning case "exited": + return v1.PodSucceeded + case "paused": + return v1.PodSucceeded + case "dead": return v1.PodFailed } return v1.PodUnknown @@ -634,3 +717,21 @@ func (p *HyperProvider) getDefaultRegion() string { } return cliconfig.DefaultHyperRegion } + +func (p *HyperProvider) ensureImage(image string) error { + responseBody, err := p.hyperClient.ImagePull(context.Background(), image, types.ImagePullOptions{}) + if err != nil { + return err + } + defer responseBody.Close() + var ( + outFd uintptr + isTerminalOut bool + ) + _, stdout, _ := term.StdStreams() + if stdout != nil { + outFd, isTerminalOut = term.GetFdInfo(stdout) + } + jsonmessage.DisplayJSONMessagesStream(responseBody, stdout, outFd, isTerminalOut, nil) + return nil +} From a6a62678630dfbc8f44cc9d704505950a5d923f3 Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Fri, 22 Dec 2017 00:30:03 +0800 Subject: [PATCH 6/7] [hyper-provider] update hypercli in vendor --- .../github.com/hyperhq/hypercli/.dockerignore | 3 - vendor/github.com/hyperhq/hypercli/.gitignore | 42 ----- vendor/github.com/hyperhq/hypercli/.mailmap | 171 ------------------ .../hyperhq/hypercli/api/client/attach.go | 2 +- .../hyperhq/hypercli/api/client/build.go | 2 +- .../hyperhq/hypercli/api/client/cli.go | 2 +- .../hyperhq/hypercli/api/client/commit.go | 4 +- .../hyperhq/hypercli/api/client/compose.go | 6 +- .../hyperhq/hypercli/api/client/cp.go | 2 +- .../hyperhq/hypercli/api/client/create.go | 8 +- .../hyperhq/hypercli/api/client/cron.go | 10 +- .../hyperhq/hypercli/api/client/events.go | 2 +- .../hyperhq/hypercli/api/client/exec.go | 2 +- .../hyperhq/hypercli/api/client/exec_test.go | 18 +- .../hyperhq/hypercli/api/client/fip.go | 4 +- .../hypercli/api/client/formatter/custom.go | 2 +- .../api/client/formatter/custom_test.go | 2 +- .../api/client/formatter/formatter.go | 2 +- .../api/client/formatter/formatter_test.go | 2 +- .../hyperhq/hypercli/api/client/func.go | 10 +- .../hyperhq/hypercli/api/client/hijack.go | 2 +- .../hyperhq/hypercli/api/client/images.go | 4 +- .../hyperhq/hypercli/api/client/import.go | 2 +- .../hyperhq/hypercli/api/client/inspect.go | 2 +- .../hyperhq/hypercli/api/client/load.go | 2 +- .../hyperhq/hypercli/api/client/login.go | 4 +- .../hyperhq/hypercli/api/client/logs.go | 2 +- .../hyperhq/hypercli/api/client/network.go | 6 +- .../hyperhq/hypercli/api/client/ps.go | 4 +- .../hyperhq/hypercli/api/client/pull.go | 2 +- .../hyperhq/hypercli/api/client/push.go | 2 +- .../hyperhq/hypercli/api/client/rm.go | 2 +- .../hyperhq/hypercli/api/client/rmi.go | 2 +- .../hyperhq/hypercli/api/client/run.go | 2 +- .../hyperhq/hypercli/api/client/search.go | 4 +- .../hyperhq/hypercli/api/client/service.go | 6 +- .../hyperhq/hypercli/api/client/snapshot.go | 4 +- .../hyperhq/hypercli/api/client/start.go | 2 +- .../hyperhq/hypercli/api/client/stats.go | 4 +- .../hypercli/api/client/stats_helper.go | 4 +- .../hyperhq/hypercli/api/client/tag.go | 2 +- .../hyperhq/hypercli/api/client/trust.go | 4 +- .../hyperhq/hypercli/api/client/trust_test.go | 2 +- .../hyperhq/hypercli/api/client/utils.go | 6 +- .../hyperhq/hypercli/api/client/version.go | 2 +- .../hyperhq/hypercli/api/client/volume.go | 4 +- .../github.com/hyperhq/hypercli/api/common.go | 4 +- .../hyperhq/hypercli/api/common_test.go | 2 +- .../api/server/router/build/backend.go | 2 +- .../api/server/router/build/build_routes.go | 6 +- .../api/server/router/container/backend.go | 4 +- .../router/container/container_routes.go | 6 +- .../api/server/router/container/copy.go | 2 +- .../api/server/router/container/exec.go | 2 +- .../hypercli/api/server/router/local/image.go | 4 +- .../api/server/router/network/backend.go | 2 +- .../api/server/router/network/filter.go | 4 +- .../server/router/network/network_routes.go | 8 +- .../api/server/router/system/backend.go | 6 +- .../api/server/router/system/system_routes.go | 8 +- .../api/server/router/volume/backend.go | 2 +- .../api/server/router/volume/volume_routes.go | 2 +- .../hyperhq/hypercli/api/server/server.go | 4 +- .../hyperhq/hypercli/builder/builder.go | 4 +- .../hypercli/builder/dockerfile/builder.go | 4 +- .../builder/dockerfile/dispatchers.go | 4 +- .../hypercli/builder/dockerfile/internals.go | 6 +- .../hypercli/cli/command/events_utils.go | 2 +- .../hyperhq/hypercli/cliconfig/config.go | 2 +- .../hyperhq/hypercli/cliconfig/config_test.go | 2 +- .../hyperhq/hypercli/container/archive.go | 2 +- .../hyperhq/hypercli/container/container.go | 2 +- .../hypercli/container/container_unit_test.go | 2 +- .../hypercli/container/container_unix.go | 4 +- .../hypercli/container/container_windows.go | 2 +- .../hyperhq/hypercli/container/monitor.go | 2 +- .../hyperhq/hypercli/daemon/archive.go | 2 +- .../hyperhq/hypercli/daemon/commit.go | 6 +- .../hyperhq/hypercli/daemon/config_unix.go | 2 +- .../daemon/container_operations_unix.go | 12 +- .../daemon/container_operations_windows.go | 4 +- .../hyperhq/hypercli/daemon/create.go | 6 +- .../hyperhq/hypercli/daemon/create_unix.go | 2 +- .../hyperhq/hypercli/daemon/create_windows.go | 2 +- .../hyperhq/hypercli/daemon/daemon.go | 22 +-- .../hypercli/daemon/daemon_experimental.go | 2 +- .../hyperhq/hypercli/daemon/daemon_stub.go | 2 +- .../hyperhq/hypercli/daemon/daemon_test.go | 4 +- .../hyperhq/hypercli/daemon/daemon_unix.go | 18 +- .../hypercli/daemon/daemon_unix_test.go | 2 +- .../hyperhq/hypercli/daemon/daemon_windows.go | 4 +- .../hyperhq/hypercli/daemon/delete.go | 2 +- .../hyperhq/hypercli/daemon/delete_test.go | 4 +- .../hyperhq/hypercli/daemon/events.go | 4 +- .../hyperhq/hypercli/daemon/events/events.go | 2 +- .../hypercli/daemon/events/events_test.go | 2 +- .../hyperhq/hypercli/daemon/events/filter.go | 4 +- .../hyperhq/hypercli/daemon/events_test.go | 4 +- .../hyperhq/hypercli/daemon/exec.go | 4 +- .../hyperhq/hypercli/daemon/exec_unix.go | 2 +- .../hyperhq/hypercli/daemon/exec_windows.go | 2 +- .../hypercli/daemon/execdriver/driver_unix.go | 2 +- .../daemon/execdriver/windows/windows.go | 2 +- .../daemon/graphdriver/devmapper/deviceset.go | 2 +- .../daemon/graphdriver/devmapper/driver.go | 2 +- .../hyperhq/hypercli/daemon/image_delete.go | 2 +- .../hyperhq/hypercli/daemon/images.go | 4 +- .../hyperhq/hypercli/daemon/import.go | 2 +- .../hyperhq/hypercli/daemon/info.go | 2 +- .../hyperhq/hypercli/daemon/inspect.go | 6 +- .../hyperhq/hypercli/daemon/inspect_unix.go | 4 +- .../hypercli/daemon/inspect_windows.go | 2 +- .../hyperhq/hypercli/daemon/links_test.go | 2 +- .../hyperhq/hypercli/daemon/list.go | 8 +- .../hypercli/daemon/logger/fluentd/fluentd.go | 2 +- .../daemon/logger/jsonfilelog/jsonfilelog.go | 2 +- .../hypercli/daemon/logger/syslog/syslog.go | 2 +- .../hyperhq/hypercli/daemon/network.go | 4 +- .../hypercli/daemon/network/settings.go | 2 +- .../hyperhq/hypercli/daemon/rename.go | 2 +- .../hyperhq/hypercli/daemon/start.go | 2 +- .../hyperhq/hypercli/daemon/stats.go | 4 +- .../hyperhq/hypercli/daemon/stats_freebsd.go | 2 +- .../hyperhq/hypercli/daemon/stats_linux.go | 2 +- .../hyperhq/hypercli/daemon/stats_windows.go | 2 +- .../hyperhq/hypercli/daemon/top_unix.go | 2 +- .../hyperhq/hypercli/daemon/top_windows.go | 2 +- .../hyperhq/hypercli/daemon/update.go | 2 +- .../hyperhq/hypercli/daemon/volumes.go | 4 +- .../hyperhq/hypercli/distribution/pull.go | 2 +- .../hyperhq/hypercli/distribution/push.go | 4 +- .../hyperhq/hypercli/distribution/registry.go | 2 +- .../distribution/registry_unit_test.go | 4 +- .../hyperhq/hypercli/hyper/daemon_test.go | 2 +- .../hyperhq/hypercli/image/image.go | 2 +- .../hypercli/integration-cli/check_test.go | 4 +- .../docker_hub_pull_suite_test.go | 6 +- .../hypercli/integration-cli/docker_utils.go | 8 +- .../final/cli/hyper_cli_load_large_test.go | 9 +- .../cli/hyper_cli_load_legacy_ext_test.go | 16 +- .../cli/hyper_cli_load_local_ext_test.go | 2 +- .../final/cli/hyper_cli_region_test.go | 6 +- .../future/api/hyper_api_images_test.go | 2 +- .../future/api/hyper_api_volume_init_test.go | 2 +- .../integration-cli/hyper_api_images_test.go | 4 +- .../hyper_api_snapshots_test.go | 4 +- .../integration-cli/hyper_api_stats_test.go | 3 +- .../integration-cli/hyper_api_version_test.go | 36 ++-- .../integration-cli/hyper_api_volumes_test.go | 6 +- .../integration-cli/hyper_cli_config_test.go | 22 +-- .../integration-cli/hyper_cli_create_test.go | 20 +- .../hyper_cli_exec_unix_test.go | 2 +- .../hyper_cli_inspect_experimental_test.go | 2 +- .../integration-cli/hyper_cli_inspect_test.go | 2 +- .../hyper_cli_snapshot_test.go | 7 +- .../integration-cli/hyper_cli_volume_test.go | 11 +- .../issue/docker_cli_attach_test.go | 3 +- .../issue/docker_cli_attach_unix_test.go | 5 +- .../issue/hyper_api_attach_test.go | 1 - .../issue/hyper_api_containers_test.go | 2 +- .../issue/hyper_cli_stats_test.go | 1 - .../skip/api/hyper_api_network_test.go | 6 +- .../skip/cli/hyper_cli_by_digest_test.go | 2 +- .../skip/cli/hyper_cli_network_unix_test.go | 4 +- .../skip/cli/hyper_cli_update_unix_test.go | 2 +- .../hypercli/pkg/authorization/authz_test.go | 2 +- .../hyperhq/hypercli/pkg/discovery/kv/kv.go | 2 +- .../hypercli/pkg/discovery/kv/kv_test.go | 2 +- .../pkg/discovery/memory/memory_test.go | 2 +- .../pkg/jsonlog/jsonlog_marshalling_test.go | 20 +- .../hypercli/pkg/jsonlog/jsonlogbytes_test.go | 26 +-- .../hypercli/pkg/jsonmessage/jsonmessage.go | 2 +- .../pkg/jsonmessage/jsonmessage_test.go | 16 +- .../hypercli/profiles/seccomp/seccomp.go | 2 +- .../hyperhq/hypercli/registry/auth.go | 4 +- .../hyperhq/hypercli/registry/auth_test.go | 4 +- .../hyperhq/hypercli/registry/config.go | 2 +- .../hyperhq/hypercli/registry/endpoint.go | 2 +- .../hyperhq/hypercli/registry/registry.go | 10 +- .../hypercli/registry/registry_mock_test.go | 4 +- .../hypercli/registry/registry_test.go | 4 +- .../hyperhq/hypercli/registry/service.go | 4 +- .../hyperhq/hypercli/registry/service_v1.go | 6 +- .../hyperhq/hypercli/registry/service_v2.go | 6 +- .../hyperhq/hypercli/registry/session.go | 4 +- .../hyperhq/hypercli/registry/types.go | 2 +- .../hyperhq/hypercli/runconfig/compare.go | 2 +- .../hypercli/runconfig/compare_test.go | 50 ++--- .../hyperhq/hypercli/runconfig/config.go | 4 +- .../hyperhq/hypercli/runconfig/config_test.go | 6 +- .../hyperhq/hypercli/runconfig/config_unix.go | 4 +- .../hypercli/runconfig/config_windows.go | 4 +- .../hyperhq/hypercli/runconfig/hostconfig.go | 2 +- .../hypercli/runconfig/hostconfig_test.go | 12 +- .../hypercli/runconfig/hostconfig_unix.go | 2 +- .../hypercli/runconfig/hostconfig_windows.go | 2 +- .../hyperhq/hypercli/runconfig/opts/parse.go | 6 +- .../hypercli/runconfig/opts/parse_test.go | 6 +- .../hypercli/runconfig/opts/throttledevice.go | 2 +- .../hypercli/runconfig/opts/weightdevice.go | 2 +- 200 files changed, 451 insertions(+), 675 deletions(-) delete mode 100644 vendor/github.com/hyperhq/hypercli/.dockerignore delete mode 100644 vendor/github.com/hyperhq/hypercli/.gitignore delete mode 100644 vendor/github.com/hyperhq/hypercli/.mailmap diff --git a/vendor/github.com/hyperhq/hypercli/.dockerignore b/vendor/github.com/hyperhq/hypercli/.dockerignore deleted file mode 100644 index 9bd2c0219..000000000 --- a/vendor/github.com/hyperhq/hypercli/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -bundles -.gopath -vendor/pkg diff --git a/vendor/github.com/hyperhq/hypercli/.gitignore b/vendor/github.com/hyperhq/hypercli/.gitignore deleted file mode 100644 index 2e28fb7c4..000000000 --- a/vendor/github.com/hyperhq/hypercli/.gitignore +++ /dev/null @@ -1,42 +0,0 @@ -# Docker project generated files to ignore -# if you want to ignore files created by your editor/tools, -# please consider a global .gitignore https://help.github.com/articles/ignoring-files -*.exe -*.exe~ -*.orig -*.test -.*.swp -.DS_Store -.bashrc -.dotcloud -.flymake* -.git/ -.gopath/ -.hg/ -.vagrant* -Vagrantfile -a.out -autogen/ -bin -build_src -bundles/ -docker/docker -hyper/hyper -dockerversion/version_autogen.go -docs/AWS_S3_BUCKET -docs/GITCOMMIT -docs/GIT_BRANCH -docs/VERSION -docs/_build -docs/_static -docs/_templates -docs/changed-files -# generated by man/md2man-all.sh -man/man1 -man/man5 -man/man8 -pyenv -vendor/pkg/ -*.yml -.idea -integration-cli/util.conf diff --git a/vendor/github.com/hyperhq/hypercli/.mailmap b/vendor/github.com/hyperhq/hypercli/.mailmap deleted file mode 100644 index 8348b4a81..000000000 --- a/vendor/github.com/hyperhq/hypercli/.mailmap +++ /dev/null @@ -1,171 +0,0 @@ -# Generate AUTHORS: hack/generate-authors.sh - -# Tip for finding duplicates (besides scanning the output of AUTHORS for name -# duplicates that aren't also email duplicates): scan the output of: -# git log --format='%aE - %aN' | sort -uf -# -# For explanation on this file format: man git-shortlog - -Patrick Stapleton -Shishir Mahajan -Erwin van der Koogh -Ahmed Kamal -Tejesh Mehta -Cristian Staretu -Cristian Staretu -Cristian Staretu -Marcus Linke -Aleksandrs Fadins -Christopher Latham -Hu Keping -Wayne Chang -Chen Chao -Daehyeok Mun - - - - - - -Guillaume J. Charmes - - - - - -Thatcher Peskens -Thatcher Peskens -Thatcher Peskens dhrp -Jérôme Petazzoni jpetazzo -Jérôme Petazzoni -Joffrey F -Joffrey F -Joffrey F -Tim Terhorst -Andy Smith - - - - - - - - - -Walter Stanish - -Roberto Hashioka -Konstantin Pelykh -David Sissitka -Nolan Darilek - -Benoit Chesneau -Jordan Arentsen -Daniel Garcia -Miguel Angel Fernández -Bhiraj Butala -Faiz Khan -Victor Lyuboslavsky -Jean-Baptiste Barth -Matthew Mueller - -Shih-Yuan Lee -Daniel Mizyrycki root -Jean-Baptiste Dalido - - - - - - - - - - - - - - -Sven Dowideit -Sven Dowideit -Sven Dowideit -Sven Dowideit <¨SvenDowideit@home.org.au¨> -Sven Dowideit -Sven Dowideit - -Alexandr Morozov - -O.S. Tezer - -Roberto G. Hashioka - - - - - -Sridhar Ratnakumar -Sridhar Ratnakumar -Liang-Chi Hsieh -Aleksa Sarai -Will Weaver -Timothy Hobbs -Nathan LeClaire -Nathan LeClaire - - - - -Matthew Heon - - - -Francisco Carriedo - - - - - -Brian Goff - - - -Hollie Teal - - - -Jessica Frazelle Jessie Frazelle - - - - - -Thomas LEVEIL Thomas LÉVEIL - - -Antonio Murdaca -Antonio Murdaca -Antonio Murdaca -Darren Shepherd -Deshi Xiao -Deshi Xiao -Doug Davis -Jacob Atzen -Jeff Nickoloff - -John Howard (VM) John Howard -Madhu Venugopal -Mary Anthony -Mary Anthony moxiegirl -Mary Anthony -mattyw -resouer -AJ Bowen soulshake -AJ Bowen soulshake -Tibor Vass -Tibor Vass -Vincent Bernat -Yestin Sun -bin liu -John Howard (VM) jhowardmsft -Ankush Agarwal -Tangi COLIN tangicolin diff --git a/vendor/github.com/hyperhq/hypercli/api/client/attach.go b/vendor/github.com/hyperhq/hypercli/api/client/attach.go index 3931ee2c6..6b46f6026 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/attach.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/attach.go @@ -7,7 +7,7 @@ import ( "golang.org/x/net/context" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/signal" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/build.go b/vendor/github.com/hyperhq/hypercli/api/client/build.go index 517d129c6..1df98034f 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/build.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/build.go @@ -14,8 +14,8 @@ import ( "runtime" "strings" - "github.com/docker/engine-api/types" "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/builder/dockerignore" Cli "github.com/hyperhq/hypercli/cli" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/cli.go b/vendor/github.com/hyperhq/hypercli/api/client/cli.go index 97a86bc30..f57d60965 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/cli.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/cli.go @@ -9,9 +9,9 @@ import ( "os" "runtime" - "github.com/docker/engine-api/client" "github.com/docker/go-connections/sockets" "github.com/docker/go-connections/tlsconfig" + "github.com/hyperhq/hyper-api/client" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/cliconfig" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/commit.go b/vendor/github.com/hyperhq/hypercli/api/client/commit.go index 6e2cfa32e..341b67d9c 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/commit.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/commit.go @@ -4,8 +4,8 @@ import ( "encoding/json" "fmt" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/compose.go b/vendor/github.com/hyperhq/hypercli/api/client/compose.go index d3ff41d22..ab39b1fc2 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/compose.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/compose.go @@ -10,9 +10,9 @@ import ( "syscall" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/client" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/client" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/pkg/jsonmessage" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/cp.go b/vendor/github.com/hyperhq/hypercli/api/client/cp.go index 69105a801..5fcae6622 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/cp.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/cp.go @@ -9,7 +9,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/pkg/archive" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/create.go b/vendor/github.com/hyperhq/hypercli/api/client/create.go index eb5bce2d2..5beda9f2a 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/create.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/create.go @@ -9,10 +9,10 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/client" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" + "github.com/hyperhq/hyper-api/client" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/pkg/jsonmessage" "github.com/hyperhq/hypercli/reference" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/cron.go b/vendor/github.com/hyperhq/hypercli/api/client/cron.go index 15a27925c..1c04964d3 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/cron.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/cron.go @@ -7,12 +7,12 @@ import ( "text/tabwriter" "time" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/network" - "github.com/docker/engine-api/types/strslice" "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hyper-api/types/strslice" Cli "github.com/hyperhq/hypercli/cli" ropts "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/events.go b/vendor/github.com/hyperhq/hypercli/api/client/events.go index 7e53ef41a..815433018 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/events.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/events.go @@ -8,8 +8,8 @@ import ( "net/http" "net/url" - "github.com/docker/engine-api/types/events" "github.com/gorilla/websocket" + "github.com/hyperhq/hyper-api/types/events" signutil "github.com/hyperhq/websocket-client/go/util" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/exec.go b/vendor/github.com/hyperhq/hypercli/api/client/exec.go index 591356555..4742bd98d 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/exec.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/exec.go @@ -9,7 +9,7 @@ import ( "golang.org/x/net/context" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/promise" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/exec_test.go b/vendor/github.com/hyperhq/hypercli/api/client/exec_test.go index c5cad33cc..8b831c21f 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/exec_test.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/exec_test.go @@ -5,8 +5,8 @@ import ( "io/ioutil" "testing" + "github.com/hyperhq/hyper-api/types" flag "github.com/hyperhq/hypercli/pkg/mflag" - "github.com/docker/engine-api/types" ) type arguments struct { @@ -15,12 +15,12 @@ type arguments struct { func TestParseExec(t *testing.T) { invalids := map[*arguments]error{ - &arguments{[]string{"-unknown"}}: fmt.Errorf("flag provided but not defined: -unknown"), - &arguments{[]string{"-u"}}: fmt.Errorf("flag needs an argument: -u"), - &arguments{[]string{"--user"}}: fmt.Errorf("flag needs an argument: --user"), + {[]string{"-unknown"}}: fmt.Errorf("flag provided but not defined: -unknown"), + {[]string{"-u"}}: fmt.Errorf("flag needs an argument: -u"), + {[]string{"--user"}}: fmt.Errorf("flag needs an argument: --user"), } valids := map[*arguments]*types.ExecConfig{ - &arguments{ + { []string{"container", "command"}, }: { Container: "container", @@ -28,7 +28,7 @@ func TestParseExec(t *testing.T) { AttachStdout: true, AttachStderr: true, }, - &arguments{ + { []string{"container", "command1", "command2"}, }: { Container: "container", @@ -36,7 +36,7 @@ func TestParseExec(t *testing.T) { AttachStdout: true, AttachStderr: true, }, - &arguments{ + { []string{"-i", "-t", "-u", "uid", "container", "command"}, }: { User: "uid", @@ -47,7 +47,7 @@ func TestParseExec(t *testing.T) { Container: "container", Cmd: []string{"command"}, }, - &arguments{ + { []string{"-d", "container", "command"}, }: { AttachStdin: false, @@ -57,7 +57,7 @@ func TestParseExec(t *testing.T) { Container: "container", Cmd: []string{"command"}, }, - &arguments{ + { []string{"-t", "-i", "-d", "container", "command"}, }: { AttachStdin: false, diff --git a/vendor/github.com/hyperhq/hypercli/api/client/fip.go b/vendor/github.com/hyperhq/hypercli/api/client/fip.go index 8193458ff..40f5eb046 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/fip.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/fip.go @@ -10,8 +10,8 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom.go b/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom.go index 3075dcb6c..d8d4e3b17 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom.go @@ -6,8 +6,8 @@ import ( "strings" "time" - "github.com/docker/engine-api/types" "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/pkg/stringid" "github.com/hyperhq/hypercli/pkg/stringutils" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom_test.go b/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom_test.go index 11cdf06e9..f700249a3 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom_test.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/formatter/custom_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/pkg/stringid" - "github.com/docker/engine-api/types" ) func TestContainerPsContext(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter.go b/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter.go index 43abdb6c8..a159eac0b 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter.go @@ -8,7 +8,7 @@ import ( "text/tabwriter" "text/template" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/reference" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter_test.go b/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter_test.go index 223cab970..7ae98d807 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter_test.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/formatter/formatter_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" ) func TestContainerContextWrite(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/api/client/func.go b/vendor/github.com/hyperhq/hypercli/api/client/func.go index 33d0f803c..662619f6c 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/func.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/func.go @@ -11,13 +11,13 @@ import ( "text/tabwriter" "time" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/network" - "github.com/docker/engine-api/types/strslice" "github.com/docker/go-connections/nat" units "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hyper-api/types/strslice" Cli "github.com/hyperhq/hypercli/cli" ropts "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/hijack.go b/vendor/github.com/hyperhq/hypercli/api/client/hijack.go index c94c82cb6..b536683bf 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/hijack.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/hijack.go @@ -4,8 +4,8 @@ import ( "io" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/pkg/stdcopy" - "github.com/docker/engine-api/types" ) func (cli *DockerCli) holdHijackedConnection(tty bool, inputStream io.ReadCloser, outputStream, errorStream io.Writer, resp types.HijackedResponse) error { diff --git a/vendor/github.com/hyperhq/hypercli/api/client/images.go b/vendor/github.com/hyperhq/hypercli/api/client/images.go index e37d997d8..ac44a0238 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/images.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/images.go @@ -1,8 +1,8 @@ package client import ( - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hypercli/api/client/formatter" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/import.go b/vendor/github.com/hyperhq/hypercli/api/client/import.go index 856775212..a3277946c 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/import.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/import.go @@ -7,7 +7,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" "github.com/hyperhq/hypercli/pkg/jsonmessage" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/inspect.go b/vendor/github.com/hyperhq/hypercli/api/client/inspect.go index a23cb0133..91c07966d 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/inspect.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/inspect.go @@ -7,7 +7,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/client" + "github.com/hyperhq/hyper-api/client" "github.com/hyperhq/hypercli/api/client/inspect" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/load.go b/vendor/github.com/hyperhq/hypercli/api/client/load.go index b190583d7..1f05de2f3 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/load.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/load.go @@ -10,7 +10,7 @@ import ( "path/filepath" "strings" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/image" "github.com/hyperhq/hypercli/pkg/archive" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/login.go b/vendor/github.com/hyperhq/hypercli/api/client/login.go index 16075d542..a003cd239 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/login.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/login.go @@ -10,8 +10,8 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/client" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/client" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/term" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/logs.go b/vendor/github.com/hyperhq/hypercli/api/client/logs.go index 310541228..223c2f181 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/logs.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/logs.go @@ -6,7 +6,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/stdcopy" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/network.go b/vendor/github.com/hyperhq/hypercli/api/client/network.go index 2f525fbe1..6901c9d8a 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/network.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/network.go @@ -8,9 +8,9 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/network" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/network" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/ps.go b/vendor/github.com/hyperhq/hypercli/api/client/ps.go index ea18dace9..67ee6cb32 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/ps.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/ps.go @@ -1,8 +1,8 @@ package client import ( - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hypercli/api/client/formatter" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/pull.go b/vendor/github.com/hyperhq/hypercli/api/client/pull.go index d033e2699..9f92eba3d 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/pull.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/pull.go @@ -6,7 +6,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/pkg/jsonmessage" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/push.go b/vendor/github.com/hyperhq/hypercli/api/client/push.go index a6e744e63..a7edb9fc4 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/push.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/push.go @@ -3,7 +3,7 @@ package client import ( "io" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/pkg/jsonmessage" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/rm.go b/vendor/github.com/hyperhq/hypercli/api/client/rm.go index 2635c55e6..fc9c25b16 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/rm.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/rm.go @@ -6,7 +6,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/rmi.go b/vendor/github.com/hyperhq/hypercli/api/client/rmi.go index faa871d4b..3dd9ce8c6 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/rmi.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/rmi.go @@ -7,7 +7,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/run.go b/vendor/github.com/hyperhq/hypercli/api/client/run.go index ac4f9c036..861d4b67e 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/run.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/run.go @@ -8,8 +8,8 @@ import ( "strings" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/types" "github.com/docker/libnetwork/resolvconf/dns" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/opts" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/search.go b/vendor/github.com/hyperhq/hypercli/api/client/search.go index fd3e3b3f2..865339d3a 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/search.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/search.go @@ -9,8 +9,8 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/stringutils" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/service.go b/vendor/github.com/hyperhq/hypercli/api/client/service.go index 4b4c9c039..62f487d67 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/service.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/service.go @@ -7,9 +7,9 @@ import ( "strings" "text/tabwriter" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/strslice" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/strslice" Cli "github.com/hyperhq/hypercli/cli" ropts "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/snapshot.go b/vendor/github.com/hyperhq/hypercli/api/client/snapshot.go index 6dd6f56c9..f3594fcb2 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/snapshot.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/snapshot.go @@ -6,8 +6,8 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/start.go b/vendor/github.com/hyperhq/hypercli/api/client/start.go index 09b1bd3b2..cf97a7038 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/start.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/start.go @@ -9,7 +9,7 @@ import ( "golang.org/x/net/context" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/promise" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/stats.go b/vendor/github.com/hyperhq/hypercli/api/client/stats.go index ee7f878cd..6b84abd74 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/stats.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/stats.go @@ -7,8 +7,8 @@ import ( "sync" "time" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/events" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/events" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/cli/command" "github.com/hyperhq/hypercli/cli/command/formatter" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/stats_helper.go b/vendor/github.com/hyperhq/hypercli/api/client/stats_helper.go index f7deb8165..a7339792c 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/stats_helper.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/stats_helper.go @@ -8,8 +8,8 @@ import ( "sync" "time" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/events" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/events" "github.com/hyperhq/hypercli/cli/command/formatter" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/tag.go b/vendor/github.com/hyperhq/hypercli/api/client/tag.go index f267ad11b..992d8470f 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/tag.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/tag.go @@ -3,7 +3,7 @@ package client import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" flag "github.com/hyperhq/hypercli/pkg/mflag" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/client/trust.go b/vendor/github.com/hyperhq/hypercli/api/client/trust.go index b1876c51b..710ef8869 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/trust.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/trust.go @@ -21,8 +21,6 @@ import ( "github.com/docker/distribution/digest" "github.com/docker/distribution/registry/client/auth" "github.com/docker/distribution/registry/client/transport" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" "github.com/docker/go-connections/tlsconfig" "github.com/docker/notary/client" "github.com/docker/notary/passphrase" @@ -30,6 +28,8 @@ import ( "github.com/docker/notary/tuf/data" "github.com/docker/notary/tuf/signed" "github.com/docker/notary/tuf/store" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/cliconfig" "github.com/hyperhq/hypercli/distribution" "github.com/hyperhq/hypercli/dockerversion" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/trust_test.go b/vendor/github.com/hyperhq/hypercli/api/client/trust_test.go index b4980645c..41fae6ba1 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/trust_test.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/trust_test.go @@ -4,8 +4,8 @@ import ( "os" "testing" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/registry" - registrytypes "github.com/docker/engine-api/types/registry" ) func unsetENV() { diff --git a/vendor/github.com/hyperhq/hypercli/api/client/utils.go b/vendor/github.com/hyperhq/hypercli/api/client/utils.go index 49a82974b..325d98e93 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/utils.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/utils.go @@ -14,10 +14,10 @@ import ( "time" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/client" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" "github.com/dutchcoders/goftp" + "github.com/hyperhq/hyper-api/client" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/pkg/signal" "github.com/hyperhq/hypercli/pkg/term" "github.com/hyperhq/hypercli/registry" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/version.go b/vendor/github.com/hyperhq/hypercli/api/client/version.go index 0c772f319..bb4268be7 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/version.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/version.go @@ -7,7 +7,7 @@ import ( "golang.org/x/net/context" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" Cli "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/dockerversion" flag "github.com/hyperhq/hypercli/pkg/mflag" diff --git a/vendor/github.com/hyperhq/hypercli/api/client/volume.go b/vendor/github.com/hyperhq/hypercli/api/client/volume.go index 2fe7d7e69..090850423 100644 --- a/vendor/github.com/hyperhq/hypercli/api/client/volume.go +++ b/vendor/github.com/hyperhq/hypercli/api/client/volume.go @@ -16,8 +16,8 @@ import ( flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/cheggaaa/pb" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/common.go b/vendor/github.com/hyperhq/hypercli/api/common.go index 647765f90..76dc34fd5 100644 --- a/vendor/github.com/hyperhq/hypercli/api/common.go +++ b/vendor/github.com/hyperhq/hypercli/api/common.go @@ -9,10 +9,10 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/docker/libtrust" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/pkg/system" "github.com/hyperhq/hypercli/pkg/version" - "github.com/docker/engine-api/types" - "github.com/docker/libtrust" ) // Common constants for daemon and client. diff --git a/vendor/github.com/hyperhq/hypercli/api/common_test.go b/vendor/github.com/hyperhq/hypercli/api/common_test.go index 4f36b4547..d476f176a 100644 --- a/vendor/github.com/hyperhq/hypercli/api/common_test.go +++ b/vendor/github.com/hyperhq/hypercli/api/common_test.go @@ -7,7 +7,7 @@ import ( "os" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" ) type ports struct { diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/build/backend.go b/vendor/github.com/hyperhq/hypercli/api/server/router/build/backend.go index 476277953..fddc493d4 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/build/backend.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/build/backend.go @@ -1,8 +1,8 @@ package build import ( + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/builder" - "github.com/docker/engine-api/types" "io" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/build/build_routes.go b/vendor/github.com/hyperhq/hypercli/api/server/router/build/build_routes.go index 19315a390..80af80f09 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/build/build_routes.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/build/build_routes.go @@ -12,15 +12,15 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/builder" "github.com/hyperhq/hypercli/pkg/ioutils" "github.com/hyperhq/hypercli/pkg/progress" "github.com/hyperhq/hypercli/pkg/streamformatter" "github.com/hyperhq/hypercli/utils" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - "github.com/docker/go-units" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/container/backend.go b/vendor/github.com/hyperhq/hypercli/api/server/router/container/backend.go index dfcf4e3fb..8746c3153 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/container/backend.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/container/backend.go @@ -4,12 +4,12 @@ import ( "io" "time" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/daemon" "github.com/hyperhq/hypercli/daemon/exec" "github.com/hyperhq/hypercli/pkg/archive" "github.com/hyperhq/hypercli/pkg/version" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" ) // execBackend includes functions to implement to provide exec functionality. diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/container/container_routes.go b/vendor/github.com/hyperhq/hypercli/api/server/router/container/container_routes.go index 43bd7d419..265481922 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/container/container_routes.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/container/container_routes.go @@ -12,9 +12,9 @@ import ( "github.com/Sirupsen/logrus" "github.com/docker/distribution/registry/api/errcode" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - timetypes "github.com/docker/engine-api/types/time" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + timetypes "github.com/hyperhq/hyper-api/types/time" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/daemon" derr "github.com/hyperhq/hypercli/errors" diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/container/copy.go b/vendor/github.com/hyperhq/hypercli/api/server/router/container/copy.go index deb5012b8..3cae077a9 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/container/copy.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/container/copy.go @@ -9,8 +9,8 @@ import ( "os" "strings" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api/server/httputils" - "github.com/docker/engine-api/types" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/container/exec.go b/vendor/github.com/hyperhq/hypercli/api/server/router/container/exec.go index f75af562e..56be5dba6 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/container/exec.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/container/exec.go @@ -8,10 +8,10 @@ import ( "strconv" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/pkg/stdcopy" "github.com/hyperhq/hypercli/utils" - "github.com/docker/engine-api/types" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/local/image.go b/vendor/github.com/hyperhq/hypercli/api/server/router/local/image.go index 78f4bb467..4850590e1 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/local/image.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/local/image.go @@ -12,6 +12,8 @@ import ( "github.com/docker/distribution/digest" "github.com/docker/distribution/registry/api/errcode" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/builder/dockerfile" derr "github.com/hyperhq/hypercli/errors" @@ -19,8 +21,6 @@ import ( "github.com/hyperhq/hypercli/pkg/streamformatter" "github.com/hyperhq/hypercli/reference" "github.com/hyperhq/hypercli/runconfig" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/network/backend.go b/vendor/github.com/hyperhq/hypercli/api/server/router/network/backend.go index c6ea0adcf..b94a5cdad 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/network/backend.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/network/backend.go @@ -1,8 +1,8 @@ package network import ( - "github.com/docker/engine-api/types/network" "github.com/docker/libnetwork" + "github.com/hyperhq/hyper-api/types/network" ) // Backend is all the methods that need to be implemented to provide diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/network/filter.go b/vendor/github.com/hyperhq/hypercli/api/server/router/network/filter.go index 6abec780f..490bc4e25 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/network/filter.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/network/filter.go @@ -5,9 +5,9 @@ import ( "regexp" "strings" - "github.com/hyperhq/hypercli/runconfig" - "github.com/docker/engine-api/types/filters" "github.com/docker/libnetwork" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hypercli/runconfig" ) type filterHandler func([]libnetwork.Network, string) ([]libnetwork.Network, error) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/network/network_routes.go b/vendor/github.com/hyperhq/hypercli/api/server/router/network/network_routes.go index 70e72bf66..62bd9ecc2 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/network/network_routes.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/network/network_routes.go @@ -7,13 +7,13 @@ import ( "golang.org/x/net/context" + "github.com/docker/libnetwork" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/daemon" "github.com/hyperhq/hypercli/runconfig" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/network" - "github.com/docker/libnetwork" ) func (n *networkRouter) getNetworksList(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error { diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/system/backend.go b/vendor/github.com/hyperhq/hypercli/api/server/router/system/backend.go index 8a270027f..6c8506d24 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/system/backend.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/system/backend.go @@ -1,9 +1,9 @@ package system import ( - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/events" - "github.com/docker/engine-api/types/filters" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/events" + "github.com/hyperhq/hyper-api/types/filters" ) // Backend is the methods that need to be implemented to provide diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/system/system_routes.go b/vendor/github.com/hyperhq/hypercli/api/server/router/system/system_routes.go index 181ac0f56..32e7ef7cd 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/system/system_routes.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/system/system_routes.go @@ -6,13 +6,13 @@ import ( "time" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/events" + "github.com/hyperhq/hyper-api/types/filters" + timetypes "github.com/hyperhq/hyper-api/types/time" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/pkg/ioutils" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/events" - "github.com/docker/engine-api/types/filters" - timetypes "github.com/docker/engine-api/types/time" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/volume/backend.go b/vendor/github.com/hyperhq/hypercli/api/server/router/volume/backend.go index ede5dc4d9..c217d265b 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/volume/backend.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/volume/backend.go @@ -2,7 +2,7 @@ package volume import ( // TODO return types need to be refactored into pkg - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" ) // Backend is the methods that need to be implemented to provide diff --git a/vendor/github.com/hyperhq/hypercli/api/server/router/volume/volume_routes.go b/vendor/github.com/hyperhq/hypercli/api/server/router/volume/volume_routes.go index f06da8f69..4c5dcba9c 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/router/volume/volume_routes.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/router/volume/volume_routes.go @@ -4,8 +4,8 @@ import ( "encoding/json" "net/http" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api/server/httputils" - "github.com/docker/engine-api/types" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/api/server/server.go b/vendor/github.com/hyperhq/hypercli/api/server/server.go index 581cc4f78..d7cc717b4 100644 --- a/vendor/github.com/hyperhq/hypercli/api/server/server.go +++ b/vendor/github.com/hyperhq/hypercli/api/server/server.go @@ -7,6 +7,8 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/docker/go-connections/sockets" + "github.com/gorilla/mux" "github.com/hyperhq/hypercli/api/server/httputils" "github.com/hyperhq/hypercli/api/server/router" "github.com/hyperhq/hypercli/api/server/router/build" @@ -19,8 +21,6 @@ import ( "github.com/hyperhq/hypercli/daemon" "github.com/hyperhq/hypercli/pkg/authorization" "github.com/hyperhq/hypercli/utils" - "github.com/docker/go-connections/sockets" - "github.com/gorilla/mux" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/builder/builder.go b/vendor/github.com/hyperhq/hypercli/builder/builder.go index da7aaf251..9768df8cc 100644 --- a/vendor/github.com/hyperhq/hypercli/builder/builder.go +++ b/vendor/github.com/hyperhq/hypercli/builder/builder.go @@ -10,8 +10,8 @@ import ( "time" "github.com/docker/docker/reference" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" ) // Context represents a file system tree. diff --git a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/builder.go b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/builder.go index f961a6ab6..cdf75f098 100644 --- a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/builder.go +++ b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/builder.go @@ -15,8 +15,8 @@ import ( "github.com/docker/docker/builder/dockerfile/parser" "github.com/docker/docker/pkg/stringid" "github.com/docker/docker/reference" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" ) var validCommitCommands = map[string]bool{ diff --git a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/dispatchers.go b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/dispatchers.go index f800acbe8..fc591e6bc 100644 --- a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/dispatchers.go +++ b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/dispatchers.go @@ -23,9 +23,9 @@ import ( "github.com/docker/docker/pkg/signal" "github.com/docker/docker/pkg/system" runconfigopts "github.com/docker/docker/runconfig/opts" - "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/strslice" "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/strslice" ) // dispatch with no layer / parsing. This is effectively not a command. diff --git a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/internals.go b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/internals.go index c5549820e..a22c3fa60 100644 --- a/vendor/github.com/hyperhq/hypercli/builder/dockerfile/internals.go +++ b/vendor/github.com/hyperhq/hypercli/builder/dockerfile/internals.go @@ -33,9 +33,9 @@ import ( "github.com/docker/docker/pkg/tarsum" "github.com/docker/docker/pkg/urlutil" "github.com/docker/docker/runconfig/opts" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/strslice" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/strslice" ) func (b *Builder) commit(id string, autoCmd *strslice.StrSlice, comment string) error { diff --git a/vendor/github.com/hyperhq/hypercli/cli/command/events_utils.go b/vendor/github.com/hyperhq/hypercli/cli/command/events_utils.go index fc88c14b1..ff368821b 100644 --- a/vendor/github.com/hyperhq/hypercli/cli/command/events_utils.go +++ b/vendor/github.com/hyperhq/hypercli/cli/command/events_utils.go @@ -3,7 +3,7 @@ package command import ( "sync" - eventtypes "github.com/docker/engine-api/types/events" + eventtypes "github.com/hyperhq/hyper-api/types/events" ) type eventProcessor func(eventtypes.Message, error) error diff --git a/vendor/github.com/hyperhq/hypercli/cliconfig/config.go b/vendor/github.com/hyperhq/hypercli/cliconfig/config.go index c235ff98d..ff99d1e1b 100644 --- a/vendor/github.com/hyperhq/hypercli/cliconfig/config.go +++ b/vendor/github.com/hyperhq/hypercli/cliconfig/config.go @@ -10,7 +10,7 @@ import ( "path/filepath" "strings" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/pkg/homedir" ) diff --git a/vendor/github.com/hyperhq/hypercli/cliconfig/config_test.go b/vendor/github.com/hyperhq/hypercli/cliconfig/config_test.go index 71adafeb9..d1cfc4d1d 100644 --- a/vendor/github.com/hyperhq/hypercli/cliconfig/config_test.go +++ b/vendor/github.com/hyperhq/hypercli/cliconfig/config_test.go @@ -7,8 +7,8 @@ import ( "strings" "testing" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/pkg/homedir" - "github.com/docker/engine-api/types" ) func TestEmptyConfigDir(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/container/archive.go b/vendor/github.com/hyperhq/hypercli/container/archive.go index 95b682857..e9eb18abb 100644 --- a/vendor/github.com/hyperhq/hypercli/container/archive.go +++ b/vendor/github.com/hyperhq/hypercli/container/archive.go @@ -5,7 +5,7 @@ import ( "path/filepath" "github.com/docker/docker/pkg/archive" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" ) // ResolvePath resolves the given path in the container to a resource on the diff --git a/vendor/github.com/hyperhq/hypercli/container/container.go b/vendor/github.com/hyperhq/hypercli/container/container.go index ea083c52b..e4fc0edfa 100644 --- a/vendor/github.com/hyperhq/hypercli/container/container.go +++ b/vendor/github.com/hyperhq/hypercli/container/container.go @@ -24,8 +24,8 @@ import ( "github.com/docker/docker/pkg/symlink" "github.com/docker/docker/runconfig" "github.com/docker/docker/volume" - containertypes "github.com/docker/engine-api/types/container" "github.com/docker/go-connections/nat" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/container/container_unit_test.go b/vendor/github.com/hyperhq/hypercli/container/container_unit_test.go index 67b829f9f..790491558 100644 --- a/vendor/github.com/hyperhq/hypercli/container/container_unit_test.go +++ b/vendor/github.com/hyperhq/hypercli/container/container_unit_test.go @@ -4,7 +4,7 @@ import ( "testing" "github.com/docker/docker/pkg/signal" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) func TestContainerStopSignal(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/container/container_unix.go b/vendor/github.com/hyperhq/hypercli/container/container_unix.go index 22c754417..575d34d02 100644 --- a/vendor/github.com/hyperhq/hypercli/container/container_unix.go +++ b/vendor/github.com/hyperhq/hypercli/container/container_unix.go @@ -21,13 +21,13 @@ import ( runconfigopts "github.com/docker/docker/runconfig/opts" "github.com/docker/docker/utils" "github.com/docker/docker/volume" - containertypes "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/network" "github.com/docker/go-connections/nat" "github.com/docker/libnetwork" "github.com/docker/libnetwork/netlabel" "github.com/docker/libnetwork/options" "github.com/docker/libnetwork/types" + containertypes "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/network" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/container/container_windows.go b/vendor/github.com/hyperhq/hypercli/container/container_windows.go index af68086f8..0356b1724 100644 --- a/vendor/github.com/hyperhq/hypercli/container/container_windows.go +++ b/vendor/github.com/hyperhq/hypercli/container/container_windows.go @@ -5,7 +5,7 @@ package container import ( "github.com/docker/docker/daemon/execdriver" "github.com/docker/docker/volume" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // Container holds fields specific to the Windows implementation. See diff --git a/vendor/github.com/hyperhq/hypercli/container/monitor.go b/vendor/github.com/hyperhq/hypercli/container/monitor.go index a292d8ce3..11c6349ba 100644 --- a/vendor/github.com/hyperhq/hypercli/container/monitor.go +++ b/vendor/github.com/hyperhq/hypercli/container/monitor.go @@ -14,7 +14,7 @@ import ( "github.com/docker/docker/pkg/promise" "github.com/docker/docker/pkg/stringid" "github.com/docker/docker/utils" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) const ( diff --git a/vendor/github.com/hyperhq/hypercli/daemon/archive.go b/vendor/github.com/hyperhq/hypercli/daemon/archive.go index 47dd73d51..8ca50bd75 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/archive.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/archive.go @@ -7,13 +7,13 @@ import ( "path/filepath" "strings" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/builder" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/pkg/archive" "github.com/hyperhq/hypercli/pkg/chrootarchive" "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/ioutils" - "github.com/docker/engine-api/types" ) // ErrExtractPointNotDirectory is used to convey that the operation to extract diff --git a/vendor/github.com/hyperhq/hypercli/daemon/commit.go b/vendor/github.com/hyperhq/hypercli/daemon/commit.go index 0a8a2a1a9..bad609bed 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/commit.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/commit.go @@ -7,6 +7,9 @@ import ( "strings" "time" + "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/image" @@ -14,9 +17,6 @@ import ( "github.com/hyperhq/hypercli/pkg/archive" "github.com/hyperhq/hypercli/pkg/ioutils" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" - containertypes "github.com/docker/engine-api/types/container" - "github.com/docker/go-connections/nat" ) // merge merges two Config, the image container configuration (defaults values), diff --git a/vendor/github.com/hyperhq/hypercli/daemon/config_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/config_unix.go index 5867ec883..3b8bc5aae 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/config_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/config_unix.go @@ -5,10 +5,10 @@ package daemon import ( "net" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" runconfigopts "github.com/hyperhq/hypercli/runconfig/opts" - "github.com/docker/go-units" ) var ( diff --git a/vendor/github.com/hyperhq/hypercli/daemon/container_operations_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/container_operations_unix.go index 6a033c05d..dcc8d123b 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/container_operations_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/container_operations_unix.go @@ -13,6 +13,12 @@ import ( "time" "github.com/Sirupsen/logrus" + "github.com/docker/go-units" + "github.com/docker/libnetwork" + "github.com/docker/libnetwork/netlabel" + "github.com/docker/libnetwork/options" + containertypes "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/execdriver" "github.com/hyperhq/hypercli/daemon/links" @@ -23,12 +29,6 @@ import ( "github.com/hyperhq/hypercli/pkg/mount" "github.com/hyperhq/hypercli/pkg/stringid" "github.com/hyperhq/hypercli/runconfig" - containertypes "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/go-units" - "github.com/docker/libnetwork" - "github.com/docker/libnetwork/netlabel" - "github.com/docker/libnetwork/options" "github.com/opencontainers/runc/libcontainer/configs" "github.com/opencontainers/runc/libcontainer/devices" "github.com/opencontainers/runc/libcontainer/label" diff --git a/vendor/github.com/hyperhq/hypercli/daemon/container_operations_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/container_operations_windows.go index e02b44a74..2a700d197 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/container_operations_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/container_operations_windows.go @@ -5,13 +5,13 @@ package daemon import ( "strings" + "github.com/docker/libnetwork" + networktypes "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/execdriver" "github.com/hyperhq/hypercli/daemon/execdriver/windows" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/layer" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/libnetwork" ) func (daemon *Daemon) setupLinkedContainers(container *container.Container) ([]string, error) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/create.go b/vendor/github.com/hyperhq/hypercli/daemon/create.go index d3b8879cf..9cdbe03dd 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/create.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/create.go @@ -2,6 +2,9 @@ package daemon import ( "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" + containertypes "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/image" @@ -9,9 +12,6 @@ import ( "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/stringid" volumestore "github.com/hyperhq/hypercli/volume/store" - "github.com/docker/engine-api/types" - containertypes "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/create_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/create_unix.go index 200bd6f07..04bd489d8 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/create_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/create_unix.go @@ -7,10 +7,10 @@ import ( "path/filepath" "github.com/Sirupsen/logrus" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/pkg/stringid" - containertypes "github.com/docker/engine-api/types/container" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/create_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/create_windows.go index 535b48ff6..21ee61c29 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/create_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/create_windows.go @@ -3,10 +3,10 @@ package daemon import ( "fmt" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/pkg/stringid" "github.com/hyperhq/hypercli/volume" - containertypes "github.com/docker/engine-api/types/container" ) // createContainerPlatformSpecificSettings performs platform specific container create functionality diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon.go index 6ad29b785..6e929fc4b 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon.go @@ -21,6 +21,13 @@ import ( "github.com/Sirupsen/logrus" "github.com/docker/distribution/digest" + "github.com/hyperhq/hyper-api/types" + containertypes "github.com/hyperhq/hyper-api/types/container" + eventtypes "github.com/hyperhq/hyper-api/types/events" + "github.com/hyperhq/hyper-api/types/filters" + networktypes "github.com/hyperhq/hyper-api/types/network" + registrytypes "github.com/hyperhq/hyper-api/types/registry" + "github.com/hyperhq/hyper-api/types/strslice" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/builder" "github.com/hyperhq/hypercli/container" @@ -28,14 +35,11 @@ import ( "github.com/hyperhq/hypercli/daemon/exec" "github.com/hyperhq/hypercli/daemon/execdriver" "github.com/hyperhq/hypercli/daemon/execdriver/execdrivers" - "github.com/docker/engine-api/types" - containertypes "github.com/docker/engine-api/types/container" - eventtypes "github.com/docker/engine-api/types/events" - "github.com/docker/engine-api/types/filters" - networktypes "github.com/docker/engine-api/types/network" - registrytypes "github.com/docker/engine-api/types/registry" - "github.com/docker/engine-api/types/strslice" // register graph drivers + "github.com/docker/go-connections/nat" + "github.com/docker/libnetwork" + lntypes "github.com/docker/libnetwork/types" + "github.com/docker/libtrust" _ "github.com/hyperhq/hypercli/daemon/graphdriver/register" "github.com/hyperhq/hypercli/daemon/logger" "github.com/hyperhq/hypercli/daemon/network" @@ -69,10 +73,6 @@ import ( volumedrivers "github.com/hyperhq/hypercli/volume/drivers" "github.com/hyperhq/hypercli/volume/local" "github.com/hyperhq/hypercli/volume/store" - "github.com/docker/go-connections/nat" - "github.com/docker/libnetwork" - lntypes "github.com/docker/libnetwork/types" - "github.com/docker/libtrust" "github.com/opencontainers/runc/libcontainer" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_experimental.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_experimental.go index 3fd0e765d..00440a65e 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_experimental.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_experimental.go @@ -2,7 +2,7 @@ package daemon -import "github.com/docker/engine-api/types/container" +import "github.com/hyperhq/hyper-api/types/container" func (daemon *Daemon) verifyExperimentalContainerSettings(hostConfig *container.HostConfig, config *container.Config) ([]string, error) { return nil, nil diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_stub.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_stub.go index 40e8ddc88..2d0f9c40d 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_stub.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_stub.go @@ -2,7 +2,7 @@ package daemon -import "github.com/docker/engine-api/types/container" +import "github.com/hyperhq/hyper-api/types/container" func (daemon *Daemon) verifyExperimentalContainerSettings(hostConfig *container.HostConfig, config *container.Config) ([]string, error) { return nil, nil diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_test.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_test.go index 79edd57e0..9963e70e5 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_test.go @@ -8,6 +8,8 @@ import ( "testing" "time" + "github.com/docker/go-connections/nat" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/pkg/discovery" _ "github.com/hyperhq/hypercli/pkg/discovery/memory" @@ -17,8 +19,6 @@ import ( volumedrivers "github.com/hyperhq/hypercli/volume/drivers" "github.com/hyperhq/hypercli/volume/local" "github.com/hyperhq/hypercli/volume/store" - containertypes "github.com/docker/engine-api/types/container" - "github.com/docker/go-connections/nat" ) // diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix.go index 806a9111d..f432d0488 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix.go @@ -15,6 +15,15 @@ import ( "syscall" "github.com/Sirupsen/logrus" + "github.com/docker/libnetwork" + nwconfig "github.com/docker/libnetwork/config" + "github.com/docker/libnetwork/drivers/bridge" + "github.com/docker/libnetwork/ipamutils" + "github.com/docker/libnetwork/netlabel" + "github.com/docker/libnetwork/options" + "github.com/docker/libnetwork/types" + pblkiodev "github.com/hyperhq/hyper-api/types/blkiodev" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/image" @@ -26,15 +35,6 @@ import ( "github.com/hyperhq/hypercli/reference" "github.com/hyperhq/hypercli/runconfig" runconfigopts "github.com/hyperhq/hypercli/runconfig/opts" - pblkiodev "github.com/docker/engine-api/types/blkiodev" - containertypes "github.com/docker/engine-api/types/container" - "github.com/docker/libnetwork" - nwconfig "github.com/docker/libnetwork/config" - "github.com/docker/libnetwork/drivers/bridge" - "github.com/docker/libnetwork/ipamutils" - "github.com/docker/libnetwork/netlabel" - "github.com/docker/libnetwork/options" - "github.com/docker/libnetwork/types" blkiodev "github.com/opencontainers/runc/libcontainer/configs" "github.com/opencontainers/runc/libcontainer/label" "github.com/opencontainers/runc/libcontainer/user" diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix_test.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix_test.go index 706f39f6b..26cf5eb57 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_unix_test.go @@ -7,8 +7,8 @@ import ( "os" "testing" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" - containertypes "github.com/docker/engine-api/types/container" ) // Unix test as uses settings which are not available on Windows diff --git a/vendor/github.com/hyperhq/hypercli/daemon/daemon_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/daemon_windows.go index 79d410bee..93ed8e8e2 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/daemon_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/daemon_windows.go @@ -10,18 +10,18 @@ import ( "strings" "github.com/Sirupsen/logrus" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/graphdriver" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/image" "github.com/hyperhq/hypercli/layer" "github.com/hyperhq/hypercli/reference" - containertypes "github.com/docker/engine-api/types/container" // register the windows graph driver + "github.com/docker/libnetwork" "github.com/hyperhq/hypercli/daemon/graphdriver/windows" "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/system" - "github.com/docker/libnetwork" blkiodev "github.com/opencontainers/runc/libcontainer/configs" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/delete.go b/vendor/github.com/hyperhq/hypercli/daemon/delete.go index e847799b3..314cdd894 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/delete.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/delete.go @@ -7,11 +7,11 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/layer" volumestore "github.com/hyperhq/hypercli/volume/store" - "github.com/docker/engine-api/types" ) // ContainerRm removes the container id from the filesystem. An error diff --git a/vendor/github.com/hyperhq/hypercli/daemon/delete_test.go b/vendor/github.com/hyperhq/hypercli/daemon/delete_test.go index 0c8297103..f7d090e5c 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/delete_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/delete_test.go @@ -5,9 +5,9 @@ import ( "os" "testing" + "github.com/hyperhq/hyper-api/types" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" - "github.com/docker/engine-api/types" - containertypes "github.com/docker/engine-api/types/container" ) func TestContainerDoubleDelete(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/events.go b/vendor/github.com/hyperhq/hypercli/daemon/events.go index 9fd1d6120..b6ed7a1ed 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/events.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/events.go @@ -3,9 +3,9 @@ package daemon import ( "strings" - "github.com/hyperhq/hypercli/container" - "github.com/docker/engine-api/types/events" "github.com/docker/libnetwork" + "github.com/hyperhq/hyper-api/types/events" + "github.com/hyperhq/hypercli/container" ) // LogContainerEvent generates an event related to a container with only the default attributes. diff --git a/vendor/github.com/hyperhq/hypercli/daemon/events/events.go b/vendor/github.com/hyperhq/hypercli/daemon/events/events.go index dfccf6db1..253ae1e03 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/events/events.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/events/events.go @@ -4,8 +4,8 @@ import ( "sync" "time" + eventtypes "github.com/hyperhq/hyper-api/types/events" "github.com/hyperhq/hypercli/pkg/pubsub" - eventtypes "github.com/docker/engine-api/types/events" ) const ( diff --git a/vendor/github.com/hyperhq/hypercli/daemon/events/events_test.go b/vendor/github.com/hyperhq/hypercli/daemon/events/events_test.go index fc3b84bb8..6f4e760e6 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/events/events_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/events/events_test.go @@ -5,7 +5,7 @@ import ( "testing" "time" - "github.com/docker/engine-api/types/events" + "github.com/hyperhq/hyper-api/types/events" ) func TestEventsLog(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/events/filter.go b/vendor/github.com/hyperhq/hypercli/daemon/events/filter.go index e59257914..495af1393 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/events/filter.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/events/filter.go @@ -1,9 +1,9 @@ package events import ( + "github.com/hyperhq/hyper-api/types/events" + "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types/events" - "github.com/docker/engine-api/types/filters" ) // Filter can filter out docker events from a stream diff --git a/vendor/github.com/hyperhq/hypercli/daemon/events_test.go b/vendor/github.com/hyperhq/hypercli/daemon/events_test.go index e4e62fba0..4871251a7 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/events_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/events_test.go @@ -4,10 +4,10 @@ import ( "testing" "time" + containertypes "github.com/hyperhq/hyper-api/types/container" + eventtypes "github.com/hyperhq/hyper-api/types/events" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/events" - containertypes "github.com/docker/engine-api/types/container" - eventtypes "github.com/docker/engine-api/types/events" ) func TestLogContainerEventCopyLabels(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/exec.go b/vendor/github.com/hyperhq/hypercli/daemon/exec.go index 2f08ec1f2..9eb4cf97d 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/exec.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/exec.go @@ -6,6 +6,8 @@ import ( "time" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/strslice" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/exec" "github.com/hyperhq/hypercli/daemon/execdriver" @@ -13,8 +15,6 @@ import ( "github.com/hyperhq/hypercli/pkg/pools" "github.com/hyperhq/hypercli/pkg/promise" "github.com/hyperhq/hypercli/pkg/term" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/strslice" ) func (d *Daemon) registerExecCommand(container *container.Container, config *exec.Config) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/exec_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/exec_unix.go index c811d5f75..c48f30a17 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/exec_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/exec_unix.go @@ -3,9 +3,9 @@ package daemon import ( + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/execdriver" - "github.com/docker/engine-api/types" ) // setPlatformSpecificExecProcessConfig sets platform-specific fields in the diff --git a/vendor/github.com/hyperhq/hypercli/daemon/exec_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/exec_windows.go index 4e37953c7..48f4283fa 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/exec_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/exec_windows.go @@ -1,9 +1,9 @@ package daemon import ( + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/execdriver" - "github.com/docker/engine-api/types" ) // setPlatformSpecificExecProcessConfig sets platform-specific fields in the diff --git a/vendor/github.com/hyperhq/hypercli/daemon/execdriver/driver_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/execdriver/driver_unix.go index c381f3876..eb72e3329 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/execdriver/driver_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/execdriver/driver_unix.go @@ -11,10 +11,10 @@ import ( "strings" "time" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/daemon/execdriver/native/template" "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/mount" - "github.com/docker/go-units" "github.com/opencontainers/runc/libcontainer" "github.com/opencontainers/runc/libcontainer/cgroups/fs" "github.com/opencontainers/runc/libcontainer/configs" diff --git a/vendor/github.com/hyperhq/hypercli/daemon/execdriver/windows/windows.go b/vendor/github.com/hyperhq/hypercli/daemon/execdriver/windows/windows.go index af9e1e333..b5013eb12 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/execdriver/windows/windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/execdriver/windows/windows.go @@ -9,10 +9,10 @@ import ( "sync" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/daemon/execdriver" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/pkg/parsers" - "github.com/docker/engine-api/types/container" "golang.org/x/sys/windows/registry" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/deviceset.go b/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/deviceset.go index be42fe0cd..9e8a0e0b2 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/deviceset.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/deviceset.go @@ -21,13 +21,13 @@ import ( "github.com/Sirupsen/logrus" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/daemon/graphdriver" "github.com/hyperhq/hypercli/pkg/devicemapper" "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/loopback" "github.com/hyperhq/hypercli/pkg/mount" "github.com/hyperhq/hypercli/pkg/parsers" - "github.com/docker/go-units" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/driver.go b/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/driver.go index 54c20fc63..775b0b8bb 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/driver.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/graphdriver/devmapper/driver.go @@ -11,11 +11,11 @@ import ( "github.com/Sirupsen/logrus" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/daemon/graphdriver" "github.com/hyperhq/hypercli/pkg/devicemapper" "github.com/hyperhq/hypercli/pkg/idtools" "github.com/hyperhq/hypercli/pkg/mount" - "github.com/docker/go-units" ) func init() { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/image_delete.go b/vendor/github.com/hyperhq/hypercli/daemon/image_delete.go index 8093b0774..95a268dd7 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/image_delete.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/image_delete.go @@ -4,12 +4,12 @@ import ( "fmt" "strings" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/image" "github.com/hyperhq/hypercli/pkg/stringid" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" ) type conflictType int diff --git a/vendor/github.com/hyperhq/hypercli/daemon/images.go b/vendor/github.com/hyperhq/hypercli/daemon/images.go index ddd432bbd..64d8d6ebd 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/images.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/images.go @@ -5,11 +5,11 @@ import ( "path" "sort" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hypercli/image" "github.com/hyperhq/hypercli/layer" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" ) var acceptedImageFilterTags = map[string]bool{ diff --git a/vendor/github.com/hyperhq/hypercli/daemon/import.go b/vendor/github.com/hyperhq/hypercli/daemon/import.go index 2da53fc6a..87ecd9160 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/import.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/import.go @@ -8,6 +8,7 @@ import ( "runtime" "time" + "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/image" "github.com/hyperhq/hypercli/layer" @@ -15,7 +16,6 @@ import ( "github.com/hyperhq/hypercli/pkg/progress" "github.com/hyperhq/hypercli/pkg/streamformatter" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types/container" ) // ImportImage imports an image, getting the archived layer data either from diff --git a/vendor/github.com/hyperhq/hypercli/daemon/info.go b/vendor/github.com/hyperhq/hypercli/daemon/info.go index b69bf285e..ce9082e47 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/info.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/info.go @@ -8,6 +8,7 @@ import ( "time" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/pkg/fileutils" @@ -19,7 +20,6 @@ import ( "github.com/hyperhq/hypercli/registry" "github.com/hyperhq/hypercli/utils" "github.com/hyperhq/hypercli/volume/drivers" - "github.com/docker/engine-api/types" ) // SystemInfo returns information about the host server the daemon is running on. diff --git a/vendor/github.com/hyperhq/hypercli/daemon/inspect.go b/vendor/github.com/hyperhq/hypercli/daemon/inspect.go index 295420be0..4ffbc1716 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/inspect.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/inspect.go @@ -4,13 +4,13 @@ import ( "fmt" "time" + "github.com/hyperhq/hyper-api/types" + networktypes "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hyper-api/types/versions/v1p20" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/exec" "github.com/hyperhq/hypercli/daemon/network" "github.com/hyperhq/hypercli/pkg/version" - "github.com/docker/engine-api/types" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/engine-api/types/versions/v1p20" ) // ContainerInspect returns low-level information about a diff --git a/vendor/github.com/hyperhq/hypercli/daemon/inspect_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/inspect_unix.go index 4eda38038..0f0f720ab 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/inspect_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/inspect_unix.go @@ -3,9 +3,9 @@ package daemon import ( + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/versions/v1p19" "github.com/hyperhq/hypercli/container" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/versions/v1p19" ) // This sets platform-specific fields diff --git a/vendor/github.com/hyperhq/hypercli/daemon/inspect_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/inspect_windows.go index f8665c2ab..7db9cdd7c 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/inspect_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/inspect_windows.go @@ -1,8 +1,8 @@ package daemon import ( + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/container" - "github.com/docker/engine-api/types" ) // This sets platform-specific fields diff --git a/vendor/github.com/hyperhq/hypercli/daemon/links_test.go b/vendor/github.com/hyperhq/hypercli/daemon/links_test.go index 75161dbe8..324ec71fe 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/links_test.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/links_test.go @@ -8,10 +8,10 @@ import ( "path/filepath" "testing" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/pkg/graphdb" "github.com/hyperhq/hypercli/pkg/stringid" - containertypes "github.com/docker/engine-api/types/container" ) func TestMigrateLegacySqliteLinks(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/list.go b/vendor/github.com/hyperhq/hypercli/daemon/list.go index 4efca4074..c471e563a 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/list.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/list.go @@ -7,12 +7,12 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" + networktypes "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/image" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/go-connections/nat" ) var acceptedVolumeFilterTags = map[string]bool{ diff --git a/vendor/github.com/hyperhq/hypercli/daemon/logger/fluentd/fluentd.go b/vendor/github.com/hyperhq/hypercli/daemon/logger/fluentd/fluentd.go index a5b6e930f..44ab06399 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/logger/fluentd/fluentd.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/logger/fluentd/fluentd.go @@ -10,9 +10,9 @@ import ( "strings" "github.com/Sirupsen/logrus" + "github.com/fluent/fluent-logger-golang/fluent" "github.com/hyperhq/hypercli/daemon/logger" "github.com/hyperhq/hypercli/daemon/logger/loggerutils" - "github.com/fluent/fluent-logger-golang/fluent" ) type fluentd struct { diff --git a/vendor/github.com/hyperhq/hypercli/daemon/logger/jsonfilelog/jsonfilelog.go b/vendor/github.com/hyperhq/hypercli/daemon/logger/jsonfilelog/jsonfilelog.go index 0473f02a5..7de58f756 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/logger/jsonfilelog/jsonfilelog.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/logger/jsonfilelog/jsonfilelog.go @@ -11,10 +11,10 @@ import ( "sync" "github.com/Sirupsen/logrus" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/daemon/logger" "github.com/hyperhq/hypercli/daemon/logger/loggerutils" "github.com/hyperhq/hypercli/pkg/jsonlog" - "github.com/docker/go-units" ) // Name is the name of the file that the jsonlogger logs to. diff --git a/vendor/github.com/hyperhq/hypercli/daemon/logger/syslog/syslog.go b/vendor/github.com/hyperhq/hypercli/daemon/logger/syslog/syslog.go index d7f60a10e..3d5478097 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/logger/syslog/syslog.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/logger/syslog/syslog.go @@ -17,10 +17,10 @@ import ( syslog "github.com/RackSec/srslog" "github.com/Sirupsen/logrus" + "github.com/docker/go-connections/tlsconfig" "github.com/hyperhq/hypercli/daemon/logger" "github.com/hyperhq/hypercli/daemon/logger/loggerutils" "github.com/hyperhq/hypercli/pkg/urlutil" - "github.com/docker/go-connections/tlsconfig" ) const ( diff --git a/vendor/github.com/hyperhq/hypercli/daemon/network.go b/vendor/github.com/hyperhq/hypercli/daemon/network.go index be305f4b1..a6bd5e127 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/network.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/network.go @@ -6,10 +6,10 @@ import ( "net" "strings" + "github.com/docker/libnetwork" + "github.com/hyperhq/hyper-api/types/network" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/runconfig" - "github.com/docker/engine-api/types/network" - "github.com/docker/libnetwork" ) const ( diff --git a/vendor/github.com/hyperhq/hypercli/daemon/network/settings.go b/vendor/github.com/hyperhq/hypercli/daemon/network/settings.go index 823bec269..124bebd2d 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/network/settings.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/network/settings.go @@ -1,8 +1,8 @@ package network import ( - networktypes "github.com/docker/engine-api/types/network" "github.com/docker/go-connections/nat" + networktypes "github.com/hyperhq/hyper-api/types/network" ) // Settings stores configuration details about the daemon network config diff --git a/vendor/github.com/hyperhq/hypercli/daemon/rename.go b/vendor/github.com/hyperhq/hypercli/daemon/rename.go index 9f5b2499b..0082ae836 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/rename.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/rename.go @@ -4,8 +4,8 @@ import ( "strings" "github.com/Sirupsen/logrus" - derr "github.com/hyperhq/hypercli/errors" "github.com/docker/libnetwork" + derr "github.com/hyperhq/hypercli/errors" ) // ContainerRename changes the name of a container, using the oldName diff --git a/vendor/github.com/hyperhq/hypercli/daemon/start.go b/vendor/github.com/hyperhq/hypercli/daemon/start.go index f1d2b4738..5ba1575fd 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/start.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/start.go @@ -5,10 +5,10 @@ import ( "runtime" "github.com/Sirupsen/logrus" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/runconfig" - containertypes "github.com/docker/engine-api/types/container" ) // ContainerStart starts a container. diff --git a/vendor/github.com/hyperhq/hypercli/daemon/stats.go b/vendor/github.com/hyperhq/hypercli/daemon/stats.go index 5d3504b1d..c8f464f27 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/stats.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/stats.go @@ -6,10 +6,10 @@ import ( "io" "runtime" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/versions/v1p20" "github.com/hyperhq/hypercli/daemon/execdriver" "github.com/hyperhq/hypercli/pkg/version" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/versions/v1p20" ) // ContainerStatsConfig holds information for configuring the runtime diff --git a/vendor/github.com/hyperhq/hypercli/daemon/stats_freebsd.go b/vendor/github.com/hyperhq/hypercli/daemon/stats_freebsd.go index 44c330aab..aded165cf 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/stats_freebsd.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/stats_freebsd.go @@ -1,7 +1,7 @@ package daemon import ( - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/opencontainers/runc/libcontainer" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/stats_linux.go b/vendor/github.com/hyperhq/hypercli/daemon/stats_linux.go index 201552a4e..f8b1da307 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/stats_linux.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/stats_linux.go @@ -1,7 +1,7 @@ package daemon import ( - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/opencontainers/runc/libcontainer" "github.com/opencontainers/runc/libcontainer/cgroups" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/stats_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/stats_windows.go index 0f47cf09e..dec89399e 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/stats_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/stats_windows.go @@ -1,7 +1,7 @@ package daemon import ( - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/opencontainers/runc/libcontainer" ) diff --git a/vendor/github.com/hyperhq/hypercli/daemon/top_unix.go b/vendor/github.com/hyperhq/hypercli/daemon/top_unix.go index f6a093174..cebfa1204 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/top_unix.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/top_unix.go @@ -7,8 +7,8 @@ import ( "strconv" "strings" + "github.com/hyperhq/hyper-api/types" derr "github.com/hyperhq/hypercli/errors" - "github.com/docker/engine-api/types" ) // ContainerTop lists the processes running inside of the given diff --git a/vendor/github.com/hyperhq/hypercli/daemon/top_windows.go b/vendor/github.com/hyperhq/hypercli/daemon/top_windows.go index 1f1bbbaaa..dda585a24 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/top_windows.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/top_windows.go @@ -1,8 +1,8 @@ package daemon import ( + "github.com/hyperhq/hyper-api/types" derr "github.com/hyperhq/hypercli/errors" - "github.com/docker/engine-api/types" ) // ContainerTop is not supported on Windows and returns an error. diff --git a/vendor/github.com/hyperhq/hypercli/daemon/update.go b/vendor/github.com/hyperhq/hypercli/daemon/update.go index cf9848faf..6e4def536 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/update.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/update.go @@ -3,8 +3,8 @@ package daemon import ( "fmt" + "github.com/hyperhq/hyper-api/types/container" derr "github.com/hyperhq/hypercli/errors" - "github.com/docker/engine-api/types/container" ) // ContainerUpdate updates resources of the container diff --git a/vendor/github.com/hyperhq/hypercli/daemon/volumes.go b/vendor/github.com/hyperhq/hypercli/daemon/volumes.go index 85b06b4a3..2cd9a0fe2 100644 --- a/vendor/github.com/hyperhq/hypercli/daemon/volumes.go +++ b/vendor/github.com/hyperhq/hypercli/daemon/volumes.go @@ -6,12 +6,12 @@ import ( "path/filepath" "strings" + "github.com/hyperhq/hyper-api/types" + containertypes "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hypercli/container" "github.com/hyperhq/hypercli/daemon/execdriver" derr "github.com/hyperhq/hypercli/errors" "github.com/hyperhq/hypercli/volume" - "github.com/docker/engine-api/types" - containertypes "github.com/docker/engine-api/types/container" "github.com/opencontainers/runc/libcontainer/label" ) diff --git a/vendor/github.com/hyperhq/hypercli/distribution/pull.go b/vendor/github.com/hyperhq/hypercli/distribution/pull.go index 20455625b..5f3937268 100644 --- a/vendor/github.com/hyperhq/hypercli/distribution/pull.go +++ b/vendor/github.com/hyperhq/hypercli/distribution/pull.go @@ -5,6 +5,7 @@ import ( "os" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/api" "github.com/hyperhq/hypercli/distribution/metadata" "github.com/hyperhq/hypercli/distribution/xfer" @@ -12,7 +13,6 @@ import ( "github.com/hyperhq/hypercli/pkg/progress" "github.com/hyperhq/hypercli/reference" "github.com/hyperhq/hypercli/registry" - "github.com/docker/engine-api/types" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/distribution/push.go b/vendor/github.com/hyperhq/hypercli/distribution/push.go index 35e22adfd..64ec42d55 100644 --- a/vendor/github.com/hyperhq/hypercli/distribution/push.go +++ b/vendor/github.com/hyperhq/hypercli/distribution/push.go @@ -7,6 +7,8 @@ import ( "io" "github.com/Sirupsen/logrus" + "github.com/docker/libtrust" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/distribution/metadata" "github.com/hyperhq/hypercli/distribution/xfer" "github.com/hyperhq/hypercli/image" @@ -14,8 +16,6 @@ import ( "github.com/hyperhq/hypercli/pkg/progress" "github.com/hyperhq/hypercli/reference" "github.com/hyperhq/hypercli/registry" - "github.com/docker/engine-api/types" - "github.com/docker/libtrust" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/distribution/registry.go b/vendor/github.com/hyperhq/hypercli/distribution/registry.go index a243ef74d..39ea8743b 100644 --- a/vendor/github.com/hyperhq/hypercli/distribution/registry.go +++ b/vendor/github.com/hyperhq/hypercli/distribution/registry.go @@ -14,10 +14,10 @@ import ( "github.com/docker/distribution/registry/client" "github.com/docker/distribution/registry/client/auth" "github.com/docker/distribution/registry/client/transport" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/distribution/xfer" "github.com/hyperhq/hypercli/dockerversion" "github.com/hyperhq/hypercli/registry" - "github.com/docker/engine-api/types" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/distribution/registry_unit_test.go b/vendor/github.com/hyperhq/hypercli/distribution/registry_unit_test.go index e609ee5be..a178f89f4 100644 --- a/vendor/github.com/hyperhq/hypercli/distribution/registry_unit_test.go +++ b/vendor/github.com/hyperhq/hypercli/distribution/registry_unit_test.go @@ -8,11 +8,11 @@ import ( "testing" "github.com/Sirupsen/logrus" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/reference" "github.com/hyperhq/hypercli/registry" "github.com/hyperhq/hypercli/utils" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" "golang.org/x/net/context" ) diff --git a/vendor/github.com/hyperhq/hypercli/hyper/daemon_test.go b/vendor/github.com/hyperhq/hypercli/hyper/daemon_test.go index fad520db5..bef026f56 100644 --- a/vendor/github.com/hyperhq/hypercli/hyper/daemon_test.go +++ b/vendor/github.com/hyperhq/hypercli/hyper/daemon_test.go @@ -8,11 +8,11 @@ import ( "testing" "github.com/Sirupsen/logrus" + "github.com/docker/go-connections/tlsconfig" "github.com/hyperhq/hypercli/cli" "github.com/hyperhq/hypercli/daemon" "github.com/hyperhq/hypercli/opts" "github.com/hyperhq/hypercli/pkg/mflag" - "github.com/docker/go-connections/tlsconfig" ) func TestLoadDaemonCliConfigWithoutOverriding(t *testing.T) { diff --git a/vendor/github.com/hyperhq/hypercli/image/image.go b/vendor/github.com/hyperhq/hypercli/image/image.go index b153a8231..0de9f3acb 100644 --- a/vendor/github.com/hyperhq/hypercli/image/image.go +++ b/vendor/github.com/hyperhq/hypercli/image/image.go @@ -7,7 +7,7 @@ import ( "time" "github.com/docker/distribution/digest" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // ID is the content-addressable ID of an image. diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/check_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/check_test.go index 272243b97..7e16aa233 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/check_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/check_test.go @@ -1,8 +1,8 @@ package main import ( - "os" "fmt" + "os" "testing" "github.com/docker/docker/pkg/reexec" @@ -13,7 +13,7 @@ func Test(t *testing.T) { reexec.Init() // This is required for external graphdriver tests if !isLocalDaemon { - fmt.Printf("INFO: Testing against a remote daemon(%v)\n",os.Getenv("DOCKER_HOST")) + fmt.Printf("INFO: Testing against a remote daemon(%v)\n", os.Getenv("DOCKER_HOST")) } else { fmt.Println("INFO: Testing against a local daemon") } diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/docker_hub_pull_suite_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/docker_hub_pull_suite_test.go index f193c3e94..24910c935 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/docker_hub_pull_suite_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/docker_hub_pull_suite_test.go @@ -40,9 +40,9 @@ func newDockerHubPullSuite() *DockerHubPullSuite { // SetUpSuite starts the suite daemon. func (s *DockerHubPullSuite) SetUpSuite(c *check.C) { /* - testRequires(c, DaemonIsLinux) - err := s.d.Start() - c.Assert(err, checker.IsNil, check.Commentf("starting push/pull test daemon: %v", err)) + testRequires(c, DaemonIsLinux) + err := s.d.Start() + c.Assert(err, checker.IsNil, check.Commentf("starting push/pull test daemon: %v", err)) */ } diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/docker_utils.go b/vendor/github.com/hyperhq/hypercli/integration-cli/docker_utils.go index 9199d01b3..e293bd2a2 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/docker_utils.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/docker_utils.go @@ -31,11 +31,11 @@ import ( "github.com/docker/docker/pkg/integration/checker" "github.com/docker/docker/pkg/ioutils" "github.com/docker/docker/pkg/stringutils" - HyperCli "github.com/docker/engine-api/client" - "github.com/docker/engine-api/types" "github.com/docker/go-connections/sockets" "github.com/docker/go-connections/tlsconfig" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/signature" + "github.com/hyperhq/hyper-api/types" "github.com/hyperhq/hypercli/cliconfig" ) @@ -642,7 +642,7 @@ func newRequestClient(method, endpoint string, data io.Reader, ct string) (*http region = cliconfig.DefaultHyperRegion } //calculate sign4 for apirouter - req = HyperCli.Sign4(os.Getenv("ACCESS_KEY"), os.Getenv("SECRET_KEY"), req, region) + req = signature.Sign4(os.Getenv("ACCESS_KEY"), os.Getenv("SECRET_KEY"), req, region) //for debug if endpoint == debugEndpoint { @@ -1771,7 +1771,7 @@ func appendBaseEnv(env []string) []string { preserveList := []string{ // preserve remote test host "DOCKER_HOST", - + "HYPER_CONFIG", // windows: requires preserving SystemRoot, otherwise dial tcp fails // with "GetAddrInfoW: A non-recoverable error occurred during a database lookup." "SystemRoot", diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_large_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_large_test.go index d7e1c4285..9bd88b64c 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_large_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_large_test.go @@ -1,18 +1,19 @@ package main import ( - "time" "github.com/docker/docker/pkg/integration/checker" "github.com/go-check/check" "strings" + "time" ) func (s *DockerSuite) TestCliLoadFromUrlLargeImageArchiveFile(c *check.C) { - printTestCaseName(); defer printTestDuration(time.Now()) + printTestCaseName() + defer printTestDuration(time.Now()) testRequires(c, DaemonIsLinux) - imageName := "consol/centos-xfce-vnc"; - imageUrl := "http://image-tarball.s3.amazonaws.com/test/public/consol_centos-xfce-vnc.tar"; //1.53GB + imageName := "consol/centos-xfce-vnc" + imageUrl := "http://image-tarball.s3.amazonaws.com/test/public/consol_centos-xfce-vnc.tar" //1.53GB output, exitCode, err := dockerCmdWithError("load", "-i", imageUrl) c.Assert(output, checker.Contains, "Starting to download and load the image archive, please wait...\n") diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_legacy_ext_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_legacy_ext_test.go index d10858005..093697563 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_legacy_ext_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_legacy_ext_test.go @@ -1,10 +1,10 @@ package main import ( - "time" "github.com/docker/docker/pkg/integration/checker" "github.com/go-check/check" "strings" + "time" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2/bson" @@ -13,14 +13,14 @@ import ( ) func (s *DockerSuite) TestCliLoadFromUrlLegacyImageArchiveFileWithQuota(c *check.C) { - printTestCaseName(); defer printTestDuration(time.Now()) + printTestCaseName() + defer printTestDuration(time.Now()) testRequires(c, DaemonIsLinux) - imageName := "ubuntu"; + imageName := "ubuntu" legacyImageUrl := "http://image-tarball.s3.amazonaws.com/test/public/old/ubuntu_1.8.tar.gz" imageUrl := "http://image-tarball.s3.amazonaws.com/test/public/ubuntu.tar.gz" - ///////////////////////////////////////////////////////////////////// checkImageQuota(c, 2) //load legacy image(saved by docker 1.8) @@ -34,7 +34,6 @@ func (s *DockerSuite) TestCliLoadFromUrlLegacyImageArchiveFileWithQuota(c *check c.Assert(output, checker.Contains, imageName) c.Assert(len(strings.Split(output, "\n")), checker.Equals, 3) - ///////////////////////////////////////////////////////////////////// checkImageQuota(c, 1) //load new format image(saved by docker 1.10) @@ -48,7 +47,6 @@ func (s *DockerSuite) TestCliLoadFromUrlLegacyImageArchiveFileWithQuota(c *check c.Assert(output, checker.Contains, imageName) c.Assert(len(strings.Split(output, "\n")), checker.Equals, 3) - ///////////////////////////////////////////////////////////////////// checkImageQuota(c, 1) //delete single layer @@ -71,7 +69,6 @@ func (s *DockerSuite) TestCliLoadFromUrlLegacyImageArchiveFileWithQuota(c *check c.Assert(output, checker.Contains, "") c.Assert(len(strings.Split(output, "\n")), checker.Equals, 6) - ///////////////////////////////////////////////////////////////////// checkImageQuota(c, 1) //delete all rest layer @@ -91,7 +88,6 @@ func (s *DockerSuite) TestCliLoadFromUrlLegacyImageArchiveFileWithQuota(c *check c.Assert(len(strings.Split(output, "\n")), checker.Equals, 2) } - //func (s *DockerSuite) TestCliLoadFromUrlLegacyCheckImageQuota(c *check.C) { // printTestCaseName(); defer printTestDuration(time.Now()) // testRequires(c, DaemonIsLinux) @@ -113,14 +109,13 @@ func checkImageQuota(c *check.C, expected int) { Images int `bson:"images"` } type Resourceinfo struct { - Total Total `bson:"total"` + Total Total `bson:"total"` Balance Balance `bson:"balance"` } type Tenant struct { Resourceinfo Resourceinfo `bson:"resourceinfo"` } - /////////////////////////////////////////// //init connection to mongodb session, err := mgo.Dial(os.Getenv("MONGODB_URL")) @@ -144,7 +139,6 @@ func checkImageQuota(c *check.C, expected int) { c.Assert(resultCred.TenantId, checker.NotNil) tenantId := resultCred.TenantId - /////////////////////////////////////////// // query image quota by tenant collection = db.C("tenant") diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_local_ext_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_local_ext_test.go index d26ce1053..679556863 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_local_ext_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_load_local_ext_test.go @@ -63,4 +63,4 @@ func (s *DockerSuite) TestCliLoadFromLocalTarSize600MB(c *check.C) { //check image images, _ = dockerCmd(c, "images", "jenkins:latest") c.Assert(images, checker.Contains, "jenkins") -} \ No newline at end of file +} diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_region_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_region_test.go index 8d8731c11..be228299c 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_region_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/final/cli/hyper_cli_region_test.go @@ -1,12 +1,12 @@ package main import ( - "time" "os" "os/exec" + "time" - "github.com/go-check/check" "github.com/docker/docker/pkg/integration/checker" + "github.com/go-check/check" ) func (s *DockerSuite) TestCliRegionBasic(c *check.C) { @@ -16,7 +16,7 @@ func (s *DockerSuite) TestCliRegionBasic(c *check.C) { var ( defaultRegion = os.Getenv("REGION") anotherRegion = "" - err error + err error ) switch defaultRegion { case "": diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_images_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_images_test.go index 6de62480b..702761b9b 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_images_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_images_test.go @@ -7,8 +7,8 @@ import ( "strings" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestApiImagesFilter(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_volume_init_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_volume_init_test.go index 15631bfe4..fc1ab656a 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_volume_init_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/future/api/hyper_api_volume_init_test.go @@ -3,8 +3,8 @@ package main import ( "net/http" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestApiVolumeInit(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_images_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_images_test.go index 373af41f9..674d2fede 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_images_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_images_test.go @@ -27,8 +27,8 @@ func (s *DockerSuite) TestApiImagesLoad(c *check.C) { defer printTestDuration(time.Now()) postData := map[string]interface{}{ - "fromSrc": "http://image-tarball.s3.amazonaws.com/test/public/helloworld.tar.gz", - "quiet": false, + "fromSrc": "http://image-tarball.s3.amazonaws.com/test/public/helloworld.tar.gz", + "quiet": false, } //debugEndpoint = "/images/load" diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_snapshots_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_snapshots_test.go index a64599004..9f1458269 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_snapshots_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_snapshots_test.go @@ -5,8 +5,8 @@ import ( "net/http" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestApiSnapshotsCreate(c *check.C) { @@ -16,7 +16,7 @@ func (s *DockerSuite) TestApiSnapshotsCreate(c *check.C) { c.Assert(err, check.IsNil) c.Assert(status, check.Equals, http.StatusCreated, check.Commentf(string(b))) - var snap types.Snapshot + var snap types.Snapshot err = json.Unmarshal(b, &snap) c.Assert(err, checker.IsNil) } diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_stats_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_stats_test.go index 2cc7925d8..828c500cd 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_stats_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_stats_test.go @@ -11,8 +11,8 @@ import ( "github.com/docker/docker/pkg/integration/checker" "github.com/docker/docker/pkg/version" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) var expectedNetworkInterfaceStats = strings.Split("rx_bytes rx_dropped rx_errors rx_packets tx_bytes tx_dropped tx_errors tx_packets", " ") @@ -42,7 +42,6 @@ func (s *DockerSuite) TestApiStatsNoStreamGetCpu(c *check.C) { c.Assert(cpuPercent, check.Not(checker.Equals), 0.0, check.Commentf("docker stats with no-stream get cpu usage failed: was %v", cpuPercent)) } - func (s *DockerSuite) TestApiStatsNetworkStats(c *check.C) { testRequires(c, SameHostDaemon) testRequires(c, DaemonIsLinux) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_version_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_version_test.go index a5c509f53..0a45feac1 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_version_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_version_test.go @@ -2,19 +2,19 @@ package main import ( "encoding/json" + "fmt" "net/http" - "time" - "fmt" + "time" "github.com/docker/docker/dockerversion" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestApiGetVersion(c *check.C) { - printTestCaseName() - defer printTestDuration(time.Now()) + printTestCaseName() + defer printTestDuration(time.Now()) status, body, err := sockRequest("GET", "/version", nil) c.Assert(status, checker.Equals, http.StatusOK) c.Assert(err, checker.IsNil) @@ -27,17 +27,17 @@ func (s *DockerSuite) TestApiGetVersion(c *check.C) { } func (s *DockerSuite) TestApiSimpleCreate(c *check.C) { - config := map[string]interface{}{ - "Image": "busybox", - "Cmd": []string{"/bin/sh"}, - } - status, b, err := sockRequest("POST", "/containers/create", config) - c.Assert(err, checker.IsNil) - type createResp struct { - ID string - Warning string - } - //var container createResp - fmt.Println(string(b)) - c.Assert(status, checker.Equals, http.StatusCreated) + config := map[string]interface{}{ + "Image": "busybox", + "Cmd": []string{"/bin/sh"}, + } + status, b, err := sockRequest("POST", "/containers/create", config) + c.Assert(err, checker.IsNil) + type createResp struct { + ID string + Warning string + } + //var container createResp + fmt.Println(string(b)) + c.Assert(status, checker.Equals, http.StatusCreated) } diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_volumes_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_volumes_test.go index d47354f9e..d4bcb0cc9 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_volumes_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_api_volumes_test.go @@ -5,8 +5,8 @@ import ( "net/http" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestApiVolumesList(c *check.C) { @@ -25,7 +25,7 @@ func (s *DockerSuite) TestApiVolumesList(c *check.C) { func (s *DockerSuite) TestApiVolumesCreate(c *check.C) { config := types.VolumeCreateRequest{ - Name: "test", + Name: "test", Driver: "hyper", } status, b, err := sockRequest("POST", "/volumes/create", config) @@ -64,7 +64,7 @@ func (s *DockerSuite) TestApiVolumesRemove(c *check.C) { func (s *DockerSuite) TestApiVolumesInspect(c *check.C) { config := types.VolumeCreateRequest{ - Name: "test", + Name: "test", Driver: "hyper", } status, b, err := sockRequest("POST", "/volumes/create", config) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_config_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_config_test.go index 25714c56b..315879d1c 100755 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_config_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_config_test.go @@ -1,10 +1,10 @@ package main import ( - "path/filepath" "os" + "path/filepath" "time" - + "github.com/docker/docker/pkg/integration/checker" "github.com/go-check/check" "github.com/hyperhq/hypercli/cliconfig" @@ -16,7 +16,7 @@ func (s *DockerSuite) TestCliConfigAndRewrite(c *check.C) { printTestCaseName() defer printTestDuration(time.Now()) - cmd := exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", "xx", "--secretkey", "xxxx", "tcp://127.0.0.1:6443") + cmd := exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", "xx", "--secretkey", "xxxx", "tcp://127.0.0.1:6443") out, _, _, err := runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") @@ -27,8 +27,7 @@ func (s *DockerSuite) TestCliConfigAndRewrite(c *check.C) { c.Assert(conf.CloudConfig["tcp://127.0.0.1:6443"].AccessKey, checker.Equals, "xx", check.Commentf("Should get xx, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6443"].AccessKey)) c.Assert(conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey, checker.Equals, "xxxx", check.Commentf("Should get xxxx, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey)) - - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", "yy", "--secretkey", "yyyy", "tcp://127.0.0.1:6443") + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", "yy", "--secretkey", "yyyy", "tcp://127.0.0.1:6443") out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") @@ -39,12 +38,12 @@ func (s *DockerSuite) TestCliConfigAndRewrite(c *check.C) { c.Assert(conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey, checker.Equals, "yyyy", check.Commentf("Should get yyyy, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey)) //patch - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY"), os.Getenv("DOCKER_HOST")) + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY"), os.Getenv("DOCKER_HOST")) out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY")) + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY")) out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") @@ -54,8 +53,7 @@ func (s *DockerSuite) TestCliConfigMultiHostBasic(c *check.C) { printTestCaseName() defer printTestDuration(time.Now()) - - cmd := exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", "xx", "--secretkey", "xxxx", "tcp://127.0.0.1:6443") + cmd := exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", "xx", "--secretkey", "xxxx", "tcp://127.0.0.1:6443") out, _, _, err := runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") @@ -66,7 +64,7 @@ func (s *DockerSuite) TestCliConfigMultiHostBasic(c *check.C) { c.Assert(conf.CloudConfig["tcp://127.0.0.1:6443"].AccessKey, checker.Equals, "xx", check.Commentf("Should get xx, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6443"].AccessKey)) c.Assert(conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey, checker.Equals, "xxxx", check.Commentf("Should get xxxx, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6443"].SecretKey)) - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", "yy", "--secretkey", "yyyy", "tcp://127.0.0.1:6444") + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", "yy", "--secretkey", "yyyy", "tcp://127.0.0.1:6444") out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") @@ -77,12 +75,12 @@ func (s *DockerSuite) TestCliConfigMultiHostBasic(c *check.C) { c.Assert(conf.CloudConfig["tcp://127.0.0.1:6444"].SecretKey, checker.Equals, "yyyy", check.Commentf("Should get yyyy, but get %s\n", conf.CloudConfig["tcp://127.0.0.1:6444"].SecretKey)) //patch - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY"), os.Getenv("DOCKER_HOST")) + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY"), os.Getenv("DOCKER_HOST")) out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") - cmd = exec.Command(dockerBinary, "config", "--default-region" , os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY")) + cmd = exec.Command(dockerBinary, "config", "--default-region", os.Getenv("REGION"), "--accesskey", os.Getenv("ACCESS_KEY"), "--secretkey", os.Getenv("SECRET_KEY")) out, _, _, err = runCommandWithStdoutStderr(cmd) c.Assert(err, checker.IsNil) c.Assert(out, checker.Contains, "WARNING: Your login credentials has been saved in "+homedir.Get()+"/.hyper/config.json") diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_create_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_create_test.go index 21a7ff498..13aab14b1 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_create_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_create_test.go @@ -176,7 +176,7 @@ func (s *DockerTrustSuite) TestCliCreateTrustedCreate(c *check.C) { repoName := s.setupTrustedImage(c, "trusted-create") // Try create - createCmd := exec.Command(dockerBinary, "create", repoName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", repoName) s.trustedCmd(createCmd) out, _, err := runCommandWithOutput(createCmd) c.Assert(err, check.IsNil) @@ -185,7 +185,7 @@ func (s *DockerTrustSuite) TestCliCreateTrustedCreate(c *check.C) { dockerCmd(c, "rmi", repoName) // Try untrusted create to ensure we pushed the tag to the registry - createCmd = exec.Command(dockerBinary, "create", "--disable-content-trust=true", repoName) + createCmd = exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", "--disable-content-trust=true", repoName) s.trustedCmd(createCmd) out, _, err = runCommandWithOutput(createCmd) c.Assert(err, check.IsNil) @@ -203,7 +203,7 @@ func (s *DockerTrustSuite) TestCliCreateUntrustedCreate(c *check.C) { dockerCmd(c, "rmi", withTagName) // Try trusted create on untrusted tag - createCmd := exec.Command(dockerBinary, "create", withTagName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", withTagName) s.trustedCmd(createCmd) out, _, err := runCommandWithOutput(createCmd) c.Assert(err, check.Not(check.IsNil)) @@ -216,7 +216,7 @@ func (s *DockerTrustSuite) TestCliCreateTrustedIsolatedCreate(c *check.C) { repoName := s.setupTrustedImage(c, "trusted-isolated-create") // Try create - createCmd := exec.Command(dockerBinary, "--config", "/tmp/docker-isolated-create", "create", repoName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "--config", "/tmp/docker-isolated-create", "create", repoName) s.trustedCmd(createCmd) out, _, err := runCommandWithOutput(createCmd) c.Assert(err, check.IsNil) @@ -235,7 +235,7 @@ func (s *DockerTrustSuite) TestCliCreateWhenCertExpired(c *check.C) { runAtDifferentDate(elevenYearsFromNow, func() { // Try create - createCmd := exec.Command(dockerBinary, "create", repoName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", repoName) s.trustedCmd(createCmd) out, _, err := runCommandWithOutput(createCmd) c.Assert(err, check.Not(check.IsNil)) @@ -244,7 +244,7 @@ func (s *DockerTrustSuite) TestCliCreateWhenCertExpired(c *check.C) { runAtDifferentDate(elevenYearsFromNow, func() { // Try create - createCmd := exec.Command(dockerBinary, "create", "--disable-content-trust", repoName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", "--disable-content-trust", repoName) s.trustedCmd(createCmd) out, _, err := runCommandWithOutput(createCmd) c.Assert(err, check.Not(check.IsNil)) @@ -262,7 +262,7 @@ func (s *DockerTrustSuite) TestCliCreateTrustedCreateFromBadTrustServer(c *check // tag the image and upload it to the private registry dockerCmd(c, "tag", "busybox", repoName) - pushCmd := exec.Command(dockerBinary, "push", repoName) + pushCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "push", repoName) s.trustedCmd(pushCmd) out, _, err := runCommandWithOutput(pushCmd) c.Assert(err, check.IsNil) @@ -271,7 +271,7 @@ func (s *DockerTrustSuite) TestCliCreateTrustedCreateFromBadTrustServer(c *check dockerCmd(c, "rmi", repoName) // Try create - createCmd := exec.Command(dockerBinary, "create", repoName) + createCmd := exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", repoName) s.trustedCmd(createCmd) out, _, err = runCommandWithOutput(createCmd) c.Assert(err, check.IsNil) @@ -289,14 +289,14 @@ func (s *DockerTrustSuite) TestCliCreateTrustedCreateFromBadTrustServer(c *check dockerCmd(c, "--config", evilLocalConfigDir, "tag", "busybox", repoName) // Push up to the new server - pushCmd = exec.Command(dockerBinary, "--config", evilLocalConfigDir, "push", repoName) + pushCmd = exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "--config", evilLocalConfigDir, "push", repoName) s.trustedCmd(pushCmd) out, _, err = runCommandWithOutput(pushCmd) c.Assert(err, check.IsNil) c.Assert(string(out), checker.Contains, "Signing and pushing trust metadata", check.Commentf("Missing expected output on trusted push:\n%s", out)) // Now, try creating with the original client from this new trust server. This should fail. - createCmd = exec.Command(dockerBinary, "create", repoName) + createCmd = exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "create", repoName) s.trustedCmd(createCmd) out, _, err = runCommandWithOutput(createCmd) c.Assert(err, check.Not(check.IsNil)) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_exec_unix_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_exec_unix_test.go index ed00ba18b..103f37a18 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_exec_unix_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_exec_unix_test.go @@ -45,7 +45,7 @@ func (s *DockerSuite) TestCliExecInteractiveStdinClose(c *check.C) { } } -func (s *DockerSuite) TestCliExecTTY(c *check.C) { +func (s *DockerSuite) TestCliExecTTYBasic(c *check.C) { printTestCaseName() defer printTestDuration(time.Now()) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_experimental_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_experimental_test.go index 60688ad04..c8e744218 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_experimental_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_experimental_test.go @@ -4,8 +4,8 @@ import ( "time" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestCliInspectNamedMountPointBasic(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_test.go index cae6dd2dd..b41912c71 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_inspect_test.go @@ -8,8 +8,8 @@ import ( "time" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types/container" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types/container" ) func checkValidGraphDriver(c *check.C, name string) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_snapshot_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_snapshot_test.go index d0f9f862d..da8925089 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_snapshot_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_snapshot_test.go @@ -1,6 +1,7 @@ package main import ( + "os" "os/exec" "strings" "time" @@ -35,7 +36,7 @@ func (s *DockerSuite) TestCliSnapshotInspect(c *check.C) { testRequires(c, DaemonIsLinux) c.Assert( - exec.Command(dockerBinary, "snapshot", "inspect", "doesntexist").Run(), + exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "snapshot", "inspect", "doesntexist").Run(), check.Not(check.IsNil), check.Commentf("snapshot inspect should error on non-existent volume"), ) @@ -149,12 +150,12 @@ func (s *DockerSuite) TestCliSnapshotNoArgs(c *check.C) { c.Assert(out, checker.Contains, usage) // invalid arg should error and show the command on stderr - _, stderr, _, err := runCommandWithStdoutStderr(exec.Command(dockerBinary, "snapshot", "somearg")) + _, stderr, _, err := runCommandWithStdoutStderr(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "snapshot", "somearg")) c.Assert(err, check.NotNil, check.Commentf(stderr)) c.Assert(stderr, checker.Contains, usage) // invalid flag should error and show the flag error and cmd usage - _, stderr, _, err = runCommandWithStdoutStderr(exec.Command(dockerBinary, "snapshot", "--no-such-flag")) + _, stderr, _, err = runCommandWithStdoutStderr(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "snapshot", "--no-such-flag")) c.Assert(err, check.NotNil, check.Commentf(stderr)) c.Assert(stderr, checker.Contains, usage) c.Assert(stderr, checker.Contains, "flag provided but not defined: --no-such-flag") diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_volume_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_volume_test.go index fa9b4ad7d..b25fe5bec 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_volume_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/hyper_cli_volume_test.go @@ -1,6 +1,7 @@ package main import ( + "os" "os/exec" "strings" "time" @@ -14,7 +15,7 @@ func (s *DockerSuite) TestCliVolumeCreate(c *check.C) { defer printTestDuration(time.Now()) dockerCmd(c, "volume", "create") - _, err := runCommand(exec.Command(dockerBinary, "volume", "create", "-d", "nosuchdriver")) + _, err := runCommand(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "volume", "create", "-d", "nosuchdriver")) c.Assert(err, check.Not(check.IsNil)) out, _ := dockerCmd(c, "volume", "create", "--name=test") @@ -27,7 +28,7 @@ func (s *DockerSuite) TestCliVolumeInspect(c *check.C) { defer printTestDuration(time.Now()) c.Assert( - exec.Command(dockerBinary, "volume", "inspect", "doesntexist").Run(), + exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "volume", "inspect", "doesntexist").Run(), check.Not(check.IsNil), check.Commentf("volume inspect should error on non-existent volume"), ) @@ -153,7 +154,7 @@ func (s *DockerSuite) TestCliVolumeRmBasic(c *check.C) { volumeID := "testing" dockerCmd(c, "run", "-v", volumeID+":"+prefix+"/foo", "--name=test", "busybox", "sh", "-c", "echo hello > /foo/bar") - out, _, err := runCommandWithOutput(exec.Command(dockerBinary, "volume", "rm", "testing")) + out, _, err := runCommandWithOutput(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "volume", "rm", "testing")) c.Assert( err, check.Not(check.IsNil), @@ -193,12 +194,12 @@ func (s *DockerSuite) TestCliVolumeNoArgs(c *check.C) { c.Assert(out, checker.Contains, usage) // invalid arg should error and show the command usage on stderr - _, stderr, _, err := runCommandWithStdoutStderr(exec.Command(dockerBinary, "volume", "somearg")) + _, stderr, _, err := runCommandWithStdoutStderr(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "volume", "somearg")) c.Assert(err, check.NotNil, check.Commentf(stderr)) c.Assert(stderr, checker.Contains, usage) // invalid flag should error and show the flag error and cmd usage - _, stderr, _, err = runCommandWithStdoutStderr(exec.Command(dockerBinary, "volume", "--no-such-flag")) + _, stderr, _, err = runCommandWithStdoutStderr(exec.Command(dockerBinary, "--region", os.Getenv("DOCKER_HOST"), "volume", "--no-such-flag")) c.Assert(err, check.NotNil, check.Commentf(stderr)) c.Assert(stderr, checker.Contains, usage) c.Assert(stderr, checker.Contains, "flag provided but not defined: --no-such-flag") diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_test.go index bb1ce4bc4..41b43605d 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_test.go @@ -15,7 +15,6 @@ import ( const attachWait = 5 * time.Second - //FIXME: attach initialize unproperly? and return empty string? func (s *DockerSuite) TestAttachMultipleAndRestart(c *check.C) { testRequires(c, DaemonIsLinux) @@ -155,4 +154,4 @@ func (s *DockerSuite) TestAttachDisconnect(c *check.C) { // Expect container to still be running after stdin is closed running := inspectField(c, id, "State.Running") c.Assert(running, check.Equals, "true") -} \ No newline at end of file +} diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_unix_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_unix_test.go index 482923e66..3363b1ea3 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_unix_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/docker_cli_attach_unix_test.go @@ -6,7 +6,7 @@ import ( //"bufio" "os/exec" //"strings" - "time" + "time" //"fmt" "github.com/docker/docker/pkg/integration/checker" @@ -84,6 +84,7 @@ func (s *DockerSuite) TestAttachAfterDetach(c *check.C) { c.Assert(string(bytes[:nBytes]), checker.Contains, "/ #") } + /* //FIXME:#issue77 // TestAttachDetach checks that attach in tty mode can be detached using the long container ID @@ -194,4 +195,4 @@ func (s *DockerSuite) TestAttachDetachTruncatedID(c *check.C) { } } -*/ \ No newline at end of file +*/ diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_attach_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_attach_test.go index 747e59286..be56fd94e 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_attach_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_attach_test.go @@ -12,7 +12,6 @@ import ( "github.com/go-check/check" ) - // regression gh14320 func (s *DockerSuite) TestPostContainersAttachContainerNotFound(c *check.C) { status, body, err := sockRequest("POST", "/containers/doesnotexist/attach", nil) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_containers_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_containers_test.go index 3f4d02aa2..029a373f4 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_containers_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_api_containers_test.go @@ -10,8 +10,8 @@ import ( "time" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestContainerApiGetAll(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_cli_stats_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_cli_stats_test.go index e7c9d8970..591f3a8f8 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_cli_stats_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/issue/hyper_cli_stats_test.go @@ -96,7 +96,6 @@ func (s *DockerSuite) TestStatsAllNoStream(c *check.C) { } } - // NEED TO BE FIXED func (s *DockerSuite) TestStatsAllNewContainersAdded(c *check.C) { // Windows does not support stats diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/api/hyper_api_network_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/api/hyper_api_network_test.go index b5748e166..5cdf36c27 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/api/hyper_api_network_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/api/hyper_api_network_test.go @@ -9,10 +9,10 @@ import ( "strings" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/filters" - "github.com/docker/engine-api/types/network" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/filters" + "github.com/hyperhq/hyper-api/types/network" ) func (s *DockerSuite) TestApiNetworkGetDefaults(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_by_digest_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_by_digest_test.go index 0d5ae482a..1cd0e5562 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_by_digest_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_by_digest_test.go @@ -13,8 +13,8 @@ import ( "github.com/docker/distribution/manifest/schema2" "github.com/docker/docker/pkg/integration/checker" "github.com/docker/docker/pkg/stringutils" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) var ( diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_network_unix_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_network_unix_test.go index 102ab78f2..3a10b39fe 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_network_unix_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_network_unix_test.go @@ -16,14 +16,14 @@ import ( "github.com/docker/docker/pkg/integration/checker" "github.com/docker/docker/runconfig" - "github.com/docker/engine-api/types" - "github.com/docker/engine-api/types/versions/v1p20" "github.com/docker/libnetwork/driverapi" remoteapi "github.com/docker/libnetwork/drivers/remote/api" "github.com/docker/libnetwork/ipamapi" remoteipam "github.com/docker/libnetwork/ipams/remote/api" "github.com/docker/libnetwork/netlabel" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/versions/v1p20" "github.com/vishvananda/netlink" ) diff --git a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_update_unix_test.go b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_update_unix_test.go index bb261e8be..ac4ebe0d4 100644 --- a/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_update_unix_test.go +++ b/vendor/github.com/hyperhq/hypercli/integration-cli/skip/cli/hyper_cli_update_unix_test.go @@ -8,8 +8,8 @@ import ( "strings" "github.com/docker/docker/pkg/integration/checker" - "github.com/docker/engine-api/types" "github.com/go-check/check" + "github.com/hyperhq/hyper-api/types" ) func (s *DockerSuite) TestUpdateRunningContainer(c *check.C) { diff --git a/vendor/github.com/hyperhq/hypercli/pkg/authorization/authz_test.go b/vendor/github.com/hyperhq/hypercli/pkg/authorization/authz_test.go index 1f86b00d7..e7004b938 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/authorization/authz_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/authorization/authz_test.go @@ -12,9 +12,9 @@ import ( "reflect" "testing" - "github.com/hyperhq/hypercli/pkg/plugins" "github.com/docker/go-connections/tlsconfig" "github.com/gorilla/mux" + "github.com/hyperhq/hypercli/pkg/plugins" ) const pluginAddress = "authzplugin.sock" diff --git a/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv.go b/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv.go index 44823beff..c7d767030 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv.go @@ -7,13 +7,13 @@ import ( "time" log "github.com/Sirupsen/logrus" - "github.com/hyperhq/hypercli/pkg/discovery" "github.com/docker/go-connections/tlsconfig" "github.com/docker/libkv" "github.com/docker/libkv/store" "github.com/docker/libkv/store/consul" "github.com/docker/libkv/store/etcd" "github.com/docker/libkv/store/zookeeper" + "github.com/hyperhq/hypercli/pkg/discovery" ) const ( diff --git a/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv_test.go b/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv_test.go index 184661863..24430879c 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/discovery/kv/kv_test.go @@ -8,9 +8,9 @@ import ( "testing" "time" - "github.com/hyperhq/hypercli/pkg/discovery" "github.com/docker/libkv" "github.com/docker/libkv/store" + "github.com/hyperhq/hypercli/pkg/discovery" "github.com/go-check/check" ) diff --git a/vendor/github.com/hyperhq/hypercli/pkg/discovery/memory/memory_test.go b/vendor/github.com/hyperhq/hypercli/pkg/discovery/memory/memory_test.go index 9492905e3..144c7cf85 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/discovery/memory/memory_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/discovery/memory/memory_test.go @@ -3,8 +3,8 @@ package memory import ( "testing" - "github.com/hyperhq/hypercli/pkg/discovery" "github.com/go-check/check" + "github.com/hyperhq/hypercli/pkg/discovery" ) // Hook up gocheck into the "go test" runner. diff --git a/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlog_marshalling_test.go b/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlog_marshalling_test.go index 5e455685a..38984be57 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlog_marshalling_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlog_marshalling_test.go @@ -7,17 +7,17 @@ import ( func TestJSONLogMarshalJSON(t *testing.T) { logs := map[JSONLog]string{ - JSONLog{Log: `"A log line with \\"`}: `^{\"log\":\"\\\"A log line with \\\\\\\\\\\"\",\"time\":\".{20,}\"}$`, - JSONLog{Log: "A log line"}: `^{\"log\":\"A log line\",\"time\":\".{20,}\"}$`, - JSONLog{Log: "A log line with \r"}: `^{\"log\":\"A log line with \\r\",\"time\":\".{20,}\"}$`, - JSONLog{Log: "A log line with & < >"}: `^{\"log\":\"A log line with \\u0026 \\u003c \\u003e\",\"time\":\".{20,}\"}$`, - JSONLog{Log: "A log line with utf8 : 🚀 ψ ω β"}: `^{\"log\":\"A log line with utf8 : 🚀 ψ ω β\",\"time\":\".{20,}\"}$`, - JSONLog{Stream: "stdout"}: `^{\"stream\":\"stdout\",\"time\":\".{20,}\"}$`, - JSONLog{}: `^{\"time\":\".{20,}\"}$`, + {Log: `"A log line with \\"`}: `^{\"log\":\"\\\"A log line with \\\\\\\\\\\"\",\"time\":\".{20,}\"}$`, + {Log: "A log line"}: `^{\"log\":\"A log line\",\"time\":\".{20,}\"}$`, + {Log: "A log line with \r"}: `^{\"log\":\"A log line with \\r\",\"time\":\".{20,}\"}$`, + {Log: "A log line with & < >"}: `^{\"log\":\"A log line with \\u0026 \\u003c \\u003e\",\"time\":\".{20,}\"}$`, + {Log: "A log line with utf8 : 🚀 ψ ω β"}: `^{\"log\":\"A log line with utf8 : 🚀 ψ ω β\",\"time\":\".{20,}\"}$`, + {Stream: "stdout"}: `^{\"stream\":\"stdout\",\"time\":\".{20,}\"}$`, + {}: `^{\"time\":\".{20,}\"}$`, // These ones are a little weird - JSONLog{Log: "\u2028 \u2029"}: `^{\"log\":\"\\u2028 \\u2029\",\"time\":\".{20,}\"}$`, - JSONLog{Log: string([]byte{0xaF})}: `^{\"log\":\"\\ufffd\",\"time\":\".{20,}\"}$`, - JSONLog{Log: string([]byte{0x7F})}: `^{\"log\":\"\x7f\",\"time\":\".{20,}\"}$`, + {Log: "\u2028 \u2029"}: `^{\"log\":\"\\u2028 \\u2029\",\"time\":\".{20,}\"}$`, + {Log: string([]byte{0xaF})}: `^{\"log\":\"\\ufffd\",\"time\":\".{20,}\"}$`, + {Log: string([]byte{0x7F})}: `^{\"log\":\"\x7f\",\"time\":\".{20,}\"}$`, } for jsonLog, expression := range logs { data, err := jsonLog.MarshalJSON() diff --git a/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlogbytes_test.go b/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlogbytes_test.go index 6d6ad2158..41049aaea 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlogbytes_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/jsonlog/jsonlogbytes_test.go @@ -8,21 +8,21 @@ import ( func TestJSONLogsMarshalJSONBuf(t *testing.T) { logs := map[*JSONLogs]string{ - &JSONLogs{Log: []byte(`"A log line with \\"`)}: `^{\"log\":\"\\\"A log line with \\\\\\\\\\\"\",\"time\":}$`, - &JSONLogs{Log: []byte("A log line")}: `^{\"log\":\"A log line\",\"time\":}$`, - &JSONLogs{Log: []byte("A log line with \r")}: `^{\"log\":\"A log line with \\r\",\"time\":}$`, - &JSONLogs{Log: []byte("A log line with & < >")}: `^{\"log\":\"A log line with \\u0026 \\u003c \\u003e\",\"time\":}$`, - &JSONLogs{Log: []byte("A log line with utf8 : 🚀 ψ ω β")}: `^{\"log\":\"A log line with utf8 : 🚀 ψ ω β\",\"time\":}$`, - &JSONLogs{Stream: "stdout"}: `^{\"stream\":\"stdout\",\"time\":}$`, - &JSONLogs{Stream: "stdout", Log: []byte("A log line")}: `^{\"log\":\"A log line\",\"stream\":\"stdout\",\"time\":}$`, - &JSONLogs{Created: "time"}: `^{\"time\":time}$`, - &JSONLogs{}: `^{\"time\":}$`, + {Log: []byte(`"A log line with \\"`)}: `^{\"log\":\"\\\"A log line with \\\\\\\\\\\"\",\"time\":}$`, + {Log: []byte("A log line")}: `^{\"log\":\"A log line\",\"time\":}$`, + {Log: []byte("A log line with \r")}: `^{\"log\":\"A log line with \\r\",\"time\":}$`, + {Log: []byte("A log line with & < >")}: `^{\"log\":\"A log line with \\u0026 \\u003c \\u003e\",\"time\":}$`, + {Log: []byte("A log line with utf8 : 🚀 ψ ω β")}: `^{\"log\":\"A log line with utf8 : 🚀 ψ ω β\",\"time\":}$`, + {Stream: "stdout"}: `^{\"stream\":\"stdout\",\"time\":}$`, + {Stream: "stdout", Log: []byte("A log line")}: `^{\"log\":\"A log line\",\"stream\":\"stdout\",\"time\":}$`, + {Created: "time"}: `^{\"time\":time}$`, + {}: `^{\"time\":}$`, // These ones are a little weird - &JSONLogs{Log: []byte("\u2028 \u2029")}: `^{\"log\":\"\\u2028 \\u2029\",\"time\":}$`, - &JSONLogs{Log: []byte{0xaF}}: `^{\"log\":\"\\ufffd\",\"time\":}$`, - &JSONLogs{Log: []byte{0x7F}}: `^{\"log\":\"\x7f\",\"time\":}$`, + {Log: []byte("\u2028 \u2029")}: `^{\"log\":\"\\u2028 \\u2029\",\"time\":}$`, + {Log: []byte{0xaF}}: `^{\"log\":\"\\ufffd\",\"time\":}$`, + {Log: []byte{0x7F}}: `^{\"log\":\"\x7f\",\"time\":}$`, // with raw attributes - &JSONLogs{Log: []byte("A log line"), RawAttrs: []byte(`{"hello":"world","value":1234}`)}: `^{\"log\":\"A log line\",\"attrs\":{\"hello\":\"world\",\"value\":1234},\"time\":}$`, + {Log: []byte("A log line"), RawAttrs: []byte(`{"hello":"world","value":1234}`)}: `^{\"log\":\"A log line\",\"attrs\":{\"hello\":\"world\",\"value\":1234},\"time\":}$`, } for jsonLog, expression := range logs { var buf bytes.Buffer diff --git a/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage.go b/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage.go index a97b350a2..ed5b4ea43 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage.go @@ -7,9 +7,9 @@ import ( "strings" "time" + "github.com/docker/go-units" "github.com/hyperhq/hypercli/pkg/jsonlog" "github.com/hyperhq/hypercli/pkg/term" - "github.com/docker/go-units" ) // JSONError wraps a concrete Code and Message, `Code` is diff --git a/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage_test.go b/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage_test.go index 829032395..391ce232e 100644 --- a/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage_test.go +++ b/vendor/github.com/hyperhq/hypercli/pkg/jsonmessage/jsonmessage_test.go @@ -56,16 +56,16 @@ func TestJSONMessageDisplay(t *testing.T) { now := time.Now() messages := map[JSONMessage][]string{ // Empty - JSONMessage{}: {"\n", "\n"}, + {}: {"\n", "\n"}, // Status - JSONMessage{ + { Status: "status", }: { "status\n", "status\n", }, // General - JSONMessage{ + { Time: now.Unix(), ID: "ID", From: "From", @@ -75,7 +75,7 @@ func TestJSONMessageDisplay(t *testing.T) { fmt.Sprintf("%v ID: (from From) status\n", time.Unix(now.Unix(), 0).Format(jsonlog.RFC3339NanoFixed)), }, // General, with nano precision time - JSONMessage{ + { TimeNano: now.UnixNano(), ID: "ID", From: "From", @@ -85,7 +85,7 @@ func TestJSONMessageDisplay(t *testing.T) { fmt.Sprintf("%v ID: (from From) status\n", time.Unix(0, now.UnixNano()).Format(jsonlog.RFC3339NanoFixed)), }, // General, with both times Nano is preferred - JSONMessage{ + { Time: now.Unix(), TimeNano: now.UnixNano(), ID: "ID", @@ -96,7 +96,7 @@ func TestJSONMessageDisplay(t *testing.T) { fmt.Sprintf("%v ID: (from From) status\n", time.Unix(0, now.UnixNano()).Format(jsonlog.RFC3339NanoFixed)), }, // Stream over status - JSONMessage{ + { Status: "status", Stream: "stream", }: { @@ -104,7 +104,7 @@ func TestJSONMessageDisplay(t *testing.T) { "stream", }, // With progress message - JSONMessage{ + { Status: "status", ProgressMessage: "progressMessage", }: { @@ -112,7 +112,7 @@ func TestJSONMessageDisplay(t *testing.T) { "status progressMessage", }, // With progress, stream empty - JSONMessage{ + { Status: "status", Stream: "", Progress: &JSONProgress{Current: 1}, diff --git a/vendor/github.com/hyperhq/hypercli/profiles/seccomp/seccomp.go b/vendor/github.com/hyperhq/hypercli/profiles/seccomp/seccomp.go index fbc0307bc..9a5bfb6f7 100644 --- a/vendor/github.com/hyperhq/hypercli/profiles/seccomp/seccomp.go +++ b/vendor/github.com/hyperhq/hypercli/profiles/seccomp/seccomp.go @@ -6,7 +6,7 @@ import ( "encoding/json" "fmt" - "github.com/docker/engine-api/types" + "github.com/hyperhq/hyper-api/types" "github.com/opencontainers/runc/libcontainer/configs" "github.com/opencontainers/runc/libcontainer/seccomp" ) diff --git a/vendor/github.com/hyperhq/hypercli/registry/auth.go b/vendor/github.com/hyperhq/hypercli/registry/auth.go index 7175598c7..0f28ce111 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/auth.go +++ b/vendor/github.com/hyperhq/hypercli/registry/auth.go @@ -8,8 +8,8 @@ import ( "strings" "github.com/Sirupsen/logrus" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" ) // Login tries to register/login to the registry server. diff --git a/vendor/github.com/hyperhq/hypercli/registry/auth_test.go b/vendor/github.com/hyperhq/hypercli/registry/auth_test.go index caff8667d..8a9fbc8c5 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/auth_test.go +++ b/vendor/github.com/hyperhq/hypercli/registry/auth_test.go @@ -3,8 +3,8 @@ package registry import ( "testing" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" ) func buildAuthConfigs() map[string]types.AuthConfig { diff --git a/vendor/github.com/hyperhq/hypercli/registry/config.go b/vendor/github.com/hyperhq/hypercli/registry/config.go index 77e7b667d..f9231fa18 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/config.go +++ b/vendor/github.com/hyperhq/hypercli/registry/config.go @@ -7,10 +7,10 @@ import ( "net/url" "strings" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/reference" - registrytypes "github.com/docker/engine-api/types/registry" ) // Options holds command line options. diff --git a/vendor/github.com/hyperhq/hypercli/registry/endpoint.go b/vendor/github.com/hyperhq/hypercli/registry/endpoint.go index ef00431f4..3b6306a82 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/endpoint.go +++ b/vendor/github.com/hyperhq/hypercli/registry/endpoint.go @@ -13,7 +13,7 @@ import ( "github.com/Sirupsen/logrus" "github.com/docker/distribution/registry/api/v2" "github.com/docker/distribution/registry/client/transport" - registrytypes "github.com/docker/engine-api/types/registry" + registrytypes "github.com/hyperhq/hyper-api/types/registry" ) // for mocking in unit tests diff --git a/vendor/github.com/hyperhq/hypercli/registry/registry.go b/vendor/github.com/hyperhq/hypercli/registry/registry.go index 6214d41af..759a1d95c 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/registry.go +++ b/vendor/github.com/hyperhq/hypercli/registry/registry.go @@ -38,19 +38,19 @@ func init() { func newTLSConfig(hostname string, isSecure bool) (*tls.Config, error) { // PreferredServerCipherSuites should have no effect - tlsConfig := tlsconfig.ServerDefault + tlsConfig := tlsconfig.ServerDefault() tlsConfig.InsecureSkipVerify = !isSecure if isSecure && CertsDir != "" { hostDir := filepath.Join(CertsDir, cleanPath(hostname)) logrus.Debugf("hostDir: %s", hostDir) - if err := ReadCertsDirectory(&tlsConfig, hostDir); err != nil { + if err := ReadCertsDirectory(tlsConfig, hostDir); err != nil { return nil, err } } - return &tlsConfig, nil + return tlsConfig, nil } func hasFile(files []os.FileInfo, name string) bool { @@ -218,8 +218,8 @@ func ContinueOnError(err error) bool { // default TLS configuration. func NewTransport(tlsConfig *tls.Config) *http.Transport { if tlsConfig == nil { - var cfg = tlsconfig.ServerDefault - tlsConfig = &cfg + var cfg = tlsconfig.ServerDefault() + tlsConfig = cfg } return &http.Transport{ Proxy: http.ProxyFromEnvironment, diff --git a/vendor/github.com/hyperhq/hypercli/registry/registry_mock_test.go b/vendor/github.com/hyperhq/hypercli/registry/registry_mock_test.go index 5966afc9e..23074264d 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/registry_mock_test.go +++ b/vendor/github.com/hyperhq/hypercli/registry/registry_mock_test.go @@ -15,10 +15,10 @@ import ( "testing" "time" + "github.com/gorilla/mux" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/opts" "github.com/hyperhq/hypercli/reference" - registrytypes "github.com/docker/engine-api/types/registry" - "github.com/gorilla/mux" "github.com/Sirupsen/logrus" ) diff --git a/vendor/github.com/hyperhq/hypercli/registry/registry_test.go b/vendor/github.com/hyperhq/hypercli/registry/registry_test.go index ef63b4edf..6f995dc93 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/registry_test.go +++ b/vendor/github.com/hyperhq/hypercli/registry/registry_test.go @@ -9,9 +9,9 @@ import ( "testing" "github.com/docker/distribution/registry/client/transport" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" ) var ( diff --git a/vendor/github.com/hyperhq/hypercli/registry/service.go b/vendor/github.com/hyperhq/hypercli/registry/service.go index 2b2dc778d..eae55f120 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/service.go +++ b/vendor/github.com/hyperhq/hypercli/registry/service.go @@ -6,9 +6,9 @@ import ( "net/url" "strings" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" ) // Service is a registry service. It tracks configuration data such as a list diff --git a/vendor/github.com/hyperhq/hypercli/registry/service_v1.go b/vendor/github.com/hyperhq/hypercli/registry/service_v1.go index 699a4ba2e..638acb313 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/service_v1.go +++ b/vendor/github.com/hyperhq/hypercli/registry/service_v1.go @@ -4,13 +4,13 @@ import ( "fmt" "strings" - "github.com/hyperhq/hypercli/reference" "github.com/docker/go-connections/tlsconfig" + "github.com/hyperhq/hypercli/reference" ) func (s *Service) lookupV1Endpoints(repoName reference.Named) (endpoints []APIEndpoint, err error) { - var cfg = tlsconfig.ServerDefault - tlsConfig := &cfg + var cfg = tlsconfig.ServerDefault() + tlsConfig := cfg nameString := repoName.FullName() if strings.HasPrefix(nameString, DefaultNamespace+"/") { endpoints = append(endpoints, APIEndpoint{ diff --git a/vendor/github.com/hyperhq/hypercli/registry/service_v2.go b/vendor/github.com/hyperhq/hypercli/registry/service_v2.go index f7d97adef..47077c94c 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/service_v2.go +++ b/vendor/github.com/hyperhq/hypercli/registry/service_v2.go @@ -4,13 +4,13 @@ import ( "fmt" "strings" - "github.com/hyperhq/hypercli/reference" "github.com/docker/go-connections/tlsconfig" + "github.com/hyperhq/hypercli/reference" ) func (s *Service) lookupV2Endpoints(repoName reference.Named) (endpoints []APIEndpoint, err error) { - var cfg = tlsconfig.ServerDefault - tlsConfig := &cfg + var cfg = tlsconfig.ServerDefault() + tlsConfig := cfg nameString := repoName.FullName() if strings.HasPrefix(nameString, DefaultNamespace+"/") { // v2 mirrors diff --git a/vendor/github.com/hyperhq/hypercli/registry/session.go b/vendor/github.com/hyperhq/hypercli/registry/session.go index cd9357047..6b2477ab3 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/session.go +++ b/vendor/github.com/hyperhq/hypercli/registry/session.go @@ -20,13 +20,13 @@ import ( "github.com/Sirupsen/logrus" "github.com/docker/distribution/registry/api/errcode" + "github.com/hyperhq/hyper-api/types" + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/pkg/httputils" "github.com/hyperhq/hypercli/pkg/ioutils" "github.com/hyperhq/hypercli/pkg/stringid" "github.com/hyperhq/hypercli/pkg/tarsum" "github.com/hyperhq/hypercli/reference" - "github.com/docker/engine-api/types" - registrytypes "github.com/docker/engine-api/types/registry" ) var ( diff --git a/vendor/github.com/hyperhq/hypercli/registry/types.go b/vendor/github.com/hyperhq/hypercli/registry/types.go index 5a800e893..ff6ad92c1 100644 --- a/vendor/github.com/hyperhq/hypercli/registry/types.go +++ b/vendor/github.com/hyperhq/hypercli/registry/types.go @@ -1,8 +1,8 @@ package registry import ( + registrytypes "github.com/hyperhq/hyper-api/types/registry" "github.com/hyperhq/hypercli/reference" - registrytypes "github.com/docker/engine-api/types/registry" ) // RepositoryData tracks the image list, list of endpoints, and list of tokens diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/compare.go b/vendor/github.com/hyperhq/hypercli/runconfig/compare.go index 61346aabf..2d6dd1e76 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/compare.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/compare.go @@ -1,6 +1,6 @@ package runconfig -import "github.com/docker/engine-api/types/container" +import "github.com/hyperhq/hyper-api/types/container" // Compare two Config struct. Do not compare the "Image" nor "Hostname" fields // If OpenStdin is set, then it differs diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/compare_test.go b/vendor/github.com/hyperhq/hypercli/runconfig/compare_test.go index e67f659ef..be8043c44 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/compare_test.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/compare_test.go @@ -3,9 +3,9 @@ package runconfig import ( "testing" - "github.com/docker/engine-api/types/container" - "github.com/docker/engine-api/types/strslice" "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types/container" + "github.com/hyperhq/hyper-api/types/strslice" ) // Just to make life easier @@ -46,9 +46,9 @@ func TestCompare(t *testing.T) { sameConfigs := map[*container.Config]*container.Config{ // Empty config - &container.Config{}: {}, + {}: {}, // Does not compare hostname, domainname & image - &container.Config{ + { Hostname: "host1", Domainname: "domain1", Image: "image1", @@ -60,23 +60,23 @@ func TestCompare(t *testing.T) { User: "user", }, // only OpenStdin - &container.Config{OpenStdin: false}: {OpenStdin: false}, + {OpenStdin: false}: {OpenStdin: false}, // only env - &container.Config{Env: envs1}: {Env: envs1}, + {Env: envs1}: {Env: envs1}, // only cmd - &container.Config{Cmd: cmd1}: {Cmd: cmd1}, + {Cmd: cmd1}: {Cmd: cmd1}, // only labels - &container.Config{Labels: labels1}: {Labels: labels1}, + {Labels: labels1}: {Labels: labels1}, // only exposedPorts - &container.Config{ExposedPorts: ports1}: {ExposedPorts: ports1}, + {ExposedPorts: ports1}: {ExposedPorts: ports1}, // only entrypoints - &container.Config{Entrypoint: entrypoint1}: {Entrypoint: entrypoint1}, + {Entrypoint: entrypoint1}: {Entrypoint: entrypoint1}, // only volumes - &container.Config{Volumes: volumes1}: {Volumes: volumes1}, + {Volumes: volumes1}: {Volumes: volumes1}, } differentConfigs := map[*container.Config]*container.Config{ nil: nil, - &container.Config{ + { Hostname: "host1", Domainname: "domain1", Image: "image1", @@ -88,30 +88,30 @@ func TestCompare(t *testing.T) { User: "user2", }, // only OpenStdin - &container.Config{OpenStdin: false}: {OpenStdin: true}, - &container.Config{OpenStdin: true}: {OpenStdin: false}, + {OpenStdin: false}: {OpenStdin: true}, + {OpenStdin: true}: {OpenStdin: false}, // only env - &container.Config{Env: envs1}: {Env: envs2}, + {Env: envs1}: {Env: envs2}, // only cmd - &container.Config{Cmd: cmd1}: {Cmd: cmd2}, + {Cmd: cmd1}: {Cmd: cmd2}, // not the same number of parts - &container.Config{Cmd: cmd1}: {Cmd: cmd3}, + {Cmd: cmd1}: {Cmd: cmd3}, // only labels - &container.Config{Labels: labels1}: {Labels: labels2}, + {Labels: labels1}: {Labels: labels2}, // not the same number of labels - &container.Config{Labels: labels1}: {Labels: labels3}, + {Labels: labels1}: {Labels: labels3}, // only exposedPorts - &container.Config{ExposedPorts: ports1}: {ExposedPorts: ports2}, + {ExposedPorts: ports1}: {ExposedPorts: ports2}, // not the same number of ports - &container.Config{ExposedPorts: ports1}: {ExposedPorts: ports3}, + {ExposedPorts: ports1}: {ExposedPorts: ports3}, // only entrypoints - &container.Config{Entrypoint: entrypoint1}: {Entrypoint: entrypoint2}, + {Entrypoint: entrypoint1}: {Entrypoint: entrypoint2}, // not the same number of parts - &container.Config{Entrypoint: entrypoint1}: {Entrypoint: entrypoint3}, + {Entrypoint: entrypoint1}: {Entrypoint: entrypoint3}, // only volumes - &container.Config{Volumes: volumes1}: {Volumes: volumes2}, + {Volumes: volumes1}: {Volumes: volumes2}, // not the same number of labels - &container.Config{Volumes: volumes1}: {Volumes: volumes3}, + {Volumes: volumes1}: {Volumes: volumes3}, } for config1, config2 := range sameConfigs { if !Compare(config1, config2) { diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/config.go b/vendor/github.com/hyperhq/hypercli/runconfig/config.go index 1e8e9df62..9ca7b2206 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/config.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/config.go @@ -5,9 +5,9 @@ import ( "fmt" "io" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/volume" - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" ) // DecodeContainerConfig decodes a json encoded config into a ContainerConfigWrapper diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/config_test.go b/vendor/github.com/hyperhq/hypercli/runconfig/config_test.go index b36d027be..d3e7e2814 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/config_test.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/config_test.go @@ -9,9 +9,9 @@ import ( "strings" "testing" - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/engine-api/types/strslice" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hyper-api/types/strslice" ) type f struct { diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/config_unix.go b/vendor/github.com/hyperhq/hypercli/runconfig/config_unix.go index 16a8d94d4..62f614f59 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/config_unix.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/config_unix.go @@ -3,8 +3,8 @@ package runconfig import ( - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" ) // ContainerConfigWrapper is a Config wrapper that hold the container Config (portable) diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/config_windows.go b/vendor/github.com/hyperhq/hypercli/runconfig/config_windows.go index 08d9b023e..a064c9aa5 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/config_windows.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/config_windows.go @@ -1,8 +1,8 @@ package runconfig import ( - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" ) // ContainerConfigWrapper is a Config wrapper that hold the container Config (portable) diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig.go b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig.go index 769cc9f5d..295402e64 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig.go @@ -4,7 +4,7 @@ import ( "encoding/json" "io" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // DecodeHostConfig creates a HostConfig based on the specified Reader. diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_test.go b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_test.go index ef82a7143..395338b51 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_test.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_test.go @@ -8,7 +8,7 @@ import ( "io/ioutil" "testing" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // TODO Windows: This will need addressing for a Windows daemon. @@ -145,11 +145,11 @@ func TestPidModeTest(t *testing.T) { func TestRestartPolicy(t *testing.T) { restartPolicies := map[container.RestartPolicy][]bool{ // none, always, failure - container.RestartPolicy{}: {false, false, false}, - container.RestartPolicy{"something", 0}: {false, false, false}, - container.RestartPolicy{"no", 0}: {true, false, false}, - container.RestartPolicy{"always", 0}: {false, true, false}, - container.RestartPolicy{"on-failure", 0}: {false, false, true}, + {}: {false, false, false}, + {"something", 0}: {false, false, false}, + {"no", 0}: {true, false, false}, + {"always", 0}: {false, true, false}, + {"on-failure", 0}: {false, false, true}, } for restartPolicy, state := range restartPolicies { if restartPolicy.IsNone() != state[0] { diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_unix.go b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_unix.go index 28d209b69..129726b39 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_unix.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_unix.go @@ -7,7 +7,7 @@ import ( "runtime" "strings" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // DefaultDaemonNetworkMode returns the default network stack the daemon should diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_windows.go b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_windows.go index 56aa17181..e2cc5a3e2 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_windows.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/hostconfig_windows.go @@ -4,7 +4,7 @@ import ( "fmt" "strings" - "github.com/docker/engine-api/types/container" + "github.com/hyperhq/hyper-api/types/container" ) // DefaultDaemonNetworkMode returns the default network stack the daemon should diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse.go b/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse.go index 4a8e7c246..4ce37ed54 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse.go @@ -9,11 +9,11 @@ import ( "strconv" "strings" - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/engine-api/types/strslice" "github.com/docker/go-connections/nat" "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" + "github.com/hyperhq/hyper-api/types/strslice" "github.com/hyperhq/hypercli/opts" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/pkg/mount" diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse_test.go b/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse_test.go index f449ab72c..96bb5e937 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse_test.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/opts/parse_test.go @@ -10,11 +10,11 @@ import ( "strings" "testing" + "github.com/docker/go-connections/nat" + "github.com/hyperhq/hyper-api/types/container" + networktypes "github.com/hyperhq/hyper-api/types/network" flag "github.com/hyperhq/hypercli/pkg/mflag" "github.com/hyperhq/hypercli/runconfig" - "github.com/docker/engine-api/types/container" - networktypes "github.com/docker/engine-api/types/network" - "github.com/docker/go-connections/nat" ) func parseRun(args []string) (*container.Config, *container.HostConfig, *networktypes.NetworkingConfig, *flag.FlagSet, error) { diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/opts/throttledevice.go b/vendor/github.com/hyperhq/hypercli/runconfig/opts/throttledevice.go index acb00ed5f..1c7f019cd 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/opts/throttledevice.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/opts/throttledevice.go @@ -5,8 +5,8 @@ import ( "strconv" "strings" - "github.com/docker/engine-api/types/blkiodev" "github.com/docker/go-units" + "github.com/hyperhq/hyper-api/types/blkiodev" ) // ValidatorThrottleFctType defines a validator function that returns a validated struct and/or an error. diff --git a/vendor/github.com/hyperhq/hypercli/runconfig/opts/weightdevice.go b/vendor/github.com/hyperhq/hypercli/runconfig/opts/weightdevice.go index bd3c0b178..57e660d30 100644 --- a/vendor/github.com/hyperhq/hypercli/runconfig/opts/weightdevice.go +++ b/vendor/github.com/hyperhq/hypercli/runconfig/opts/weightdevice.go @@ -5,7 +5,7 @@ import ( "strconv" "strings" - "github.com/docker/engine-api/types/blkiodev" + "github.com/hyperhq/hyper-api/types/blkiodev" ) // ValidatorWeightFctType defines a validator function that returns a validated struct and/or an error. From eaba0f3b600c36458735d84aa5f5f187fff24d57 Mon Sep 17 00:00:00 2001 From: Jimmy Xu Date: Fri, 22 Dec 2017 00:31:28 +0800 Subject: [PATCH 7/7] [hyper-provider] 1.support pull image with RegistryAuth 2.optimize code --- providers/hypersh/README.md | 4 +- providers/hypersh/hypersh.go | 333 +--------------------------- providers/hypersh/util.go | 417 +++++++++++++++++++++++++++++++++++ 3 files changed, 426 insertions(+), 328 deletions(-) create mode 100644 providers/hypersh/util.go diff --git a/providers/hypersh/README.md b/providers/hypersh/README.md index 8a871517a..f148a94b4 100644 --- a/providers/hypersh/README.md +++ b/providers/hypersh/README.md @@ -100,8 +100,8 @@ a0ae3d4112d5 nginx:latest "nginx -g 'daemon off" 9 seconds ago Up 4 seco ``` $ export HYPER_DEFAULT_REGION=eu-central-1 $ ./virtual-kubelet --provider=hyper --provider-config=$HOME/.hyper3 -/home/xjimmy/.kube/config -2017/12/20 17:30:30 config file under "/home/xjimmy/.hyper3" was loaded +/home/demo/.kube/config +2017/12/20 17:30:30 config file under "/home/demo/.hyper3" was loaded 2017/12/20 17:30:30 Host: tcp://eu-central-1.hyper.sh:443 AccessKey: K********** diff --git a/providers/hypersh/hypersh.go b/providers/hypersh/hypersh.go index dd2521e2b..c5f8d1cb8 100755 --- a/providers/hypersh/hypersh.go +++ b/providers/hypersh/hypersh.go @@ -5,26 +5,19 @@ import ( "fmt" "log" "net/http" - "net/url" "os" "runtime" - "strings" - "time" - "github.com/docker/go-connections/nat" + "github.com/virtual-kubelet/virtual-kubelet/manager" + "github.com/virtual-kubelet/virtual-kubelet/providers" + "github.com/docker/go-connections/sockets" "github.com/docker/go-connections/tlsconfig" hyper "github.com/hyperhq/hyper-api/client" "github.com/hyperhq/hyper-api/types" - "github.com/hyperhq/hyper-api/types/container" "github.com/hyperhq/hyper-api/types/filters" "github.com/hyperhq/hyper-api/types/network" "github.com/hyperhq/hypercli/cliconfig" - "github.com/hyperhq/hypercli/opts" - "github.com/hyperhq/hypercli/pkg/jsonmessage" - "github.com/hyperhq/hypercli/pkg/term" - "github.com/virtual-kubelet/virtual-kubelet/manager" - "github.com/virtual-kubelet/virtual-kubelet/providers" "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -211,11 +204,11 @@ func (p *HyperProvider) CreatePod(pod *v1.Pod) error { } // Get containers - containers, hostConfigs, err := getContainers(pod) + containers, hostConfigs, err := p.getContainers(pod) if err != nil { return err } - // TODO: get registry creds + // TODO: get volumes // Iterate over the containers to create and start them. @@ -312,7 +305,7 @@ func (p *HyperProvider) GetPod(namespace, name string) (pod *v1.Pod, err error) return nil, err } // Convert hyper container into Pod - pod, err = containerJSONToPod(&container) + pod, err = p.containerJSONToPod(&container) if err != nil { return nil, err } else { @@ -349,7 +342,7 @@ func (p *HyperProvider) GetPods() ([]*v1.Pod, error) { var pods = []*v1.Pod{} for _, container := range containers { - pod, err := containerToPod(&container) + pod, err := p.containerToPod(&container) if err != nil { log.Printf("WARNING: convert container %q to pod error: %v\n", container.ID, err) continue @@ -423,315 +416,3 @@ func (p *HyperProvider) NodeConditions() []v1.NodeCondition { func (p *HyperProvider) OperatingSystem() string { return providers.OperatingSystemLinux } - -func getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, error) { - containers := make([]container.Config, len(pod.Spec.Containers)) - hostConfigs := make([]container.HostConfig, len(pod.Spec.Containers)) - for x, ctr := range pod.Spec.Containers { - // Do container.Config - var c container.Config - c.Image = ctr.Image - c.Cmd = ctr.Command - ports := map[nat.Port]struct{}{} - portBindings := nat.PortMap{} - for _, p := range ctr.Ports { - //TODO: p.HostPort is 0 by default, but it's invalid in hyper.sh - if p.HostPort == 0 { - p.HostPort = p.ContainerPort - } - port, err := nat.NewPort(strings.ToLower(string(p.Protocol)), fmt.Sprintf("%d", p.HostPort)) - if err != nil { - return nil, nil, fmt.Errorf("creating new port in container conversion failed: %v", err) - } - ports[port] = struct{}{} - - portBindings[port] = []nat.PortBinding{ - { - HostIP: "0.0.0.0", - HostPort: fmt.Sprintf("%d", p.HostPort), - }, - } - } - c.ExposedPorts = ports - - // TODO: do volumes - - envs := make([]string, len(ctr.Env)) - for z, e := range ctr.Env { - envs[z] = fmt.Sprintf("%s=%s", e.Name, e.Value) - } - c.Env = envs - - // Do container.HostConfig - var hc container.HostConfig - cpuLimit := ctr.Resources.Limits.Cpu().Value() - memoryLimit := ctr.Resources.Limits.Memory().Value() - - hc.Resources = container.Resources{ - CPUShares: cpuLimit, - Memory: memoryLimit, - } - - hc.PortBindings = portBindings - - containers[x] = c - hostConfigs[x] = hc - } - return containers, hostConfigs, nil -} - -func containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { - podName, found := container.Config.Labels[containerLabel] - if !found { - return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) - } - - nodeName, found := container.Config.Labels[nodeLabel] - if !found { - return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) - } - - created, err := time.Parse(time.RFC3339, container.Created) - if err != nil { - return nil, fmt.Errorf("parse Created time failed:%v", container.Created) - } - startedAt, err := time.Parse(time.RFC3339, container.State.StartedAt) - if err != nil { - return nil, fmt.Errorf("parse StartedAt time failed:%v", container.State.StartedAt) - } - finishedAt, err := time.Parse(time.RFC3339, container.State.FinishedAt) - if err != nil { - return nil, fmt.Errorf("parse FinishedAt time failed:%v", container.State.FinishedAt) - } - - var ( - podCondition v1.PodCondition - containerState v1.ContainerState - ) - switch hyperStateToPodPhase(container.State.Status) { - case v1.PodPending: - podCondition = v1.PodCondition{ - Type: v1.PodInitialized, - Status: v1.ConditionFalse, - } - containerState = v1.ContainerState{ - Waiting: &v1.ContainerStateWaiting{}, - } - case v1.PodRunning: // running - podCondition = v1.PodCondition{ - Type: v1.PodReady, - Status: v1.ConditionTrue, - } - containerState = v1.ContainerState{ - Running: &v1.ContainerStateRunning{ - StartedAt: metav1.NewTime(startedAt), - }, - } - case v1.PodSucceeded: // normal exit - podCondition = v1.PodCondition{ - Type: v1.PodReasonUnschedulable, - Status: v1.ConditionFalse, - } - containerState = v1.ContainerState{ - Terminated: &v1.ContainerStateTerminated{ - ExitCode: int32(container.State.ExitCode), - FinishedAt: metav1.NewTime(finishedAt), - }, - } - case v1.PodFailed: // exit with error - podCondition = v1.PodCondition{ - Type: v1.PodReasonUnschedulable, - Status: v1.ConditionFalse, - } - containerState = v1.ContainerState{ - Terminated: &v1.ContainerStateTerminated{ - ExitCode: int32(container.State.ExitCode), - FinishedAt: metav1.NewTime(finishedAt), - Reason: container.State.Error, - }, - } - default: //unkown - podCondition = v1.PodCondition{ - Type: v1.PodReasonUnschedulable, - Status: v1.ConditionUnknown, - } - containerState = v1.ContainerState{} - } - - p := v1.Pod{ - TypeMeta: metav1.TypeMeta{ - Kind: "Pod", - APIVersion: "v1", - }, - ObjectMeta: metav1.ObjectMeta{ - Name: podName, - Namespace: "default", - CreationTimestamp: metav1.NewTime(created), - }, - Spec: v1.PodSpec{ - NodeName: nodeName, - Volumes: []v1.Volume{}, - Containers: []v1.Container{ - { - Name: podName, - Image: container.Config.Image, - Command: container.Config.Cmd, - }, - }, - }, - Status: v1.PodStatus{ - Phase: hyperStateToPodPhase(container.State.Status), - Conditions: []v1.PodCondition{podCondition}, - Message: "", - Reason: "", - HostIP: "", - PodIP: container.NetworkSettings.IPAddress, - ContainerStatuses: []v1.ContainerStatus{ - { - Name: podName, - RestartCount: int32(container.RestartCount), - Image: container.Config.Image, - ImageID: container.Image, - ContainerID: container.ID, - Ready: container.State.Running, - State: containerState, - }, - }, - }, - } - return &p, nil -} - -func containerToPod(container *types.Container) (*v1.Pod, error) { - // TODO: convert containers into pods - podName, found := container.Labels[containerLabel] - if !found { - return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) - } - - nodeName, found := container.Labels[nodeLabel] - if !found { - return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) - } - - var ( - podCondition v1.PodCondition - isReady bool = true - ) - if strings.ToLower(string(container.State)) == strings.ToLower(string(v1.PodRunning)) { - podCondition = v1.PodCondition{ - Type: v1.PodReady, - Status: v1.ConditionTrue, - } - } else { - podCondition = v1.PodCondition{ - Type: v1.PodReasonUnschedulable, - Status: v1.ConditionFalse, - } - isReady = false - } - - p := v1.Pod{ - TypeMeta: metav1.TypeMeta{ - Kind: "Pod", - APIVersion: "v1", - }, - ObjectMeta: metav1.ObjectMeta{ - Name: podName, - Namespace: "default", - ClusterName: "", - UID: "", - CreationTimestamp: metav1.NewTime(time.Unix(container.Created, 0)), - }, - Spec: v1.PodSpec{ - NodeName: nodeName, - Volumes: []v1.Volume{}, - Containers: []v1.Container{ - { - Name: podName, - Image: container.Image, - Command: strings.Split(container.Command, " "), - Resources: v1.ResourceRequirements{}, - }, - }, - }, - Status: v1.PodStatus{ - //Phase: "", - Conditions: []v1.PodCondition{podCondition}, - Message: "", - Reason: "", - HostIP: "", - PodIP: "", - ContainerStatuses: []v1.ContainerStatus{ - { - Name: container.Names[0], - Image: container.Image, - ImageID: container.ImageID, - ContainerID: container.ID, - Ready: isReady, - State: v1.ContainerState{}, - }, - }, - }, - } - return &p, nil -} - -func hyperStateToPodPhase(state string) v1.PodPhase { - switch strings.ToLower(state) { - case "created": - return v1.PodPending - case "restarting": - return v1.PodPending - case "running": - return v1.PodRunning - case "exited": - return v1.PodSucceeded - case "paused": - return v1.PodSucceeded - case "dead": - return v1.PodFailed - } - return v1.PodUnknown -} - -func (p *HyperProvider) getServerHost(region string, tlsOptions *tlsconfig.Options) (host string, dft bool, err error) { - dft = false - host = region - if host == "" { - host = os.Getenv("HYPER_DEFAULT_REGION") - region = p.getDefaultRegion() - } - if _, err := url.ParseRequestURI(host); err != nil { - host = "tcp://" + region + "." + cliconfig.DefaultHyperEndpoint - dft = true - } - host, err = opts.ParseHost(tlsOptions != nil, host) - return -} - -func (p *HyperProvider) getDefaultRegion() string { - cc, ok := p.configFile.CloudConfig[cliconfig.DefaultHyperFormat] - if ok && cc.Region != "" { - return cc.Region - } - return cliconfig.DefaultHyperRegion -} - -func (p *HyperProvider) ensureImage(image string) error { - responseBody, err := p.hyperClient.ImagePull(context.Background(), image, types.ImagePullOptions{}) - if err != nil { - return err - } - defer responseBody.Close() - var ( - outFd uintptr - isTerminalOut bool - ) - _, stdout, _ := term.StdStreams() - if stdout != nil { - outFd, isTerminalOut = term.GetFdInfo(stdout) - } - jsonmessage.DisplayJSONMessagesStream(responseBody, stdout, outFd, isTerminalOut, nil) - return nil -} diff --git a/providers/hypersh/util.go b/providers/hypersh/util.go new file mode 100644 index 000000000..c5c3f902b --- /dev/null +++ b/providers/hypersh/util.go @@ -0,0 +1,417 @@ +package hypersh + +import ( + "context" + "encoding/base64" + "encoding/json" + "fmt" + "log" + "net/url" + "os" + "strings" + "time" + + "github.com/docker/go-connections/nat" + "github.com/docker/go-connections/tlsconfig" + "github.com/hyperhq/hyper-api/types" + "github.com/hyperhq/hyper-api/types/container" + registrytypes "github.com/hyperhq/hyper-api/types/registry" + "github.com/hyperhq/hypercli/cliconfig" + "github.com/hyperhq/hypercli/opts" + "github.com/hyperhq/hypercli/pkg/jsonmessage" + "github.com/hyperhq/hypercli/pkg/term" + "github.com/hyperhq/hypercli/reference" + "github.com/hyperhq/hypercli/registry" + "k8s.io/api/core/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +func (p *HyperProvider) getContainers(pod *v1.Pod) ([]container.Config, []container.HostConfig, error) { + containers := make([]container.Config, len(pod.Spec.Containers)) + hostConfigs := make([]container.HostConfig, len(pod.Spec.Containers)) + for x, ctr := range pod.Spec.Containers { + // Do container.Config + var c container.Config + c.Image = ctr.Image + c.Cmd = ctr.Command + ports := map[nat.Port]struct{}{} + portBindings := nat.PortMap{} + for _, p := range ctr.Ports { + //TODO: p.HostPort is 0 by default, but it's invalid in hyper.sh + if p.HostPort == 0 { + p.HostPort = p.ContainerPort + } + port, err := nat.NewPort(strings.ToLower(string(p.Protocol)), fmt.Sprintf("%d", p.HostPort)) + if err != nil { + return nil, nil, fmt.Errorf("creating new port in container conversion failed: %v", err) + } + ports[port] = struct{}{} + + portBindings[port] = []nat.PortBinding{ + { + HostIP: "0.0.0.0", + HostPort: fmt.Sprintf("%d", p.HostPort), + }, + } + } + c.ExposedPorts = ports + + // TODO: do volumes + + envs := make([]string, len(ctr.Env)) + for z, e := range ctr.Env { + envs[z] = fmt.Sprintf("%s=%s", e.Name, e.Value) + } + c.Env = envs + + // Do container.HostConfig + var hc container.HostConfig + cpuLimit := ctr.Resources.Limits.Cpu().Value() + memoryLimit := ctr.Resources.Limits.Memory().Value() + + hc.Resources = container.Resources{ + CPUShares: cpuLimit, + Memory: memoryLimit, + } + + hc.PortBindings = portBindings + + containers[x] = c + hostConfigs[x] = hc + } + return containers, hostConfigs, nil +} + +func (p *HyperProvider) containerJSONToPod(container *types.ContainerJSON) (*v1.Pod, error) { + podName, found := container.Config.Labels[containerLabel] + if !found { + return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) + } + + nodeName, found := container.Config.Labels[nodeLabel] + if !found { + return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) + } + + created, err := time.Parse(time.RFC3339, container.Created) + if err != nil { + return nil, fmt.Errorf("parse Created time failed:%v", container.Created) + } + startedAt, err := time.Parse(time.RFC3339, container.State.StartedAt) + if err != nil { + return nil, fmt.Errorf("parse StartedAt time failed:%v", container.State.StartedAt) + } + finishedAt, err := time.Parse(time.RFC3339, container.State.FinishedAt) + if err != nil { + return nil, fmt.Errorf("parse FinishedAt time failed:%v", container.State.FinishedAt) + } + + var ( + podCondition v1.PodCondition + containerState v1.ContainerState + ) + switch p.hyperStateToPodPhase(container.State.Status) { + case v1.PodPending: + podCondition = v1.PodCondition{ + Type: v1.PodInitialized, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Waiting: &v1.ContainerStateWaiting{}, + } + case v1.PodRunning: // running + podCondition = v1.PodCondition{ + Type: v1.PodReady, + Status: v1.ConditionTrue, + } + containerState = v1.ContainerState{ + Running: &v1.ContainerStateRunning{ + StartedAt: metav1.NewTime(startedAt), + }, + } + case v1.PodSucceeded: // normal exit + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Terminated: &v1.ContainerStateTerminated{ + ExitCode: int32(container.State.ExitCode), + FinishedAt: metav1.NewTime(finishedAt), + }, + } + case v1.PodFailed: // exit with error + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + containerState = v1.ContainerState{ + Terminated: &v1.ContainerStateTerminated{ + ExitCode: int32(container.State.ExitCode), + FinishedAt: metav1.NewTime(finishedAt), + Reason: container.State.Error, + }, + } + default: //unkown + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionUnknown, + } + containerState = v1.ContainerState{} + } + + pod := v1.Pod{ + TypeMeta: metav1.TypeMeta{ + Kind: "Pod", + APIVersion: "v1", + }, + ObjectMeta: metav1.ObjectMeta{ + Name: podName, + Namespace: "default", + CreationTimestamp: metav1.NewTime(created), + }, + Spec: v1.PodSpec{ + NodeName: nodeName, + Volumes: []v1.Volume{}, + Containers: []v1.Container{ + { + Name: podName, + Image: container.Config.Image, + Command: container.Config.Cmd, + }, + }, + }, + Status: v1.PodStatus{ + Phase: p.hyperStateToPodPhase(container.State.Status), + Conditions: []v1.PodCondition{podCondition}, + Message: "", + Reason: "", + HostIP: "", + PodIP: container.NetworkSettings.IPAddress, + ContainerStatuses: []v1.ContainerStatus{ + { + Name: podName, + RestartCount: int32(container.RestartCount), + Image: container.Config.Image, + ImageID: container.Image, + ContainerID: container.ID, + Ready: container.State.Running, + State: containerState, + }, + }, + }, + } + return &pod, nil +} + +func (p *HyperProvider) containerToPod(container *types.Container) (*v1.Pod, error) { + // TODO: convert containers into pods + podName, found := container.Labels[containerLabel] + if !found { + return nil, fmt.Errorf("can not found podName: key %q not found in container label", containerLabel) + } + + nodeName, found := container.Labels[nodeLabel] + if !found { + return nil, fmt.Errorf("can not found nodeName: key %q not found in container label", containerLabel) + } + + var ( + podCondition v1.PodCondition + isReady bool = true + ) + if strings.ToLower(string(container.State)) == strings.ToLower(string(v1.PodRunning)) { + podCondition = v1.PodCondition{ + Type: v1.PodReady, + Status: v1.ConditionTrue, + } + } else { + podCondition = v1.PodCondition{ + Type: v1.PodReasonUnschedulable, + Status: v1.ConditionFalse, + } + isReady = false + } + + pod := v1.Pod{ + TypeMeta: metav1.TypeMeta{ + Kind: "Pod", + APIVersion: "v1", + }, + ObjectMeta: metav1.ObjectMeta{ + Name: podName, + Namespace: "default", + ClusterName: "", + UID: "", + CreationTimestamp: metav1.NewTime(time.Unix(container.Created, 0)), + }, + Spec: v1.PodSpec{ + NodeName: nodeName, + Volumes: []v1.Volume{}, + Containers: []v1.Container{ + { + Name: podName, + Image: container.Image, + Command: strings.Split(container.Command, " "), + Resources: v1.ResourceRequirements{}, + }, + }, + }, + Status: v1.PodStatus{ + //Phase: "", + Conditions: []v1.PodCondition{podCondition}, + Message: "", + Reason: "", + HostIP: "", + PodIP: "", + ContainerStatuses: []v1.ContainerStatus{ + { + Name: container.Names[0], + Image: container.Image, + ImageID: container.ImageID, + ContainerID: container.ID, + Ready: isReady, + State: v1.ContainerState{}, + }, + }, + }, + } + return &pod, nil +} + +func (p *HyperProvider) hyperStateToPodPhase(state string) v1.PodPhase { + switch strings.ToLower(state) { + case "created": + return v1.PodPending + case "restarting": + return v1.PodPending + case "running": + return v1.PodRunning + case "exited": + return v1.PodSucceeded + case "paused": + return v1.PodSucceeded + case "dead": + return v1.PodFailed + } + return v1.PodUnknown +} + +func (p *HyperProvider) getServerHost(region string, tlsOptions *tlsconfig.Options) (host string, dft bool, err error) { + dft = false + host = region + if host == "" { + host = os.Getenv("HYPER_DEFAULT_REGION") + region = p.getDefaultRegion() + } + if _, err := url.ParseRequestURI(host); err != nil { + host = "tcp://" + region + "." + cliconfig.DefaultHyperEndpoint + dft = true + } + host, err = opts.ParseHost(tlsOptions != nil, host) + return +} + +func (p *HyperProvider) getDefaultRegion() string { + cc, ok := p.configFile.CloudConfig[cliconfig.DefaultHyperFormat] + if ok && cc.Region != "" { + return cc.Region + } + return cliconfig.DefaultHyperRegion +} + +func (p *HyperProvider) ensureImage(image string) error { + distributionRef, err := reference.ParseNamed(image) + if err != nil { + return err + } + + if reference.IsNameOnly(distributionRef) { + distributionRef = reference.WithDefaultTag(distributionRef) + log.Printf("Using default tag: %s", reference.DefaultTag) + } + + // Resolve the Repository name from fqn to RepositoryInfo + repoInfo, err := registry.ParseRepositoryInfo(distributionRef) + + authConfig := p.resolveAuthConfig(p.configFile.AuthConfigs, repoInfo.Index) + encodedAuth, err := p.encodeAuthToBase64(authConfig) + if err != nil { + return err + } + + options := types.ImagePullOptions{ + RegistryAuth: encodedAuth, + All: false, + } + responseBody, err := p.hyperClient.ImagePull(context.Background(), distributionRef.String(), options) + if err != nil { + return err + } + defer responseBody.Close() + var ( + outFd uintptr + isTerminalOut bool + ) + _, stdout, _ := term.StdStreams() + if stdout != nil { + outFd, isTerminalOut = term.GetFdInfo(stdout) + } + jsonmessage.DisplayJSONMessagesStream(responseBody, stdout, outFd, isTerminalOut, nil) + return nil +} + +func (p *HyperProvider) resolveAuthConfig(authConfigs map[string]types.AuthConfig, index *registrytypes.IndexInfo) types.AuthConfig { + configKey := index.Name + if index.Official { + configKey = p.electAuthServer() + } + + // First try the happy case + if c, found := authConfigs[configKey]; found || index.Official { + return c + } + + convertToHostname := func(url string) string { + stripped := url + if strings.HasPrefix(url, "http://") { + stripped = strings.Replace(url, "http://", "", 1) + } else if strings.HasPrefix(url, "https://") { + stripped = strings.Replace(url, "https://", "", 1) + } + + nameParts := strings.SplitN(stripped, "/", 2) + + return nameParts[0] + } + + // Maybe they have a legacy config file, we will iterate the keys converting + // them to the new format and testing + for registry, ac := range authConfigs { + if configKey == convertToHostname(registry) { + return ac + } + } + + // When all else fails, return an empty auth config + return types.AuthConfig{} +} + +func (p *HyperProvider) electAuthServer() string { + serverAddress := registry.IndexServer + if info, err := p.hyperClient.Info(context.Background()); err != nil { + log.Printf("Warning: failed to get default registry endpoint from daemon (%v). Using system default: %s", err, serverAddress) + } else { + serverAddress = info.IndexServerAddress + } + return serverAddress +} + +// encodeAuthToBase64 serializes the auth configuration as JSON base64 payload +func (p *HyperProvider) encodeAuthToBase64(authConfig types.AuthConfig) (string, error) { + buf, err := json.Marshal(authConfig) + if err != nil { + return "", err + } + return base64.URLEncoding.EncodeToString(buf), nil +}