Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/agency-index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

The SHARE IT Act requires federal agencies to publish metadata for their software projects. This metadata is compiled into an **agency-index.json** file, which serves as a centralized inventory of the agency's software portfolio.

View the agency-index.json schema here: https://github.com/DSACMS/gov-codejson/tree/main/schemas/agency-index/schema-2.0.0.json

To create an agency-index.json:
1. Identify GitHub organizations and other platforms where source code is hosted
2. Generate the agency-index.json using the tools below. Learn more about usage in [procedures.md](https://github.com/DSACMS/gov-codejson/blob/main/docs/procedures.md#generate-an-agency-indexjson-file-for-agencies)
Expand All @@ -11,4 +13,4 @@ To create an agency-index.json:
- Agency's top level domain (TLD)
- A GitHub repository

Agency index files are found here: https://github.com/DSACMS/code-gov/tree/main/agency-indexes
More examples of agency index files can be found here: https://github.com/DSACMS/code-gov/tree/main/agency-indexes
55 changes: 55 additions & 0 deletions schemas/agency-index/schema-2.0.0.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Code.gov Inventory",
"description": "A federal source code catalog",
"type": "object",
"required": [
"version",
"measurementType",
"agency",
"releases"
],
"properties": {
"agency": {
"description": "The agency acronym for Clinger Cohen Act agency, as defined by the United States Government Manual.",
"type": "string"
},
"measurementType": {
"type": "object",
"properties": {
"ifOther": {
"description": "A one- or two- sentence description of the measurement type used, if 'other' is selected as the value of 'method' field.",
"type": "string"
},
"method": {
"description": "An enumerated list of methods for measuring the open source requirement.",
"type": "string",
"enum": [
"linesOfCode",
"modules",
"cost",
"projects",
"systems",
"other"
]
}
},
"additionalProperties": false
},
"releases": {
"type": "array",
"items": {
"allOf": [
{
"$ref": "../schema-2.0.0.json"
}
]
},
"additionalProperties": false
},
"version": {
"description": "The version of the metadata schema in use. Implements semantic versioning 2.0.0 rules as defined at http://semver.org",
"type": "string"
}
}
}
Loading