{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--aws-codebuild-project.json",
  "title": "AWSCodeBuildProjectProperties",
  "description": "Resource Type definition for AWS::CodeBuild::Project. Source:- No source definition found, add manually please",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/lalcebo/json-schema/master/serverless/resources/cloudformation-modified/aws-codebuild-project.json",
    "sourceSha256": "ee82b9c94f6c26c01937522d9fbdaf9c3772344bc5fe0e599aa4001ca2188394"
  },
  "type": "object",
  "properties": {
    "Description": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "ResourceAccessRole": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "VpcConfig": {
      "$ref": "#/$defs/VpcConfig"
    },
    "SecondarySources": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/Source"
      }
    },
    "EncryptionKey": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "SecondaryArtifacts": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/Artifacts"
      }
    },
    "Source": {
      "$ref": "#/$defs/Source"
    },
    "Name": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "LogsConfig": {
      "$ref": "#/$defs/LogsConfig"
    },
    "ServiceRole": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "QueuedTimeoutInMinutes": {
      "type": "integer"
    },
    "SecondarySourceVersions": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/ProjectSourceVersion"
      }
    },
    "Tags": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/Tag"
      }
    },
    "SourceVersion": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "Triggers": {
      "$ref": "#/$defs/ProjectTriggers"
    },
    "Artifacts": {
      "$ref": "#/$defs/Artifacts"
    },
    "BadgeEnabled": {
      "type": "boolean"
    },
    "FileSystemLocations": {
      "type": "array",
      "uniqueItems": false,
      "items": {
        "$ref": "#/$defs/ProjectFileSystemLocation"
      }
    },
    "Environment": {
      "$ref": "#/$defs/Environment"
    },
    "ConcurrentBuildLimit": {
      "type": "integer"
    },
    "Visibility": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
        }
      ]
    },
    "BuildBatchConfig": {
      "$ref": "#/$defs/ProjectBuildBatchConfig"
    },
    "TimeoutInMinutes": {
      "type": "integer"
    },
    "Cache": {
      "$ref": "#/$defs/ProjectCache"
    }
  },
  "typeName": "AWS::CodeBuild::Project",
  "readOnlyProperties": [
    "/properties/Id",
    "/properties/Arn"
  ],
  "$defs": {
    "ProjectSourceVersion": {
      "type": "object",
      "title": "AWSCodeBuildProjectProjectSourceVersionDefinition",
      "properties": {
        "SourceIdentifier": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "SourceVersion": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "SourceIdentifier"
      ],
      "additionalProperties": false
    },
    "VpcConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectVpcConfigDefinition",
      "properties": {
        "Subnets": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "VpcId": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "SecurityGroupIds": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "SourceAuth": {
      "type": "object",
      "title": "AWSCodeBuildProjectSourceAuthDefinition",
      "properties": {
        "Resource": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Type"
      ],
      "additionalProperties": false
    },
    "RegistryCredential": {
      "type": "object",
      "title": "AWSCodeBuildProjectRegistryCredentialDefinition",
      "properties": {
        "Credential": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "CredentialProvider": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Credential",
        "CredentialProvider"
      ],
      "additionalProperties": false
    },
    "FilterGroup": {
      "type": "object",
      "title": "AWSCodeBuildProjectFilterGroupDefinition",
      "additionalProperties": false
    },
    "Source": {
      "type": "object",
      "title": "AWSCodeBuildProjectSourceDefinition",
      "properties": {
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ReportBuildStatus": {
          "type": "boolean"
        },
        "Auth": {
          "$ref": "#/$defs/SourceAuth"
        },
        "SourceIdentifier": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "BuildSpec": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "GitCloneDepth": {
          "type": "integer"
        },
        "BuildStatusConfig": {
          "$ref": "#/$defs/BuildStatusConfig"
        },
        "GitSubmodulesConfig": {
          "$ref": "#/$defs/GitSubmodulesConfig"
        },
        "InsecureSsl": {
          "type": "boolean"
        },
        "Location": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Type"
      ],
      "additionalProperties": false
    },
    "ProjectCache": {
      "type": "object",
      "title": "AWSCodeBuildProjectProjectCacheDefinition",
      "properties": {
        "Modes": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Location": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Type"
      ],
      "additionalProperties": false
    },
    "Artifacts": {
      "type": "object",
      "title": "AWSCodeBuildProjectArtifactsDefinition",
      "properties": {
        "Path": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "ArtifactIdentifier": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "OverrideArtifactName": {
          "type": "boolean"
        },
        "Packaging": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "EncryptionDisabled": {
          "type": "boolean"
        },
        "Location": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "NamespaceType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Type"
      ],
      "additionalProperties": false
    },
    "LogsConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectLogsConfigDefinition",
      "properties": {
        "CloudWatchLogs": {
          "$ref": "#/$defs/CloudWatchLogsConfig"
        },
        "S3Logs": {
          "$ref": "#/$defs/S3LogsConfig"
        }
      },
      "additionalProperties": false
    },
    "BatchRestrictions": {
      "type": "object",
      "title": "AWSCodeBuildProjectBatchRestrictionsDefinition",
      "properties": {
        "ComputeTypesAllowed": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "type": "string"
          }
        },
        "MaximumBuildsAllowed": {
          "type": "integer"
        }
      },
      "additionalProperties": false
    },
    "ProjectBuildBatchConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectProjectBuildBatchConfigDefinition",
      "properties": {
        "CombineArtifacts": {
          "type": "boolean"
        },
        "ServiceRole": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "BatchReportMode": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TimeoutInMins": {
          "type": "integer"
        },
        "Restrictions": {
          "$ref": "#/$defs/BatchRestrictions"
        }
      },
      "additionalProperties": false
    },
    "CloudWatchLogsConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectCloudWatchLogsConfigDefinition",
      "properties": {
        "Status": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "GroupName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "StreamName": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Status"
      ],
      "additionalProperties": false
    },
    "Environment": {
      "type": "object",
      "title": "AWSCodeBuildProjectEnvironmentDefinition",
      "properties": {
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "EnvironmentVariables": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/EnvironmentVariable"
          }
        },
        "PrivilegedMode": {
          "type": "boolean"
        },
        "ImagePullCredentialsType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Image": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "RegistryCredential": {
          "$ref": "#/$defs/RegistryCredential"
        },
        "ComputeType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Certificate": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Type",
        "Image",
        "ComputeType"
      ],
      "additionalProperties": false
    },
    "EnvironmentVariable": {
      "type": "object",
      "title": "AWSCodeBuildProjectEnvironmentVariableDefinition",
      "properties": {
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Name": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Value",
        "Name"
      ],
      "additionalProperties": false
    },
    "ProjectFileSystemLocation": {
      "type": "object",
      "title": "AWSCodeBuildProjectProjectFileSystemLocationDefinition",
      "properties": {
        "MountPoint": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Type": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Identifier": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "MountOptions": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Location": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "MountPoint",
        "Type",
        "Identifier",
        "Location"
      ],
      "additionalProperties": false
    },
    "Tag": {
      "type": "object",
      "title": "AWSCodeBuildProjectTagDefinition",
      "properties": {
        "Value": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "Key": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Value",
        "Key"
      ],
      "additionalProperties": false
    },
    "ProjectTriggers": {
      "type": "object",
      "title": "AWSCodeBuildProjectProjectTriggersDefinition",
      "properties": {
        "BuildType": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "FilterGroups": {
          "type": "array",
          "uniqueItems": false,
          "items": {
            "$ref": "#/$defs/FilterGroup"
          }
        },
        "Webhook": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "BuildStatusConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectBuildStatusConfigDefinition",
      "properties": {
        "Context": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "TargetUrl": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "additionalProperties": false
    },
    "GitSubmodulesConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectGitSubmodulesConfigDefinition",
      "properties": {
        "FetchSubmodules": {
          "type": "boolean"
        }
      },
      "required": [
        "FetchSubmodules"
      ],
      "additionalProperties": false
    },
    "S3LogsConfig": {
      "type": "object",
      "title": "AWSCodeBuildProjectS3LogsConfigDefinition",
      "properties": {
        "Status": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        },
        "EncryptionDisabled": {
          "type": "boolean"
        },
        "Location": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/serverless-framework-configuration/_shared/latest--cf.functions.json#/Aws_CF_FunctionString"
            }
          ]
        }
      },
      "required": [
        "Status"
      ],
      "additionalProperties": false
    }
  },
  "primaryIdentifier": [
    "/properties/Id"
  ],
  "additionalProperties": false,
  "required": [
    "Artifacts",
    "ServiceRole",
    "Environment",
    "Source"
  ],
  "createOnlyProperties": [
    "/properties/Name"
  ]
}
