Skip to main content

Git Attestor

The Git Attestor records the current state of the objects in the git repository, including untracked objects. Both staged and unstaged states are recorded.

Subjects

The attestor returns the SHA1 (Secure Hash Algorithm 1) git commit hash as a subject.

Schema

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$ref": "#/$defs/Attestor",
"$defs": {
"Attestor": {
"properties": {
"gittool": {
"type": "string"
},
"gitbinpath": {
"type": "string"
},
"gitbinhash": {
"$ref": "#/$defs/DigestSet"
},
"commithash": {
"type": "string"
},
"author": {
"type": "string"
},
"authoremail": {
"type": "string"
},
"committername": {
"type": "string"
},
"committeremail": {
"type": "string"
},
"commitdate": {
"type": "string"
},
"commitmessage": {
"type": "string"
},
"status": {
"additionalProperties": {
"$ref": "#/$defs/Status"
},
"type": "object"
},
"commitdigest": {
"$ref": "#/$defs/DigestSet"
},
"signature": {
"type": "string"
},
"parenthashes": {
"items": {
"type": "string"
},
"type": "array"
},
"treehash": {
"type": "string"
},
"refs": {
"items": {
"type": "string"
},
"type": "array"
},
"remotes": {
"items": {
"type": "string"
},
"type": "array"
},
"tags": {
"items": {
"$ref": "#/$defs/Tag"
},
"type": "array"
},
"branch": {
"type": "string"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"gittool",
"commithash",
"author",
"authoremail",
"committername",
"committeremail",
"commitdate",
"commitmessage"
]
},
"DigestSet": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"Status": {
"properties": {
"staging": {
"type": "string"
},
"worktree": {
"type": "string"
}
},
"additionalProperties": false,
"type": "object"
},
"Tag": {
"properties": {
"name": {
"type": "string"
},
"taggername": {
"type": "string"
},
"taggeremail": {
"type": "string"
},
"when": {
"type": "string"
},
"pgpsignature": {
"type": "string"
},
"message": {
"type": "string"
}
},
"additionalProperties": false,
"type": "object",
"required": [
"name",
"taggername",
"taggeremail",
"when",
"pgpsignature",
"message"
]
}
}
}