@@ -1475,7 +1475,7 @@ func initDockerConfigJSON(logf log.Func, magicDir magicdir.MagicDir, dockerConfi
14751475 if dockerConfigBase64 == "" {
14761476 return noop , nil
14771477 }
1478- cfgPath := filepath .Join (magicDir . Path (), "config.json" )
1478+ cfgPath := magicDir .Join ("config.json" )
14791479 decoded , err := base64 .StdEncoding .DecodeString (dockerConfigBase64 )
14801480 if err != nil {
14811481 return noop , fmt .Errorf ("decode docker config: %w" , err )
@@ -1497,9 +1497,16 @@ func initDockerConfigJSON(logf log.Func, magicDir magicdir.MagicDir, dockerConfi
14971497 return noop , fmt .Errorf ("write docker config: %w" , err )
14981498 }
14991499 logf (log .LevelInfo , "Wrote Docker config JSON to %s" , cfgPath )
1500+ oldDockerConfig := os .Getenv ("DOCKER_CONFIG" )
1501+ _ = os .Setenv ("DOCKER_CONFIG" , magicDir .Path ())
1502+ newDockerConfig := os .Getenv ("DOCKER_CONFIG" )
1503+ logf (log .LevelInfo , "Set DOCKER_CONFIG to %s" , newDockerConfig )
15001504 cleanup := func () error {
15011505 var cleanupErr error
15021506 cleanupOnce .Do (func () {
1507+ // Restore the old DOCKER_CONFIG value.
1508+ os .Setenv ("DOCKER_CONFIG" , oldDockerConfig )
1509+ logf (log .LevelInfo , "Restored DOCKER_CONFIG to %s" , oldDockerConfig )
15031510 // Remove the Docker config secret file!
15041511 if cleanupErr = os .Remove (cfgPath ); err != nil {
15051512 if ! errors .Is (err , fs .ErrNotExist ) {
0 commit comments