@amazon-codecatalyst/blueprints.sam-serverless-application
Version:
This blueprint creates a project that leverages a serverless application model (SAM) to quickly create and deploy an API. You can choose Java, TypeScript, or Python as the programming language
168 lines (167 loc) • 4.42 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "/action/GitHubActionsRunner.json.0.0",
"type": "object",
"title": "GitHub Action Runner",
"description": "Add a GitHub Action to your workflow. You can use any action in the GitHub Marketplace.",
"properties": {
"Identifier": {
"$ref": "#/definitions/GitHubActionIdentifier"
},
"Configuration": {
"$ref": "#/definitions/GitHubActionConfiguration"
},
"DependsOn": {
"$ref": "../interfaces/DependsOn.json"
},
"Environment": {
"$ref": "../interfaces/Environment.json"
},
"Compute": {
"$ref": "../interfaces/Compute.json"
},
"Timeout": {
"$ref": "../interfaces/Timeout.json"
},
"Caching": {
"$ref": "#/definitions/GitHubActionCaching"
},
"Outputs": {
"$ref": "#/definitions/GitHubActionOutputs"
},
"Inputs": {
"$ref": "#/definitions/GitHubActionInputs"
}
},
"required": ["Configuration", "Identifier"],
"additionalProperties": false,
"definitions": {
"GitHubActionIdentifier": {
"type": "string",
"anyOf": [
{
"const": "aws/github-actions-runner@v1"
},
{
"type": "string",
"pattern": "^aws\\/github-actions-runner@v1(\\.0){0,2}"
}
]
},
"GitHubActionConfiguration": {
"title": "GitHubActionRunnerConfiguration",
"type": "object",
"additionalProperties": false,
"required": ["Steps"],
"properties": {
"Steps": {
"title": "GitHubActionRunnerSteps",
"description": "List of Github action steps to run",
"type": "array",
"minItems": 0,
"maxItems": 256,
"items": {
"description": "Definition of a Github action step",
"title": "GitHubActionRunnerStep",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"if": {
"type": "string"
},
"name": {
"type": "string"
},
"uses": {
"type": "string"
},
"with": {
"type": "object"
},
"run": {
"type": "string"
},
"env": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "boolean"
},
{
"type": "number"
}
]
}
},
"continue-on-error": {
"type": "boolean"
},
"timeout-minutes": {
"type": "integer"
},
"working-directory": {
"type": "string"
},
"shell": {
"type": "string"
}
}
}
}
}
},
"GitHubActionCaching": {
"title": "Caching",
"type": "object",
"properties": {
"FileCaching": {
"$ref": "../interfaces/FileCaching.json"
}
},
"additionalProperties": false,
"minProperties": 1
},
"GitHubActionOutputs": {
"type": "object",
"properties": {
"Variables": {
"$ref": "../interfaces/OutputVariables.json"
},
"AutoDiscoverReports": {
"$ref": "../interfaces/AutoDiscoverReports.json"
},
"Reports": {
"$ref": "../interfaces/Reports.json"
},
"Artifacts": {
"$ref": "../interfaces/OutputArtifacts.json"
}
},
"additionalProperties": false,
"minProperties": 1
},
"GitHubActionInputs": {
"type": "object",
"properties": {
"Artifacts": {
"$ref": "../interfaces/InputArtifacts.json"
},
"Sources": {
"$ref": "../interfaces/InputSources.json"
},
"Variables": {
"$ref": "../interfaces/InputVariables.json"
}
},
"additionalProperties": false,
"minProperties": 1
}
}
}