func newAuthProvider(c *cli.Context) (dockerauth.AuthProvider, error) { awsSession := newConfigProvider(c) provider := dockerauth.NewMultiAuthProvider() provider.AddProvider(dockerauth.NewECRAuthProvider(func(region string) dockerauth.ECR { return ecr.New(awsSession, &aws.Config{Region: aws.String(region)}) })) if dockerConfigPath := c.String(FlagDockerAuth); dockerConfigPath != "" { dockerConfigFile, err := os.Open(dockerConfigPath) if err != nil { return nil, err } defer dockerConfigFile.Close() dockerConfigProvider, err := dockerauth.NewDockerConfigAuthProvider(dockerConfigFile) if err != nil { return nil, err } provider.AddProvider(dockerConfigProvider) } return provider, nil }
func newAuthProvider(c *cli.Context) (dockerauth.AuthProvider, error) { provider := dockerauth.NewMultiAuthProvider() provider.AddProvider(dockerauth.NewECRAuthProvider(ecr.New(newConfigProvider(c)))) if dockerConfigPath := c.String(FlagDockerAuth); dockerConfigPath != "" { dockerConfigFile, err := os.Open(dockerConfigPath) if err != nil { return nil, err } defer dockerConfigFile.Close() dockerConfigProvider, err := dockerauth.NewDockerConfigAuthProvider(dockerConfigFile) if err != nil { return nil, err } provider.AddProvider(dockerConfigProvider) } return provider, nil }