Skip to content
This repository was archived by the owner on Jul 18, 2025. It is now read-only.

Commit 3066e41

Browse files
authored
Merge pull request #455 from yudai/race_schema
Load schemas in init()
2 parents c932032 + 52506c8 commit 3066e41

File tree

2 files changed

+10
-16
lines changed

2 files changed

+10
-16
lines changed

config/schema_helpers.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,16 @@ var (
1717
schemaV2 map[string]interface{}
1818
)
1919

20+
func init() {
21+
if err := setupSchemaLoaders(schemaDataV1, &schemaV1, &schemaLoaderV1, &constraintSchemaLoaderV1); err != nil {
22+
panic(err)
23+
}
24+
25+
if err := setupSchemaLoaders(servicesSchemaDataV2, &schemaV2, &schemaLoaderV2, &constraintSchemaLoaderV2); err != nil {
26+
panic(err)
27+
}
28+
}
29+
2030
type (
2131
environmentFormatChecker struct{}
2232
portsFormatChecker struct{}

config/validation.go

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -157,10 +157,6 @@ func invalidTypeMessage(service, key string, err gojsonschema.ResultError) strin
157157
}
158158

159159
func validate(serviceMap RawServiceMap) error {
160-
if err := setupSchemaLoaders(schemaDataV1, &schemaV1, &schemaLoaderV1, &constraintSchemaLoaderV1); err != nil {
161-
return err
162-
}
163-
164160
serviceMap = convertServiceMapKeysToStrings(serviceMap)
165161

166162
dataLoader := gojsonschema.NewGoLoader(serviceMap)
@@ -174,10 +170,6 @@ func validate(serviceMap RawServiceMap) error {
174170
}
175171

176172
func validateV2(serviceMap RawServiceMap) error {
177-
if err := setupSchemaLoaders(servicesSchemaDataV2, &schemaV2, &schemaLoaderV2, &constraintSchemaLoaderV2); err != nil {
178-
return err
179-
}
180-
181173
serviceMap = convertServiceMapKeysToStrings(serviceMap)
182174

183175
dataLoader := gojsonschema.NewGoLoader(serviceMap)
@@ -250,10 +242,6 @@ func generateErrorMessages(serviceMap RawServiceMap, schema map[string]interface
250242
}
251243

252244
func validateServiceConstraints(service RawService, serviceName string) error {
253-
if err := setupSchemaLoaders(schemaDataV1, &schemaV1, &schemaLoaderV1, &constraintSchemaLoaderV1); err != nil {
254-
return err
255-
}
256-
257245
service = convertServiceKeysToStrings(service)
258246

259247
var validationErrors []string
@@ -289,10 +277,6 @@ func validateServiceConstraints(service RawService, serviceName string) error {
289277
}
290278

291279
func validateServiceConstraintsv2(service RawService, serviceName string) error {
292-
if err := setupSchemaLoaders(servicesSchemaDataV2, &schemaV2, &schemaLoaderV2, &constraintSchemaLoaderV2); err != nil {
293-
return err
294-
}
295-
296280
service = convertServiceKeysToStrings(service)
297281

298282
var validationErrors []string

0 commit comments

Comments
 (0)