@@ -124,6 +124,52 @@ func verifyDeploymentImage(yamlFile []byte, imageName string) string {
124
124
return warningMessages
125
125
}
126
126
127
+ func renderTestManifests (image string ) string {
128
+ namespacedRolesBytes := make ([]byte , 0 )
129
+ if namespacedManBuild == "" {
130
+ os .Mkdir ("deploy/test" , os .FileMode (int (0775 )))
131
+ namespacedManBuild = "deploy/test/namespace-manifests.yaml"
132
+ rbac , err := ioutil .ReadFile ("deploy/rbac.yaml" )
133
+ if err != nil {
134
+ log .Fatalf ("could not find rbac manifest: %v" , err )
135
+ }
136
+ operator , err := ioutil .ReadFile ("deploy/operator.yaml" )
137
+ if err != nil {
138
+ log .Fatalf ("could not find operator manifest: %v" , err )
139
+ }
140
+ combined := append (rbac , []byte ("\n ---\n " )... )
141
+ combined = append (combined , operator ... )
142
+ err = ioutil .WriteFile (namespacedManBuild , combined , os .FileMode (int (0664 )))
143
+ if err != nil {
144
+ log .Fatalf ("could not create temporary namespaced manifest file: %v" , err )
145
+ }
146
+ defer func () {
147
+ err := os .Remove (namespacedManBuild )
148
+ if err != nil {
149
+ log .Fatalf ("could not delete temporary namespace manifest file" )
150
+ }
151
+ }()
152
+ }
153
+ namespacedBytes , err := ioutil .ReadFile (namespacedManBuild )
154
+ if err != nil {
155
+ log .Fatalf ("could not read rbac manifest: %v" , err )
156
+ }
157
+ namespacedRolesBytes , err = parseRoles (namespacedBytes )
158
+ if err != nil {
159
+ log .Fatalf ("could not parse namespaced manifest file for rbac roles: %v" , err )
160
+ }
161
+ genWarning := verifyDeploymentImage (namespacedBytes , image )
162
+ global , err := ioutil .ReadFile (globalManBuild )
163
+ if err != nil {
164
+ cmdError .ExitWithError (cmdError .ExitError , fmt .Errorf ("failed to read global manifest: (%v)" , err ))
165
+ }
166
+ c := cmdutil .GetConfig ()
167
+ if err = generator .RenderTestYaml (c , string (global ), string (namespacedRolesBytes ), image ); err != nil {
168
+ cmdError .ExitWithError (cmdError .ExitError , fmt .Errorf ("failed to generate deploy/test-gen.yaml: (%v)" , err ))
169
+ }
170
+ return genWarning
171
+ }
172
+
127
173
const (
128
174
build = "./tmp/build/build.sh"
129
175
configYaml = "./config/config.yaml"
@@ -143,52 +189,11 @@ func buildFunc(cmd *cobra.Command, args []string) {
143
189
}
144
190
fmt .Fprintln (os .Stdout , string (o ))
145
191
146
- namespacedRolesBytes := make ([]byte , 0 )
147
192
genWarning := ""
148
193
image := args [0 ]
149
194
intermediateImageName := image
150
195
if enableTests {
151
- if namespacedManBuild == "" {
152
- os .Mkdir ("deploy/test" , os .FileMode (int (0775 )))
153
- namespacedManBuild = "deploy/test/namespace-manifests.yaml"
154
- rbac , err := ioutil .ReadFile ("deploy/rbac.yaml" )
155
- if err != nil {
156
- log .Fatalf ("could not find rbac manifest: %v" , err )
157
- }
158
- operator , err := ioutil .ReadFile ("deploy/operator.yaml" )
159
- if err != nil {
160
- log .Fatalf ("could not find operator manifest: %v" , err )
161
- }
162
- combined := append (rbac , []byte ("\n ---\n " )... )
163
- combined = append (combined , operator ... )
164
- err = ioutil .WriteFile (namespacedManBuild , combined , os .FileMode (int (0664 )))
165
- if err != nil {
166
- log .Fatalf ("could not create temporary namespaced manifest file: %v" , err )
167
- }
168
- defer func () {
169
- err := os .Remove (namespacedManBuild )
170
- if err != nil {
171
- log .Fatalf ("could not delete temporary namespace manifest file" )
172
- }
173
- }()
174
- }
175
- namespacedBytes , err := ioutil .ReadFile (namespacedManBuild )
176
- if err != nil {
177
- log .Fatalf ("could not read rbac manifest: %v" , err )
178
- }
179
- namespacedRolesBytes , err = parseRoles (namespacedBytes )
180
- if err != nil {
181
- log .Fatalf ("could not parse namespaced manifest file for rbac roles: %v" , err )
182
- }
183
- genWarning = verifyDeploymentImage (namespacedBytes , image )
184
- global , err := ioutil .ReadFile (globalManBuild )
185
- if err != nil {
186
- cmdError .ExitWithError (cmdError .ExitError , fmt .Errorf ("failed to read global manifest: (%v)" , err ))
187
- }
188
- c := cmdutil .GetConfig ()
189
- if err = generator .RenderTestYaml (c , string (global ), string (namespacedRolesBytes ), image ); err != nil {
190
- cmdError .ExitWithError (cmdError .ExitError , fmt .Errorf ("failed to generate deploy/test-gen.yaml: (%v)" , err ))
191
- }
196
+ genWarning = renderTestManifests (image )
192
197
intermediateImageName += "-intermediate"
193
198
}
194
199
dbcmd := exec .Command ("docker" , "build" , "." , "-f" , "tmp/build/Dockerfile" , "-t" , intermediateImageName )
0 commit comments