Refactor code structure for improved readability and maintainability; optimize performance in key functions.
This commit is contained in:
@@ -0,0 +1,120 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://stellaops.io/schemas/run-manifest/v1",
|
||||
"title": "StellaOps Run Manifest",
|
||||
"description": "Captures all inputs for deterministic scan replay",
|
||||
"type": "object",
|
||||
"required": [
|
||||
"runId",
|
||||
"schemaVersion",
|
||||
"artifactDigests",
|
||||
"feedSnapshot",
|
||||
"policySnapshot",
|
||||
"toolVersions",
|
||||
"cryptoProfile",
|
||||
"environmentProfile",
|
||||
"canonicalizationVersion",
|
||||
"initiatedAt"
|
||||
],
|
||||
"properties": {
|
||||
"runId": { "type": "string" },
|
||||
"schemaVersion": { "type": "string", "pattern": "^\\d+\\.\\d+\\.\\d+$" },
|
||||
"artifactDigests": {
|
||||
"type": "array",
|
||||
"items": { "$ref": "#/$defs/artifactDigest" },
|
||||
"minItems": 1
|
||||
},
|
||||
"sbomDigests": {
|
||||
"type": "array",
|
||||
"items": { "$ref": "#/$defs/sbomReference" }
|
||||
},
|
||||
"feedSnapshot": { "$ref": "#/$defs/feedSnapshot" },
|
||||
"policySnapshot": { "$ref": "#/$defs/policySnapshot" },
|
||||
"toolVersions": { "$ref": "#/$defs/toolVersions" },
|
||||
"cryptoProfile": { "$ref": "#/$defs/cryptoProfile" },
|
||||
"environmentProfile": { "$ref": "#/$defs/environmentProfile" },
|
||||
"prngSeed": { "type": ["integer", "null"] },
|
||||
"canonicalizationVersion": { "type": "string" },
|
||||
"initiatedAt": { "type": "string", "format": "date-time" },
|
||||
"manifestDigest": { "type": ["string", "null"] }
|
||||
},
|
||||
"$defs": {
|
||||
"artifactDigest": {
|
||||
"type": "object",
|
||||
"required": ["algorithm", "digest"],
|
||||
"properties": {
|
||||
"algorithm": { "enum": ["sha256", "sha512"] },
|
||||
"digest": { "type": "string", "pattern": "^[a-f0-9]{64,128}$" },
|
||||
"mediaType": { "type": ["string", "null"] },
|
||||
"reference": { "type": ["string", "null"] }
|
||||
}
|
||||
},
|
||||
"sbomReference": {
|
||||
"type": "object",
|
||||
"required": ["format", "digest"],
|
||||
"properties": {
|
||||
"format": { "type": "string" },
|
||||
"digest": { "type": "string" },
|
||||
"uri": { "type": ["string", "null"] }
|
||||
}
|
||||
},
|
||||
"feedSnapshot": {
|
||||
"type": "object",
|
||||
"required": ["feedId", "version", "digest", "snapshotAt"],
|
||||
"properties": {
|
||||
"feedId": { "type": "string" },
|
||||
"version": { "type": "string" },
|
||||
"digest": { "type": "string" },
|
||||
"snapshotAt": { "type": "string", "format": "date-time" }
|
||||
}
|
||||
},
|
||||
"policySnapshot": {
|
||||
"type": "object",
|
||||
"required": ["policyVersion", "latticeRulesDigest", "enabledRules"],
|
||||
"properties": {
|
||||
"policyVersion": { "type": "string" },
|
||||
"latticeRulesDigest": { "type": "string" },
|
||||
"enabledRules": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
}
|
||||
}
|
||||
},
|
||||
"toolVersions": {
|
||||
"type": "object",
|
||||
"required": ["scannerVersion", "sbomGeneratorVersion", "reachabilityEngineVersion", "attestorVersion", "additionalTools"],
|
||||
"properties": {
|
||||
"scannerVersion": { "type": "string" },
|
||||
"sbomGeneratorVersion": { "type": "string" },
|
||||
"reachabilityEngineVersion": { "type": "string" },
|
||||
"attestorVersion": { "type": "string" },
|
||||
"additionalTools": { "type": "object" }
|
||||
}
|
||||
},
|
||||
"cryptoProfile": {
|
||||
"type": "object",
|
||||
"required": ["profileName", "trustRootIds", "allowedAlgorithms"],
|
||||
"properties": {
|
||||
"profileName": { "type": "string" },
|
||||
"trustRootIds": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
},
|
||||
"allowedAlgorithms": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
}
|
||||
}
|
||||
},
|
||||
"environmentProfile": {
|
||||
"type": "object",
|
||||
"required": ["name", "valkeyEnabled"],
|
||||
"properties": {
|
||||
"name": { "type": "string" },
|
||||
"valkeyEnabled": { "type": "boolean" },
|
||||
"postgresVersion": { "type": ["string", "null"] },
|
||||
"valkeyVersion": { "type": ["string", "null"] }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user