Skip to content

Commit

Permalink
Merge pull request kubernetes#22215 from pwittrock/enable-readonly-e2e
Browse files Browse the repository at this point in the history
Auto commit by PR queue bot
  • Loading branch information
k8s-merge-robot committed Mar 1, 2016
2 parents 8060e9c + b897981 commit 51b0055
Showing 1 changed file with 47 additions and 47 deletions.
94 changes: 47 additions & 47 deletions test/e2e_node/kubelet_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -89,53 +89,53 @@ var _ = Describe("Kubelet", func() {
})
})

// TODO: Enable this when issues are resolved. Tracked in #21320
// Context("when scheduling a read only busybox container", func() {
// It("it should return success", func() {
// pod := &api.Pod{
// ObjectMeta: api.ObjectMeta{
// Name: "busybox",
// Namespace: api.NamespaceDefault,
// },
// Spec: api.PodSpec{
// // Force the Pod to schedule to the node without a scheduler running
// NodeName: *nodeName,
// // Don't restart the Pod since it is expected to exit
// RestartPolicy: api.RestartPolicyNever,
// Containers: []api.Container{
// {
// Image: "gcr.io/google_containers/busybox",
// Name: "busybox",
// Command: []string{"sh", "-c", "echo test > /file"},
// SecurityContext: &api.SecurityContext{
// ReadOnlyRootFilesystem: &isReadOnly,
// },
// },
// },
// },
// }
// _, err := cl.Pods(api.NamespaceDefault).Create(pod)
// Expect(err).To(BeNil(), fmt.Sprintf("Error creating Pod %v", err))
// })
//
// It("it should not write to the root filesystem", func() {
// Eventually(func() string {
// rc, err := cl.Pods(api.NamespaceDefault).GetLogs("busybox", &api.PodLogOptions{}).Stream()
// if err != nil {
// return ""
// }
// defer rc.Close()
// buf := new(bytes.Buffer)
// buf.ReadFrom(rc)
// return buf.String()
// }, time.Second*30, time.Second*4).Should(Equal("sh: can't create /file: Read-only file system"))
// })
//
// It("it should be possible to delete", func() {
// err := cl.Pods(api.NamespaceDefault).Delete("busybox", &api.DeleteOptions{})
// Expect(err).To(BeNil(), fmt.Sprintf("Error creating Pod %v", err))
// })
// })
Context("when scheduling a read only busybox container", func() {
It("it should return success", func() {
isReadOnly := true
pod := &api.Pod{
ObjectMeta: api.ObjectMeta{
Name: "busybox",
Namespace: api.NamespaceDefault,
},
Spec: api.PodSpec{
// Force the Pod to schedule to the node without a scheduler running
NodeName: *nodeName,
// Don't restart the Pod since it is expected to exit
RestartPolicy: api.RestartPolicyNever,
Containers: []api.Container{
{
Image: "gcr.io/google_containers/busybox",
Name: "busybox",
Command: []string{"sh", "-c", "echo test > /file"},
SecurityContext: &api.SecurityContext{
ReadOnlyRootFilesystem: &isReadOnly,
},
},
},
},
}
_, err := cl.Pods(api.NamespaceDefault).Create(pod)
Expect(err).To(BeNil(), fmt.Sprintf("Error creating Pod %v", err))
})

It("it should not write to the root filesystem", func() {
Eventually(func() string {
rc, err := cl.Pods(api.NamespaceDefault).GetLogs("busybox", &api.PodLogOptions{}).Stream()
if err != nil {
return ""
}
defer rc.Close()
buf := new(bytes.Buffer)
buf.ReadFrom(rc)
return buf.String()
}, time.Second*30, time.Second*4).Should(Equal("sh: can't create /file: Read-only file system\n"))
})

It("it should be possible to delete", func() {
err := cl.Pods(api.NamespaceDefault).Delete("busybox", &api.DeleteOptions{})
Expect(err).To(BeNil(), fmt.Sprintf("Error creating Pod %v", err))
})
})
})

Describe("metrics api", func() {
Expand Down

0 comments on commit 51b0055

Please sign in to comment.