Files
2021-06-08 12:27:05 -07:00

515 lines
19 KiB
JSON

{
"typeName": "JFrog::Linux::Bastion::MODULE",
"description": "Schema for Module Fragment of type JFrog::Linux::Bastion::MODULE",
"properties": {
"Parameters": {
"type": "object",
"properties": {
"LogicalId": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "Logical Id of the MODULE"
},
"BastionAMIOS": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The Linux distribution for the AMI to be used for the bastion instances."
},
"BastionHostName": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The value used for the name tag of the bastion host"
},
"BastionBanner": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "Banner text to display upon login."
},
"BastionTenancy": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "VPC tenancy to launch the bastion in. Options: 'dedicated' or 'default'"
},
"BastionInstanceType": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "Amazon EC2 instance type for the bastion instances."
},
"EnableBanner": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "To include a banner to be displayed when connecting via SSH to the bastion, choose true."
},
"EnableTCPForwarding": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "To enable TCP forwarding, choose true."
},
"EnableX11Forwarding": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "To enable X11 forwarding, choose true."
},
"KeyPairName": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "Name of an existing public/private key pair. If you do not have one in this AWS Region, please create it before continuing."
},
"NumBastionHosts": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The number of bastion hosts to create. The maximum number is four."
},
"PublicSubnet1Id": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "ID of the public subnet in Availability Zone 1 of your existing VPC (e.g., subnet-z0376dab)."
},
"PublicSubnet2Id": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "ID of the public subnet in Availability Zone 1 of your existing VPC (e.g., subnet-z0376dab)."
},
"QSS3BucketName": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-)."
},
"QSS3BucketRegion": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. When using your own bucket, you must specify this value."
},
"QSS3KeyPrefix": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "S3 key prefix for the Quick Start assets. Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), dots (.) and forward slash (/) and it should end with a forward slash (/)."
},
"RemoteAccessCIDR": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "Allowed CIDR block for external SSH access to the bastions."
},
"VPCID": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "ID of the VPC (e.g., vpc-0343606e)."
},
"AlternativeInitializationScript": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "An alternative initialization script to run during setup."
},
"OSImageOverride": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The Region-specific image to use for the instance."
},
"EnvironmentVariables": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "A comma-separated list of environment variables for use in bootstrapping. Variables must be in the format KEY=VALUE. VALUE cannot contain commas."
},
"RootVolumeSize": {
"type": "object",
"properties": {
"Type": {
"type": "string"
},
"Description": {
"type": "string"
}
},
"required": [
"Type",
"Description"
],
"description": "The size in GB for the root EBS volume."
}
}
},
"Resources": {
"properties": {
"BastionMainLogGroup": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::Logs::LogGroup"
},
"Properties": {
"type": "object"
}
}
},
"SSHMetricFilter": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::Logs::MetricFilter"
},
"Properties": {
"type": "object"
}
}
},
"BastionHostRole": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::IAM::Role"
},
"Properties": {
"type": "object"
}
}
},
"BastionHostPolicy": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::IAM::Policy"
},
"Properties": {
"type": "object"
}
}
},
"BastionHostProfile": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::IAM::InstanceProfile"
},
"Properties": {
"type": "object"
}
}
},
"EIP1": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::EC2::EIP"
},
"Properties": {
"type": "object"
}
}
},
"EIP2": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::EC2::EIP"
},
"Properties": {
"type": "object"
}
}
},
"EIP3": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::EC2::EIP"
},
"Properties": {
"type": "object"
}
}
},
"EIP4": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::EC2::EIP"
},
"Properties": {
"type": "object"
}
}
},
"BastionAutoScalingGroup": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::AutoScaling::AutoScalingGroup"
},
"Properties": {
"type": "object"
}
}
},
"BastionLaunchConfiguration": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::AutoScaling::LaunchConfiguration"
},
"Properties": {
"type": "object"
}
}
},
"BastionSecurityGroup": {
"type": "object",
"properties": {
"Type": {
"type": "string",
"const": "AWS::EC2::SecurityGroup"
},
"Properties": {
"type": "object"
}
}
}
},
"type": "object",
"additionalProperties": false
}
},
"additionalProperties": true
}