mirror of
https://github.com/containers/podman.git
synced 2025-08-14 02:41:34 +08:00
@ -225,7 +225,10 @@ func (r *Runtime) createInfraContainer(ctx context.Context, p *Pod) (*Container,
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
imageName := newImage.Names()[0]
|
||||
imageName := "none"
|
||||
if len(newImage.Names()) > 0 {
|
||||
imageName = newImage.Names()[0]
|
||||
}
|
||||
imageID := data.ID
|
||||
|
||||
return r.makeInfraContainer(ctx, p, imageName, r.config.Engine.InfraImage, imageID, data.Config)
|
||||
|
@ -436,13 +436,20 @@ func (p *PodmanTestIntegration) RunLsContainerInPod(name, pod string) (*PodmanSe
|
||||
|
||||
// BuildImage uses podman build and buildah to build an image
|
||||
// called imageName based on a string dockerfile
|
||||
func (p *PodmanTestIntegration) BuildImage(dockerfile, imageName string, layers string) {
|
||||
func (p *PodmanTestIntegration) BuildImage(dockerfile, imageName string, layers string) string {
|
||||
dockerfilePath := filepath.Join(p.TempDir, "Dockerfile")
|
||||
err := ioutil.WriteFile(dockerfilePath, []byte(dockerfile), 0755)
|
||||
Expect(err).To(BeNil())
|
||||
session := p.Podman([]string{"build", "--layers=" + layers, "-t", imageName, "--file", dockerfilePath, p.TempDir})
|
||||
cmd := []string{"build", "--layers=" + layers, "--file", dockerfilePath}
|
||||
if len(imageName) > 0 {
|
||||
cmd = append(cmd, []string{"-t", imageName}...)
|
||||
}
|
||||
cmd = append(cmd, p.TempDir)
|
||||
session := p.Podman(cmd)
|
||||
session.Wait(240)
|
||||
Expect(session).Should(Exit(0), fmt.Sprintf("BuildImage session output: %q", session.OutputToString()))
|
||||
output := session.OutputToStringArray()
|
||||
return output[len(output)-1]
|
||||
}
|
||||
|
||||
// PodmanPID execs podman and returns its PID
|
||||
|
@ -501,4 +501,18 @@ entrypoint ["/fromimage"]
|
||||
Expect(session.OutputToString()).To(ContainSubstring("inet 127.0.0.1/8 scope host lo"))
|
||||
Expect(len(session.OutputToStringArray())).To(Equal(1))
|
||||
})
|
||||
|
||||
It("podman pod create --infra-image w/untagged image", func() {
|
||||
podmanTest.AddImageToRWStore(ALPINE)
|
||||
dockerfile := `FROM quay.io/libpod/alpine:latest
|
||||
ENTRYPOINT ["sleep","99999"]
|
||||
`
|
||||
// This builds a none/none image
|
||||
iid := podmanTest.BuildImage(dockerfile, "", "true")
|
||||
|
||||
create := podmanTest.Podman([]string{"pod", "create", "--infra-image", iid})
|
||||
create.WaitWithDefaultTimeout()
|
||||
Expect(create.ExitCode()).To(BeZero())
|
||||
})
|
||||
|
||||
})
|
||||
|
Reference in New Issue
Block a user