Skip to content

Commit 5f3faf5

Browse files
authored
match all k8s list resources (#606)
Signed-off-by: yxxhero <[email protected]>
1 parent c59f32f commit 5f3faf5

File tree

4 files changed

+60
-1
lines changed

4 files changed

+60
-1
lines changed

manifest/parse.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ func parseContent(content string, defaultNamespace string, normalizeManifests bo
113113
return nil, nil
114114
}
115115

116-
if parsedMetadata.Kind == "List" {
116+
if strings.HasSuffix(parsedMetadata.Kind, "List") {
117117
type ListV1 struct {
118118
Items []yaml.MapSlice `yaml:"items"`
119119
}

manifest/parse_test.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,32 @@ func TestList(t *testing.T) {
9292
)
9393
}
9494

95+
func TestConfigMapList(t *testing.T) {
96+
spec, err := os.ReadFile("testdata/configmaplist_v1.yaml")
97+
require.NoError(t, err)
98+
99+
require.Equal(t,
100+
[]string{
101+
"default, configmap-2-1, ConfigMap (v1)",
102+
"default, configmap-2-2, ConfigMap (v1)",
103+
},
104+
foundObjects(Parse(string(spec), "default", false)),
105+
)
106+
}
107+
108+
func TestSecretList(t *testing.T) {
109+
spec, err := os.ReadFile("testdata/secretlist_v1.yaml")
110+
require.NoError(t, err)
111+
112+
require.Equal(t,
113+
[]string{
114+
"default, my-secret-1, Secret (v1)",
115+
"default, my-secret-2, Secret (v1)",
116+
},
117+
foundObjects(Parse(string(spec), "default", false)),
118+
)
119+
}
120+
95121
func TestEmpty(t *testing.T) {
96122
spec, err := os.ReadFile("testdata/empty.yaml")
97123
require.NoError(t, err)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: v1
2+
kind: ConfigMapList
3+
items:
4+
- apiVersion: v1
5+
kind: ConfigMap
6+
metadata:
7+
name: configmap-2-1
8+
data:
9+
key1: data1
10+
- apiVersion: v1
11+
kind: ConfigMap
12+
metadata:
13+
name: configmap-2-2
14+
data:
15+
key2: data2

manifest/testdata/secretlist_v1.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: v1
2+
kind: SecretList
3+
items:
4+
- apiVersion: v1
5+
kind: Secret
6+
metadata:
7+
name: my-secret-1
8+
type: Opaque
9+
data:
10+
username: YWRtaW4=
11+
password: MWYyZDFlMmU2N2Rm
12+
- apiVersion: v1
13+
kind: Secret
14+
metadata:
15+
name: my-secret-2
16+
type: Opaque
17+
data:
18+
token: ZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNklrcFhWQ0o5LmV5SjFhV1FpT2pFc0luUnBiV1VpT2pFMU56RXlPRGd3TmpFeE1qQXdNVGN5TWpFeE1qQXdNVEE0TWpVMUxDSmhiR2NpT2lKSVV6STFOaUo5LmV5SjFhV1FpT2pFc0luUnBiV1VpT2pFMU56RXlPRGd3TmpFeE1qQXdNVGN5TWpFeE1qQXdNVEE0TWpVMUxDSmhiR2NpT2lKSVV6STFOaUo=

0 commit comments

Comments
 (0)