Make 'docker-email' optional on dockercfg secrets

It is not required for most username/password registries.
This commit is contained in:
Clayton Coleman
2017-02-27 17:12:16 -05:00
parent 6d9e2afeda
commit ec753da074
3 changed files with 25 additions and 7 deletions

View File

@@ -30,6 +30,10 @@ func TestSecretForDockerRegistryGenerate(t *testing.T) {
if err != nil {
t.Errorf("unexpected error: %v", err)
}
secretDataNoEmail, err := handleDockercfgContent(username, password, "", server)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
tests := map[string]struct {
params map[string]interface{}
@@ -55,6 +59,24 @@ func TestSecretForDockerRegistryGenerate(t *testing.T) {
},
expectErr: false,
},
"test-valid-use-no-email": {
params: map[string]interface{}{
"name": "foo",
"docker-server": server,
"docker-username": username,
"docker-password": password,
},
expected: &api.Secret{
ObjectMeta: metav1.ObjectMeta{
Name: "foo",
},
Data: map[string][]byte{
api.DockerConfigKey: secretDataNoEmail,
},
Type: api.SecretTypeDockercfg,
},
expectErr: false,
},
"test-missing-required-param": {
params: map[string]interface{}{
"name": "foo",