1
0
mirror of synced 2026-01-08 21:02:10 -05:00

Consolidate uses of AJV (#47662)

This commit is contained in:
Rachael Sewell
2023-12-13 11:58:43 -08:00
committed by GitHub
parent d505488eba
commit 97c70307b6
17 changed files with 138 additions and 149 deletions

View File

@@ -10,7 +10,7 @@ import yaml from 'js-yaml'
import { getContents } from '#src/workflows/git-utils.js'
import permissionSchema from './permission-list-schema.js'
import enabledSchema from './enabled-list-schema.js'
import { validateData } from '../../rest/scripts/utils/validate-data.js'
import { validateJson } from '#src/tests/lib/validate-json-schema.js'
const ENABLED_APPS_DIR = 'src/github-apps/data'
const CONFIG_FILE = 'src/github-apps/lib/config.json'
@@ -287,12 +287,20 @@ function initAppData(storage, category, data) {
async function validateAppData(data, pageType) {
if (pageType.includes('permissions')) {
for (const value of Object.values(data)) {
validateData(value, permissionSchema)
const { isValid, errors } = validateJson(permissionSchema, value)
if (!isValid) {
console.error(JSON.stringify(errors, null, 2))
throw new Error('GitHub Apps permission schema validation failed')
}
}
} else {
for (const arrayItems of Object.values(data)) {
for (const item of arrayItems) {
validateData(item, enabledSchema)
const { isValid, errors } = validateJson(enabledSchema, item)
if (!isValid) {
console.error(JSON.stringify(errors, null, 2))
throw new Error('GitHub Apps enabled apps schema validation failed')
}
}
}
}