Add auth config, registry auth fails silently without

pull/26/head
Ross Cadogan 8 years ago
parent 44dbd88295
commit ef430b791a

@ -45,7 +45,7 @@ func Update(client container.Client, names []string, cleanup bool) error {
for i, container := range containers { for i, container := range containers {
stale, err := client.IsContainerStale(container) stale, err := client.IsContainerStale(container)
if err != nil { if err != nil {
log.Infof("Unable to update container %. Proceeding to next.", containers[i].Name()) log.Infof("Unable to update container %s. Proceeding to next.", containers[i].Name())
log.Debug(err) log.Debug(err)
stale = false stale = false
} }

@ -7,6 +7,7 @@ import (
log "github.com/Sirupsen/logrus" log "github.com/Sirupsen/logrus"
dockerclient "github.com/docker/docker/client" dockerclient "github.com/docker/docker/client"
"github.com/docker/docker/api/types" "github.com/docker/docker/api/types"
"github.com/docker/docker/cli/command"
"golang.org/x/net/context" "golang.org/x/net/context"
) )
@ -145,15 +146,22 @@ func (client dockerClient) IsContainerStale(c Container) (bool, error) {
if client.pullImages { if client.pullImages {
log.Debugf("Pulling %s for %s", imageName, c.Name()) log.Debugf("Pulling %s for %s", imageName, c.Name())
auth := types.AuthConfig {
Username: "testuser",
Password: "testpassword",
}
encodedAuth, err := command.EncodeAuthToBase64(auth)
if err != nil {
return false, err
}
// Note: ImagePullOptions below can take a RegistryAuth arg if 401 on private registry // Note: ImagePullOptions below can take a RegistryAuth arg if 401 on private registry
closer, err := client.api.ImagePull(bg, imageName, types.ImagePullOptions{}) closer, err := client.api.ImagePull(bg, imageName, types.ImagePullOptions{RegistryAuth: encodedAuth})
if (err != nil) { if err != nil {
log.Debugf("Error pulling image %s, %s", imageName, err) log.Debugf("Error pulling image %s, %s", imageName, err)
return false, err return false, err
} else {
closer.Close()
} }
defer closer.Close()
} }
newImageInfo, _, err := client.api.ImageInspectWithRaw(bg, imageName) newImageInfo, _, err := client.api.ImageInspectWithRaw(bg, imageName)
@ -166,6 +174,7 @@ func (client dockerClient) IsContainerStale(c Container) (bool, error) {
return true, nil return true, nil
} else { } else {
log.Debugf("No new images found for %s", c.Name()) log.Debugf("No new images found for %s", c.Name())
log.Debugf("Old image ID %s is the same as New Image ID %s", oldImageInfo.ID, newImageInfo.ID)
} }

Loading…
Cancel
Save