func (daemon *Daemon) createPodInternal(podId string, podSpec *apitypes.UserPod, withinLock bool) (*Pod, error) { glog.V(2).Infof("podArgs: %s", podSpec.String()) pod, err := NewPod(podSpec, podId, daemon) if err != nil { return nil, err } // Creation if err = pod.DoCreate(daemon); err != nil { return nil, err } return pod, nil }
func (daemon *Daemon) createPodInternal(podId string, podSpec *apitypes.UserPod, withinLock bool) (*Pod, error) { glog.V(2).Infof("podArgs: %s", podSpec.String()) pod, err := NewPod(podSpec, podId, daemon) if err != nil { return nil, err } defer func() { if err != nil { pod.Lock() glog.Infof("create pod %s failed, cleanup", podId) pod.Cleanup(daemon) pod.Unlock() } }() // Creation if err = pod.DoCreate(daemon); err != nil { return nil, err } return pod, nil }