├── .gitignore
├── README.md
├── appveyor.yml
├── codegen.ps1
├── img
├── humidifier.png
└── humidifier.svg
├── install-templates.ps1
├── license.txt
├── new-solution-test.ps1
├── publish-template-nuget.ps1
├── src
├── Humidifier.CodeGen
│ ├── Humidifier.CodeGen.csproj
│ ├── Humidifier.CodeGen.csproj.DotSettings
│ ├── Program.cs
│ ├── Properties
│ │ └── launchSettings.json
│ ├── Specification.cs
│ └── Specification.json
├── Humidifier.ConsoleTest
│ ├── Humidifier.ConsoleTest.csproj
│ └── Program.cs
├── Humidifier.Json
│ ├── ConditionConverter.cs
│ ├── FnAndConverter.cs
│ ├── FnBase64Converter.cs
│ ├── FnCidrConvertor.cs
│ ├── FnEqualsConverter.cs
│ ├── FnFindInMapConverter.cs
│ ├── FnGetAZsConverter.cs
│ ├── FnGetAttConverter.cs
│ ├── FnIfConverter.cs
│ ├── FnImportValueConverter.cs
│ ├── FnJoinConverter.cs
│ ├── FnNotConverter.cs
│ ├── FnOrConverter.cs
│ ├── FnRefConverter.cs
│ ├── FnSelectConverter.cs
│ ├── FnSplitConverter.cs
│ ├── FnSubConverter.cs
│ ├── Humidifier.Json.csproj
│ └── JsonStackSerializer.cs
├── Humidifier.sln
├── Humidifier
│ ├── ACMPCA
│ │ ├── Certificate.cs
│ │ ├── CertificateAuthority.cs
│ │ └── CertificateAuthorityActivation.cs
│ ├── ASK
│ │ └── Skill.cs
│ ├── AccessAnalyzer
│ │ └── Analyzer.cs
│ ├── AmazonMQ
│ │ ├── Broker.cs
│ │ ├── Configuration.cs
│ │ └── ConfigurationAssociation.cs
│ ├── Amplify
│ │ ├── App.cs
│ │ ├── Branch.cs
│ │ └── Domain.cs
│ ├── ApiGateway
│ │ ├── Account.cs
│ │ ├── ApiKey.cs
│ │ ├── Authorizer.cs
│ │ ├── BasePathMapping.cs
│ │ ├── ClientCertificate.cs
│ │ ├── Deployment.cs
│ │ ├── DocumentationPart.cs
│ │ ├── DocumentationVersion.cs
│ │ ├── DomainName.cs
│ │ ├── GatewayResponse.cs
│ │ ├── Method.cs
│ │ ├── Model.cs
│ │ ├── RequestValidator.cs
│ │ ├── Resource.cs
│ │ ├── RestApi.cs
│ │ ├── Stage.cs
│ │ ├── UsagePlan.cs
│ │ ├── UsagePlanKey.cs
│ │ └── VpcLink.cs
│ ├── ApiGatewayV2
│ │ ├── Api.cs
│ │ ├── ApiMapping.cs
│ │ ├── Authorizer.cs
│ │ ├── Deployment.cs
│ │ ├── DomainName.cs
│ │ ├── Integration.cs
│ │ ├── IntegrationResponse.cs
│ │ ├── Model.cs
│ │ ├── Route.cs
│ │ ├── RouteResponse.cs
│ │ └── Stage.cs
│ ├── AppConfig
│ │ ├── Application.cs
│ │ ├── ConfigurationProfile.cs
│ │ ├── Deployment.cs
│ │ ├── DeploymentStrategy.cs
│ │ └── Environment.cs
│ ├── AppMesh
│ │ ├── Mesh.cs
│ │ ├── Route.cs
│ │ ├── VirtualNode.cs
│ │ ├── VirtualRouter.cs
│ │ └── VirtualService.cs
│ ├── AppStream
│ │ ├── DirectoryConfig.cs
│ │ ├── Fleet.cs
│ │ ├── ImageBuilder.cs
│ │ ├── Stack.cs
│ │ ├── StackFleetAssociation.cs
│ │ ├── StackUserAssociation.cs
│ │ └── User.cs
│ ├── AppSync
│ │ ├── ApiCache.cs
│ │ ├── ApiKey.cs
│ │ ├── DataSource.cs
│ │ ├── FunctionConfiguration.cs
│ │ ├── GraphQLApi.cs
│ │ ├── GraphQLSchema.cs
│ │ └── Resolver.cs
│ ├── ApplicationAutoScaling
│ │ ├── ScalableTarget.cs
│ │ └── ScalingPolicy.cs
│ ├── Athena
│ │ ├── NamedQuery.cs
│ │ └── WorkGroup.cs
│ ├── AutoScaling
│ │ ├── AutoScalingGroup.cs
│ │ ├── LaunchConfiguration.cs
│ │ ├── LifecycleHook.cs
│ │ ├── ScalingPolicy.cs
│ │ └── ScheduledAction.cs
│ ├── AutoScalingPlans
│ │ └── ScalingPlan.cs
│ ├── Backup
│ │ ├── BackupPlan.cs
│ │ ├── BackupSelection.cs
│ │ └── BackupVault.cs
│ ├── Batch
│ │ ├── ComputeEnvironment.cs
│ │ ├── JobDefinition.cs
│ │ └── JobQueue.cs
│ ├── Budgets
│ │ └── Budget.cs
│ ├── Cassandra
│ │ ├── Keyspace.cs
│ │ └── Table.cs
│ ├── CertificateManager
│ │ └── Certificate.cs
│ ├── Chatbot
│ │ └── SlackChannelConfiguration.cs
│ ├── Cloud9
│ │ └── EnvironmentEC2.cs
│ ├── CloudFormation
│ │ ├── CustomResource.cs
│ │ ├── Macro.cs
│ │ ├── Stack.cs
│ │ ├── WaitCondition.cs
│ │ └── WaitConditionHandle.cs
│ ├── CloudFront
│ │ ├── CloudFrontOriginAccessIdentity.cs
│ │ ├── Distribution.cs
│ │ └── StreamingDistribution.cs
│ ├── CloudTrail
│ │ └── Trail.cs
│ ├── CloudWatch
│ │ ├── Alarm.cs
│ │ ├── AnomalyDetector.cs
│ │ ├── CompositeAlarm.cs
│ │ ├── Dashboard.cs
│ │ └── InsightRule.cs
│ ├── CodeBuild
│ │ ├── Project.cs
│ │ ├── ReportGroup.cs
│ │ └── SourceCredential.cs
│ ├── CodeCommit
│ │ └── Repository.cs
│ ├── CodeDeploy
│ │ ├── Application.cs
│ │ ├── DeploymentConfig.cs
│ │ └── DeploymentGroup.cs
│ ├── CodePipeline
│ │ ├── CustomActionType.cs
│ │ ├── Pipeline.cs
│ │ └── Webhook.cs
│ ├── CodeStar
│ │ └── GitHubRepository.cs
│ ├── CodeStarConnections
│ │ └── Connection.cs
│ ├── CodeStarNotifications
│ │ └── NotificationRule.cs
│ ├── Cognito
│ │ ├── IdentityPool.cs
│ │ ├── IdentityPoolRoleAttachment.cs
│ │ ├── UserPool.cs
│ │ ├── UserPoolClient.cs
│ │ ├── UserPoolDomain.cs
│ │ ├── UserPoolGroup.cs
│ │ ├── UserPoolIdentityProvider.cs
│ │ ├── UserPoolResourceServer.cs
│ │ ├── UserPoolRiskConfigurationAttachment.cs
│ │ ├── UserPoolUICustomizationAttachment.cs
│ │ ├── UserPoolUser.cs
│ │ └── UserPoolUserToGroupAttachment.cs
│ ├── Condition.cs
│ ├── Config
│ │ ├── AggregationAuthorization.cs
│ │ ├── ConfigRule.cs
│ │ ├── ConfigurationAggregator.cs
│ │ ├── ConfigurationRecorder.cs
│ │ ├── ConformancePack.cs
│ │ ├── DeliveryChannel.cs
│ │ ├── OrganizationConfigRule.cs
│ │ ├── OrganizationConformancePack.cs
│ │ └── RemediationConfiguration.cs
│ ├── CreationPolicy.cs
│ ├── DAX
│ │ ├── Cluster.cs
│ │ ├── ParameterGroup.cs
│ │ └── SubnetGroup.cs
│ ├── DLM
│ │ └── LifecyclePolicy.cs
│ ├── DMS
│ │ ├── Certificate.cs
│ │ ├── Endpoint.cs
│ │ ├── EventSubscription.cs
│ │ ├── ReplicationInstance.cs
│ │ ├── ReplicationSubnetGroup.cs
│ │ └── ReplicationTask.cs
│ ├── DataPipeline
│ │ └── Pipeline.cs
│ ├── DeletionPolicy.cs
│ ├── DirectoryService
│ │ ├── MicrosoftAD.cs
│ │ └── SimpleAD.cs
│ ├── DocDB
│ │ ├── DBCluster.cs
│ │ ├── DBClusterParameterGroup.cs
│ │ ├── DBInstance.cs
│ │ └── DBSubnetGroup.cs
│ ├── DynamoDB
│ │ └── Table.cs
│ ├── EC2
│ │ ├── CapacityReservation.cs
│ │ ├── ClientVpnAuthorizationRule.cs
│ │ ├── ClientVpnEndpoint.cs
│ │ ├── ClientVpnRoute.cs
│ │ ├── ClientVpnTargetNetworkAssociation.cs
│ │ ├── CustomerGateway.cs
│ │ ├── DHCPOptions.cs
│ │ ├── EC2Fleet.cs
│ │ ├── EIP.cs
│ │ ├── EIPAssociation.cs
│ │ ├── EgressOnlyInternetGateway.cs
│ │ ├── FlowLog.cs
│ │ ├── GatewayRouteTableAssociation.cs
│ │ ├── Host.cs
│ │ ├── Instance.cs
│ │ ├── InternetGateway.cs
│ │ ├── LaunchTemplate.cs
│ │ ├── LocalGatewayRoute.cs
│ │ ├── LocalGatewayRouteTableVPCAssociation.cs
│ │ ├── NatGateway.cs
│ │ ├── NetworkAcl.cs
│ │ ├── NetworkAclEntry.cs
│ │ ├── NetworkInterface.cs
│ │ ├── NetworkInterfaceAttachment.cs
│ │ ├── NetworkInterfacePermission.cs
│ │ ├── PlacementGroup.cs
│ │ ├── Route.cs
│ │ ├── RouteTable.cs
│ │ ├── SecurityGroup.cs
│ │ ├── SecurityGroupEgress.cs
│ │ ├── SecurityGroupIngress.cs
│ │ ├── SpotFleet.cs
│ │ ├── Subnet.cs
│ │ ├── SubnetCidrBlock.cs
│ │ ├── SubnetNetworkAclAssociation.cs
│ │ ├── SubnetRouteTableAssociation.cs
│ │ ├── TrafficMirrorFilter.cs
│ │ ├── TrafficMirrorFilterRule.cs
│ │ ├── TrafficMirrorSession.cs
│ │ ├── TrafficMirrorTarget.cs
│ │ ├── TransitGateway.cs
│ │ ├── TransitGatewayAttachment.cs
│ │ ├── TransitGatewayRoute.cs
│ │ ├── TransitGatewayRouteTable.cs
│ │ ├── TransitGatewayRouteTableAssociation.cs
│ │ ├── TransitGatewayRouteTablePropagation.cs
│ │ ├── VPC.cs
│ │ ├── VPCCidrBlock.cs
│ │ ├── VPCDHCPOptionsAssociation.cs
│ │ ├── VPCEndpoint.cs
│ │ ├── VPCEndpointConnectionNotification.cs
│ │ ├── VPCEndpointService.cs
│ │ ├── VPCEndpointServicePermissions.cs
│ │ ├── VPCGatewayAttachment.cs
│ │ ├── VPCPeeringConnection.cs
│ │ ├── VPNConnection.cs
│ │ ├── VPNConnectionRoute.cs
│ │ ├── VPNGateway.cs
│ │ ├── VPNGatewayRoutePropagation.cs
│ │ ├── Volume.cs
│ │ └── VolumeAttachment.cs
│ ├── ECR
│ │ └── Repository.cs
│ ├── ECS
│ │ ├── Cluster.cs
│ │ ├── PrimaryTaskSet.cs
│ │ ├── Service.cs
│ │ ├── TaskDefinition.cs
│ │ └── TaskSet.cs
│ ├── EFS
│ │ ├── FileSystem.cs
│ │ └── MountTarget.cs
│ ├── EKS
│ │ ├── Cluster.cs
│ │ └── Nodegroup.cs
│ ├── EMR
│ │ ├── Cluster.cs
│ │ ├── InstanceFleetConfig.cs
│ │ ├── InstanceGroupConfig.cs
│ │ ├── SecurityConfiguration.cs
│ │ └── Step.cs
│ ├── ElastiCache
│ │ ├── CacheCluster.cs
│ │ ├── ParameterGroup.cs
│ │ ├── ReplicationGroup.cs
│ │ ├── SecurityGroup.cs
│ │ ├── SecurityGroupIngress.cs
│ │ └── SubnetGroup.cs
│ ├── ElasticBeanstalk
│ │ ├── Application.cs
│ │ ├── ApplicationVersion.cs
│ │ ├── ConfigurationTemplate.cs
│ │ └── Environment.cs
│ ├── ElasticLoadBalancing
│ │ └── LoadBalancer.cs
│ ├── ElasticLoadBalancingV2
│ │ ├── Listener.cs
│ │ ├── ListenerCertificate.cs
│ │ ├── ListenerRule.cs
│ │ ├── LoadBalancer.cs
│ │ └── TargetGroup.cs
│ ├── Elasticsearch
│ │ └── Domain.cs
│ ├── EventSchemas
│ │ ├── Discoverer.cs
│ │ ├── Registry.cs
│ │ └── Schema.cs
│ ├── Events
│ │ ├── EventBus.cs
│ │ ├── EventBusPolicy.cs
│ │ └── Rule.cs
│ ├── FMS
│ │ ├── NotificationChannel.cs
│ │ └── Policy.cs
│ ├── FSx
│ │ └── FileSystem.cs
│ ├── Fn.cs
│ ├── GameLift
│ │ ├── Alias.cs
│ │ ├── Build.cs
│ │ ├── Fleet.cs
│ │ ├── GameSessionQueue.cs
│ │ ├── MatchmakingConfiguration.cs
│ │ ├── MatchmakingRuleSet.cs
│ │ └── Script.cs
│ ├── Glue
│ │ ├── Classifier.cs
│ │ ├── Connection.cs
│ │ ├── Crawler.cs
│ │ ├── DataCatalogEncryptionSettings.cs
│ │ ├── Database.cs
│ │ ├── DevEndpoint.cs
│ │ ├── Job.cs
│ │ ├── MLTransform.cs
│ │ ├── Partition.cs
│ │ ├── SecurityConfiguration.cs
│ │ ├── Table.cs
│ │ ├── Trigger.cs
│ │ └── Workflow.cs
│ ├── Greengrass
│ │ ├── ConnectorDefinition.cs
│ │ ├── ConnectorDefinitionVersion.cs
│ │ ├── CoreDefinition.cs
│ │ ├── CoreDefinitionVersion.cs
│ │ ├── DeviceDefinition.cs
│ │ ├── DeviceDefinitionVersion.cs
│ │ ├── FunctionDefinition.cs
│ │ ├── FunctionDefinitionVersion.cs
│ │ ├── Group.cs
│ │ ├── GroupVersion.cs
│ │ ├── LoggerDefinition.cs
│ │ ├── LoggerDefinitionVersion.cs
│ │ ├── ResourceDefinition.cs
│ │ ├── ResourceDefinitionVersion.cs
│ │ ├── SubscriptionDefinition.cs
│ │ └── SubscriptionDefinitionVersion.cs
│ ├── GuardDuty
│ │ ├── Detector.cs
│ │ ├── Filter.cs
│ │ ├── IPSet.cs
│ │ ├── Master.cs
│ │ ├── Member.cs
│ │ └── ThreatIntelSet.cs
│ ├── Humidifier.csproj
│ ├── IAM
│ │ ├── AccessKey.cs
│ │ ├── Group.cs
│ │ ├── InstanceProfile.cs
│ │ ├── ManagedPolicy.cs
│ │ ├── Policy.cs
│ │ ├── Role.cs
│ │ ├── ServiceLinkedRole.cs
│ │ ├── User.cs
│ │ └── UserToGroupAddition.cs
│ ├── IStackSerializer.cs
│ ├── Inspector
│ │ ├── AssessmentTarget.cs
│ │ ├── AssessmentTemplate.cs
│ │ └── ResourceGroup.cs
│ ├── IoT
│ │ ├── Certificate.cs
│ │ ├── Policy.cs
│ │ ├── PolicyPrincipalAttachment.cs
│ │ ├── Thing.cs
│ │ ├── ThingPrincipalAttachment.cs
│ │ └── TopicRule.cs
│ ├── IoT1Click
│ │ ├── Device.cs
│ │ ├── Placement.cs
│ │ └── Project.cs
│ ├── IoTAnalytics
│ │ ├── Channel.cs
│ │ ├── Dataset.cs
│ │ ├── Datastore.cs
│ │ └── Pipeline.cs
│ ├── IoTEvents
│ │ ├── DetectorModel.cs
│ │ └── Input.cs
│ ├── IoTThingsGraph
│ │ └── FlowTemplate.cs
│ ├── KMS
│ │ ├── Alias.cs
│ │ └── Key.cs
│ ├── Kinesis
│ │ ├── Stream.cs
│ │ └── StreamConsumer.cs
│ ├── KinesisAnalytics
│ │ ├── Application.cs
│ │ ├── ApplicationOutput.cs
│ │ └── ApplicationReferenceDataSource.cs
│ ├── KinesisAnalyticsV2
│ │ ├── Application.cs
│ │ ├── ApplicationCloudWatchLoggingOption.cs
│ │ ├── ApplicationOutput.cs
│ │ └── ApplicationReferenceDataSource.cs
│ ├── KinesisFirehose
│ │ └── DeliveryStream.cs
│ ├── LakeFormation
│ │ ├── DataLakeSettings.cs
│ │ ├── Permissions.cs
│ │ └── Resource.cs
│ ├── Lambda
│ │ ├── Alias.cs
│ │ ├── EventInvokeConfig.cs
│ │ ├── EventSourceMapping.cs
│ │ ├── Function.cs
│ │ ├── LayerVersion.cs
│ │ ├── LayerVersionPermission.cs
│ │ ├── Permission.cs
│ │ └── Version.cs
│ ├── Logs
│ │ ├── Destination.cs
│ │ ├── LogGroup.cs
│ │ ├── LogStream.cs
│ │ ├── MetricFilter.cs
│ │ └── SubscriptionFilter.cs
│ ├── MSK
│ │ └── Cluster.cs
│ ├── ManagedBlockchain
│ │ ├── Member.cs
│ │ └── Node.cs
│ ├── Mapping.cs
│ ├── MediaConvert
│ │ ├── JobTemplate.cs
│ │ ├── Preset.cs
│ │ └── Queue.cs
│ ├── MediaLive
│ │ ├── Channel.cs
│ │ ├── Input.cs
│ │ └── InputSecurityGroup.cs
│ ├── MediaStore
│ │ └── Container.cs
│ ├── Neptune
│ │ ├── DBCluster.cs
│ │ ├── DBClusterParameterGroup.cs
│ │ ├── DBInstance.cs
│ │ ├── DBParameterGroup.cs
│ │ └── DBSubnetGroup.cs
│ ├── OpsWorks
│ │ ├── App.cs
│ │ ├── ElasticLoadBalancerAttachment.cs
│ │ ├── Instance.cs
│ │ ├── Layer.cs
│ │ ├── Stack.cs
│ │ ├── UserProfile.cs
│ │ └── Volume.cs
│ ├── OpsWorksCM
│ │ └── Server.cs
│ ├── Output.cs
│ ├── Parameter.cs
│ ├── Pinpoint
│ │ ├── ADMChannel.cs
│ │ ├── APNSChannel.cs
│ │ ├── APNSSandboxChannel.cs
│ │ ├── APNSVoipChannel.cs
│ │ ├── APNSVoipSandboxChannel.cs
│ │ ├── App.cs
│ │ ├── ApplicationSettings.cs
│ │ ├── BaiduChannel.cs
│ │ ├── Campaign.cs
│ │ ├── EmailChannel.cs
│ │ ├── EmailTemplate.cs
│ │ ├── EventStream.cs
│ │ ├── GCMChannel.cs
│ │ ├── PushTemplate.cs
│ │ ├── SMSChannel.cs
│ │ ├── Segment.cs
│ │ ├── SmsTemplate.cs
│ │ └── VoiceChannel.cs
│ ├── PinpointEmail
│ │ ├── ConfigurationSet.cs
│ │ ├── ConfigurationSetEventDestination.cs
│ │ ├── DedicatedIpPool.cs
│ │ └── Identity.cs
│ ├── PolicyDocument.cs
│ ├── QLDB
│ │ └── Ledger.cs
│ ├── RAM
│ │ └── ResourceShare.cs
│ ├── RDS
│ │ ├── DBCluster.cs
│ │ ├── DBClusterParameterGroup.cs
│ │ ├── DBInstance.cs
│ │ ├── DBParameterGroup.cs
│ │ ├── DBSecurityGroup.cs
│ │ ├── DBSecurityGroupIngress.cs
│ │ ├── DBSubnetGroup.cs
│ │ ├── EventSubscription.cs
│ │ └── OptionGroup.cs
│ ├── Redshift
│ │ ├── Cluster.cs
│ │ ├── ClusterParameterGroup.cs
│ │ ├── ClusterSecurityGroup.cs
│ │ ├── ClusterSecurityGroupIngress.cs
│ │ └── ClusterSubnetGroup.cs
│ ├── Resource.cs
│ ├── RoboMaker
│ │ ├── Fleet.cs
│ │ ├── Robot.cs
│ │ ├── RobotApplication.cs
│ │ ├── RobotApplicationVersion.cs
│ │ ├── SimulationApplication.cs
│ │ └── SimulationApplicationVersion.cs
│ ├── Route53
│ │ ├── HealthCheck.cs
│ │ ├── HostedZone.cs
│ │ ├── RecordSet.cs
│ │ └── RecordSetGroup.cs
│ ├── Route53Resolver
│ │ ├── ResolverEndpoint.cs
│ │ ├── ResolverRule.cs
│ │ └── ResolverRuleAssociation.cs
│ ├── S3
│ │ ├── AccessPoint.cs
│ │ ├── Bucket.cs
│ │ └── BucketPolicy.cs
│ ├── SDB
│ │ └── Domain.cs
│ ├── SES
│ │ ├── ConfigurationSet.cs
│ │ ├── ConfigurationSetEventDestination.cs
│ │ ├── ReceiptFilter.cs
│ │ ├── ReceiptRule.cs
│ │ ├── ReceiptRuleSet.cs
│ │ └── Template.cs
│ ├── SNS
│ │ ├── Subscription.cs
│ │ ├── Topic.cs
│ │ └── TopicPolicy.cs
│ ├── SQS
│ │ ├── Queue.cs
│ │ └── QueuePolicy.cs
│ ├── SSM
│ │ ├── Association.cs
│ │ ├── Document.cs
│ │ ├── MaintenanceWindow.cs
│ │ ├── MaintenanceWindowTarget.cs
│ │ ├── MaintenanceWindowTask.cs
│ │ ├── Parameter.cs
│ │ ├── PatchBaseline.cs
│ │ └── ResourceDataSync.cs
│ ├── SageMaker
│ │ ├── CodeRepository.cs
│ │ ├── Endpoint.cs
│ │ ├── EndpointConfig.cs
│ │ ├── Model.cs
│ │ ├── NotebookInstance.cs
│ │ ├── NotebookInstanceLifecycleConfig.cs
│ │ └── Workteam.cs
│ ├── SecretsManager
│ │ ├── ResourcePolicy.cs
│ │ ├── RotationSchedule.cs
│ │ ├── Secret.cs
│ │ └── SecretTargetAttachment.cs
│ ├── SecurityHub
│ │ └── Hub.cs
│ ├── Serverless
│ │ ├── Api.cs
│ │ ├── Function.cs
│ │ └── SimpleTable.cs
│ ├── ServiceCatalog
│ │ ├── AcceptedPortfolioShare.cs
│ │ ├── CloudFormationProduct.cs
│ │ ├── CloudFormationProvisionedProduct.cs
│ │ ├── LaunchNotificationConstraint.cs
│ │ ├── LaunchRoleConstraint.cs
│ │ ├── LaunchTemplateConstraint.cs
│ │ ├── Portfolio.cs
│ │ ├── PortfolioPrincipalAssociation.cs
│ │ ├── PortfolioProductAssociation.cs
│ │ ├── PortfolioShare.cs
│ │ ├── ResourceUpdateConstraint.cs
│ │ ├── StackSetConstraint.cs
│ │ ├── TagOption.cs
│ │ └── TagOptionAssociation.cs
│ ├── ServiceDiscovery
│ │ ├── HttpNamespace.cs
│ │ ├── Instance.cs
│ │ ├── PrivateDnsNamespace.cs
│ │ ├── PublicDnsNamespace.cs
│ │ └── Service.cs
│ ├── Stack.cs
│ ├── StepFunctions
│ │ ├── Activity.cs
│ │ └── StateMachine.cs
│ ├── Tag.cs
│ ├── Transfer
│ │ ├── Server.cs
│ │ └── User.cs
│ ├── UpdatePolicy.cs
│ ├── WAF
│ │ ├── ByteMatchSet.cs
│ │ ├── IPSet.cs
│ │ ├── Rule.cs
│ │ ├── SizeConstraintSet.cs
│ │ ├── SqlInjectionMatchSet.cs
│ │ ├── WebACL.cs
│ │ └── XssMatchSet.cs
│ ├── WAFRegional
│ │ ├── ByteMatchSet.cs
│ │ ├── GeoMatchSet.cs
│ │ ├── IPSet.cs
│ │ ├── RateBasedRule.cs
│ │ ├── RegexPatternSet.cs
│ │ ├── Rule.cs
│ │ ├── SizeConstraintSet.cs
│ │ ├── SqlInjectionMatchSet.cs
│ │ ├── WebACL.cs
│ │ ├── WebACLAssociation.cs
│ │ └── XssMatchSet.cs
│ ├── WAFv2
│ │ ├── IPSet.cs
│ │ ├── RegexPatternSet.cs
│ │ ├── RuleGroup.cs
│ │ ├── WebACL.cs
│ │ └── WebACLAssociation.cs
│ └── WorkSpaces
│ │ └── Workspace.cs
├── Nuget.Config
└── global.json
├── templates
├── .gitignore
├── Humidifier.Solution.Template
│ ├── .$env$.env
│ ├── .template.config
│ │ └── template.json
│ ├── Nuget.Config
│ ├── ProjectBaseName.sln
│ ├── README.md
│ ├── src
│ │ ├── ProjectBaseName.DeployTool
│ │ │ ├── Config.cs
│ │ │ ├── Context.cs
│ │ │ ├── Program.cs
│ │ │ ├── ProjectBaseName.DeployTool.csproj
│ │ │ ├── Properties
│ │ │ │ └── launchSettings.json
│ │ │ ├── Secrets.cs
│ │ │ ├── Stacks
│ │ │ │ ├── BaseStack.cs
│ │ │ │ └── SimpleStack.cs
│ │ │ └── Util
│ │ │ │ ├── Cloudformation.cs
│ │ │ │ ├── Crypto.cs
│ │ │ │ ├── LambdaDeployer.cs
│ │ │ │ └── LambdaInvoker.cs
│ │ ├── ProjectBaseName.Lambda.Common
│ │ │ ├── CloudwatchMetrics.cs
│ │ │ ├── ProjectBaseName.Lambda.Common.csproj
│ │ │ ├── SerilogLambdaSink.cs
│ │ │ ├── SimpleFunctionArgs.cs
│ │ │ └── SimpleFunctionResult.cs
│ │ ├── ProjectBaseName.Lambda.Simple
│ │ │ ├── Function.cs
│ │ │ └── ProjectBaseName.Lambda.Simple.csproj
│ │ └── ProjectBaseName.Tests
│ │ │ ├── ProjectBaseName.Tests.csproj
│ │ │ └── SimpleLambdaTests.cs
│ └── tasks.ps1
└── Humidifier.Templates.nuspec
└── tools
└── nuget.exe
/.gitignore:
--------------------------------------------------------------------------------
1 | [Oo]bj/
2 | [Bb]in/
3 | TestResults/
4 | .nuget/
5 | _ReSharper.*/
6 | packages/
7 | artifacts/
8 | PublishProfiles/
9 | *.user
10 | *.suo
11 | *.cache
12 | *.docstates
13 | _ReSharper.*
14 | nuget.exe
15 | *net45.csproj
16 | *net451.csproj
17 | *k10.csproj
18 | *.psess
19 | *.vsp
20 | *.pidb
21 | *.userprefs
22 | *DS_Store
23 | *.ncrunchsolution
24 | *.*sdf
25 | *.ipch
26 | *.sln.ide
27 | project.lock.json
28 | .vs
29 | .build/
30 | .testPublish/
31 | *.env
32 | .DS_Store*
33 | ehthumbs.db
34 | Icon?
35 | Thumbs.db
36 | *.7z
37 | *.dmg
38 | *.gz
39 | *.iso
40 | *.jar
41 | *.rar
42 | *.tar
43 | *.zip
44 | *.log
45 |
46 | /ExampleProject
--------------------------------------------------------------------------------
/appveyor.yml:
--------------------------------------------------------------------------------
1 | version: 10.0.{build}
2 | image: Visual Studio 2017
3 | configuration: Release
4 | install:
5 | - ps: >-
6 | cd src
7 |
8 | nuget restore Humidifier.sln
9 |
10 | $env:HUMIDIFIER_BUILD_NUMBER = ([int]$env:APPVEYOR_BUILD_NUMBER).ToString("000")
11 |
12 | $env:HUMIDIFIER_VERSION_SUFFIX = "pre$env:HUMIDIFIER_BUILD_NUMBER"
13 |
14 | $env:appveyor_nuget_push = 'false'
15 |
16 | if(-Not $env:APPVEYOR_PULL_REQUEST_NUMBER) {
17 | if($env:appveyor_repo_tag -eq 'True') {
18 | if($env:appveyor_repo_tag_name -match '^v[0-9]') {
19 | $env:appveyor_nuget_push = 'true'
20 | $env:HUMIDIFIER_VERSION_SUFFIX = ""
21 | }
22 | if($env:appveyor_repo_tag_name -eq 'latest') {
23 | $env:appveyor_nuget_push = 'true'
24 | }
25 | }
26 | }
27 | build:
28 | project: src/Humidifier.sln
29 | verbosity: minimal
30 | before_package:
31 | - cmd: >-
32 | msbuild /t:pack /p:VersionSuffix="%HUMIDIFIER_VERSION_SUFFIX%" /p:Configuration=Release Humidifier/Humidifier.csproj
33 |
34 | msbuild /t:pack /p:VersionSuffix="%HUMIDIFIER_VERSION_SUFFIX%" /p:Configuration=Release Humidifier.Json/Humidifier.Json.csproj
35 | artifacts:
36 | - path: src\Humidifier\Bin\Release\*.nupkg
37 | - path: src\Humidifier.Json\Bin\Release\*.nupkg
38 |
39 | deploy:
40 | - provider: NuGet
41 | api_key:
42 | secure: nr25s44o52anjrtcBL7L34AIgH5VixWUqi2l1GawzufnVmPs4KE1qpezO63OloqP
43 | on:
44 | appveyor_nuget_push: true
--------------------------------------------------------------------------------
/codegen.ps1:
--------------------------------------------------------------------------------
1 | dotnet restore "src/Humidifier.sln"
2 | dotnet build "src/Humidifier.sln"
3 | $env:BUILD_PATH = $PWD
4 | dotnet ./src/Humidifier.CodeGen/bin/Debug/netcoreapp2.0/Humidifier.CodeGen.dll
--------------------------------------------------------------------------------
/img/humidifier.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jakejscott/Humidifier/7efffcf70a992d0447c04a8bda7be80976d98020/img/humidifier.png
--------------------------------------------------------------------------------
/install-templates.ps1:
--------------------------------------------------------------------------------
1 | # To clear out custom templates you can run
2 | # dotnet new --debug:reinit
3 |
4 | Write-Host "Packaging templates..."
5 | tools\nuget pack .\templates\Humidifier.Templates.nuspec -OutputDirectory .\templatepackages
6 |
7 | Write-Host "Uninstalling templates..."
8 | dotnet new -u .\templatepackages
9 |
10 | Write-Host "Installing templates..."
11 | dotnet new -i .\templatepackages
12 |
13 |
--------------------------------------------------------------------------------
/license.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2017, Jake Scott
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without modification
5 | , are permitted provided that the following conditions are met:
6 |
7 | 1. Redistributions of source code must retain the above copyright notice, this
8 | list of conditions and the following disclaimer.
9 |
10 | 2. Redistributions in binary form must reproduce the above copyright notice,
11 | this list of conditions and the following disclaimer in the documentation
12 | and/or other materials provided with the distribution.
13 |
14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
15 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
16 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
18 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/new-solution-test.ps1:
--------------------------------------------------------------------------------
1 | $projectName = "ExampleProject"
2 | $stack = "example"
3 | $env = "test"
4 | $region = "us-west-2"
5 | $profile = "example"
6 | $build_config = "Debug"
7 | $team = "example"
8 | $email = "example@example.com"
9 |
10 | Remove-Item $projectName -ErrorAction Ignore -Force -Recurse
11 |
12 | dotnet new humidifier.sln --name $projectName --output $projectName --env $env --region $region --stack $stack --profile $profile --build_config $build_config --team $team --email $email
13 | # dotnet new humidifier.sln --name $projectName --output $projectName
14 |
15 |
16 |
--------------------------------------------------------------------------------
/publish-template-nuget.ps1:
--------------------------------------------------------------------------------
1 |
2 | $key = "$env:HUMIDIFIER_NUGET_API_KEY"
3 |
4 | .\tools\nuget pack .\templates\Humidifier.Templates.nuspec -OutputDirectory .\templatepackages
5 | .\tools\nuget push .\templatepackages\Humidifier.Templates.1.0.6.nupkg $key -src https://nuget.org
--------------------------------------------------------------------------------
/src/Humidifier.CodeGen/Humidifier.CodeGen.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | netcoreapp2.0
6 |
7 |
8 |
9 | latest
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | Always
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/Humidifier.CodeGen/Humidifier.CodeGen.csproj.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | CSharp71
--------------------------------------------------------------------------------
/src/Humidifier.CodeGen/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "Humidifier.CodeGen": {
4 | "commandName": "Project",
5 | "environmentVariables": {
6 | "BUILD_PATH": "C:\\dev\\Humidifier"
7 | }
8 | }
9 | }
10 | }
--------------------------------------------------------------------------------
/src/Humidifier.ConsoleTest/Humidifier.ConsoleTest.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | netcoreapp2.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/Humidifier.Json/ConditionConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | public class ConditionConverter : JsonConverter
7 | {
8 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
9 | public override bool CanConvert(Type objectType) => objectType == typeof(Condition);
10 |
11 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
12 | {
13 | var condition = (Condition)value;
14 | serializer.Serialize(writer, condition.Fn);
15 | }
16 | }
17 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnAndConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnAndConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnAnd);
9 | public override bool CanRead => false;
10 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
11 | public override bool CanWrite => true;
12 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
13 | {
14 | // { "Fn::And": [{condition}, {...}] }
15 |
16 | var fn = (FnAnd)value;
17 | writer.WriteStartObject();
18 | writer.WritePropertyName("Fn::And");
19 | writer.WriteStartArray();
20 | foreach (var condition in fn.Conditions)
21 | {
22 | serializer.Serialize(writer, condition);
23 | }
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnBase64Converter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using System.Text;
4 | using Newtonsoft.Json;
5 |
6 | namespace Humidifier.Json
7 | {
8 | internal class FnBase64Converter : JsonConverter
9 | {
10 | public override bool CanConvert(Type objectType) => objectType == typeof(FnBase64);
11 |
12 | public override bool CanRead => false;
13 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
14 |
15 | public override bool CanWrite => true;
16 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
17 | {
18 | // { "Fn::Base64" : "AWS Cloudformation" }
19 |
20 | var fn = (FnBase64)value;
21 |
22 | var valueToEncode = fn.ValueToEncode;
23 |
24 | if (valueToEncode is string)
25 | {
26 | var builder = new StringBuilder();
27 | var reader = new StringReader(valueToEncode);
28 |
29 | var line = reader.ReadLine();
30 | while (line != null)
31 | {
32 | line = line.TrimStart(' ');
33 | builder.AppendLine(line);
34 | line = reader.ReadLine();
35 | }
36 |
37 | valueToEncode = builder.ToString();
38 | }
39 |
40 | writer.WriteStartObject();
41 | writer.WritePropertyName("Fn::Base64");
42 | serializer.Serialize(writer, valueToEncode);
43 | writer.WriteEndObject();
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnCidrConvertor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnCidrConvertor : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnCidr);
9 | public override bool CanRead => false;
10 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
11 | public override bool CanWrite => true;
12 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
13 | {
14 | // { "Fn::Cidr": [ "ipBlock", "count", "sizeMask"] }
15 |
16 | var fn = (FnCidr)value;
17 | writer.WriteStartObject();
18 | writer.WritePropertyName("Fn::Cidr");
19 | writer.WriteStartArray();
20 | writer.WriteToken(JsonToken.String, fn.IpBlock);
21 | writer.WriteToken(JsonToken.String, fn.Count);
22 | writer.WriteToken(JsonToken.String, fn.SizeMask);
23 | writer.WriteEndArray();
24 | writer.WriteEndObject();
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnEqualsConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnEqualsConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnEquals);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::Equals" : ["value_1", "value_2"] }
17 |
18 | var fn = (FnEquals)value;
19 |
20 | writer.WriteStartObject();
21 | writer.WritePropertyName("Fn::Equals");
22 | writer.WriteStartArray();
23 |
24 | serializer.Serialize(writer, fn.Value1);
25 | serializer.Serialize(writer, fn.Value2);
26 |
27 | writer.WriteEndArray();
28 | writer.WriteEndObject();
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnFindInMapConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnFindInMapConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnFindInMap);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::FindInMap" : [ "RegionMap", { "Ref" : "AWS::Region" }, "32"]}
17 |
18 | var fn = (FnFindInMap)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::FindInMap");
21 | writer.WriteStartArray();
22 | writer.WriteToken(JsonToken.String, fn.MapName);
23 | serializer.Serialize(writer, fn.TopLevelKey);
24 | serializer.Serialize(writer, fn.SecondLevelKey);
25 | writer.WriteEndArray();
26 | writer.WriteEndObject();
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnGetAZsConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnGetAZsConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnGetAZs);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::GetAZs" : "" }
17 | // { "Fn::GetAZs" : { "Ref" : "AWS::Region" } }
18 | // { "Fn::GetAZs" : "us-east-2" }
19 |
20 | var fn = (FnGetAZs)value;
21 | writer.WriteStartObject();
22 | writer.WritePropertyName("Fn::GetAZs");
23 | serializer.Serialize(writer, fn.Region);
24 | writer.WriteEndObject();
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnGetAttConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnGetAttConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnGetAtt);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::GetAtt" : [ "logicalNameOfResource", "attributeName" ] }
17 |
18 | var fn = (FnGetAtt)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::GetAtt");
21 | writer.WriteStartArray();
22 | writer.WriteToken(JsonToken.String, fn.LogicalNameOfResource);
23 | writer.WriteToken(JsonToken.String, fn.AttributeName);
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnIfConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnIfConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnIf);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::If": [ condition_name, value_if_true, value_if_false ] }
17 |
18 | var fn = (FnIf)value;
19 |
20 | writer.WriteStartObject();
21 | writer.WritePropertyName("Fn::If");
22 | writer.WriteStartArray();
23 | writer.WriteToken(JsonToken.String, fn.ConditionName);
24 | serializer.Serialize(writer, fn.ValueIfTrue);
25 | serializer.Serialize(writer, fn.ValueIfFalse);
26 | writer.WriteEndArray();
27 | writer.WriteEndObject();
28 | }
29 | }
30 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnImportValueConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnImportValueConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnImportValue);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { 'Fn::ImportValue' : { 'Fn::Sub': '${AutomationStack}-DeploymentBucket' } }
17 |
18 | var fn = (FnImportValue)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::ImportValue");
21 | serializer.Serialize(writer, fn.SharedValueToImport);
22 | writer.WriteEndObject();
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnJoinConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnJoinConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnJoin);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::Join" : [ "", ["arn:aws:s3:::", { "Ref" : "DeploymentBucket" } ] ] }
17 |
18 | var fn = (FnJoin)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::Join");
21 | writer.WriteStartArray();
22 | writer.WriteToken(JsonToken.String, fn.Seperator);
23 | serializer.Serialize(writer, fn.Parameters);
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnNotConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnNotConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnNot);
9 | public override bool CanRead => false;
10 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
11 | public override bool CanWrite => true;
12 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
13 | {
14 | // { "Fn::Not": [{condition}] }
15 |
16 | var fn = (FnNot)value;
17 |
18 | writer.WriteStartObject();
19 | writer.WritePropertyName("Fn::Not");
20 | writer.WriteStartArray();
21 | serializer.Serialize(writer, fn.Condition);
22 | writer.WriteEndArray();
23 | writer.WriteEndObject();
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnOrConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnOrConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnOr);
9 | public override bool CanRead => false;
10 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
11 | public override bool CanWrite => true;
12 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
13 | {
14 | // { "Fn::Or": [{condition}, {...}] }
15 |
16 | var fn = (FnOr)value;
17 | writer.WriteStartObject();
18 | writer.WritePropertyName("Fn::Or");
19 | writer.WriteStartArray();
20 | foreach (var condition in fn.Conditions)
21 | {
22 | serializer.Serialize(writer, condition);
23 | }
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnRefConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnRefConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnRef);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Ref" : "AWS::StackName }
17 |
18 | var fn = (FnRef)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Ref");
21 | writer.WriteToken(JsonToken.String, fn.Reference);
22 | writer.WriteEndObject();
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnSelectConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnSelectConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnSelect);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::Select" : [ "1", [ "apples", "grapes", "oranges", "mangoes" ] ] }
17 |
18 | var fn = (FnSelect)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::Select");
21 | writer.WriteStartArray();
22 | writer.WriteToken(JsonToken.String, fn.Index);
23 | serializer.Serialize(writer, fn.ListOfObjects);
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnSplitConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Newtonsoft.Json;
3 |
4 | namespace Humidifier.Json
5 | {
6 | internal class FnSplitConverter : JsonConverter
7 | {
8 | public override bool CanConvert(Type objectType) => objectType == typeof(FnSplit);
9 |
10 | public override bool CanRead => false;
11 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
12 |
13 | public override bool CanWrite => true;
14 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
15 | {
16 | // { "Fn::Split": [ "," , { "Fn::ImportValue": "AccountSubnetIDs"} ] }
17 |
18 | var fn = (FnSplit)value;
19 | writer.WriteStartObject();
20 | writer.WritePropertyName("Fn::Split");
21 | writer.WriteStartArray();
22 | writer.WriteToken(JsonToken.String, fn.Delimiter);
23 | serializer.Serialize(writer, fn.SourceString);
24 | writer.WriteEndArray();
25 | writer.WriteEndObject();
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/FnSubConverter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Linq;
3 | using Newtonsoft.Json;
4 |
5 | namespace Humidifier.Json
6 | {
7 | internal class FnSubConverter : JsonConverter
8 | {
9 | public override bool CanConvert(Type objectType) => objectType == typeof(FnSub);
10 |
11 | public override bool CanRead => false;
12 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => throw new NotImplementedException();
13 |
14 | public override bool CanWrite => true;
15 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
16 | {
17 | var fn = (FnSub)value;
18 | writer.WriteStartObject();
19 | writer.WritePropertyName("Fn::Sub");
20 |
21 | if (fn.Variables != null && fn.Variables.Any())
22 | {
23 | // { "Fn::Sub" : [ String, { Var1Name: Var1Value, Var2Name: Var2Value } ] }
24 | writer.WriteStartArray();
25 | writer.WriteToken(JsonToken.String, fn.String);
26 | serializer.Serialize(writer, fn.Variables);
27 | writer.WriteEndArray();
28 | }
29 | else
30 | {
31 | // { "Fn::Sub" : String }
32 | writer.WriteToken(JsonToken.String, fn.String);
33 | }
34 |
35 | writer.WriteEndObject();
36 | }
37 | }
38 | }
--------------------------------------------------------------------------------
/src/Humidifier.Json/Humidifier.Json.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Json Serialization support for Humidifier.
5 | Jake Scott
6 | Humidifier.Json
7 | en-US
8 | 0.3.1
9 | Jake Scott
10 | net45;netstandard1.3;netstandard2.0
11 | Humidifier.Json
12 | Humidifier.Json
13 | aws;cloudformation;
14 | https://raw.githubusercontent.com/jakejscott/humidifier/master/img/humidifier.png
15 | https://github.com/jakejscott/humidifier
16 | https://github.com/jakejscott/humidifier/blob/master/license.txt
17 | Full
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | true
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/Account.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Account : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::Account";
12 | }
13 | }
14 |
15 | ///
16 | /// CloudWatchRoleArn
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html#cfn-apigateway-account-cloudwatchrolearn
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CloudWatchRoleArn
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/ClientCertificate.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ClientCertificate : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::ClientCertificate";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Tags
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-tags
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// ItemType: Tag
35 | ///
36 | public List Tags
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/DocumentationVersion.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class DocumentationVersion : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::DocumentationVersion";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// DocumentationVersion
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-documentationversion
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic DocumentationVersion_
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// RestApiId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html#cfn-apigateway-documentationversion-restapiid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic RestApiId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/Resource.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Resource : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::Resource";
12 | }
13 | }
14 |
15 | ///
16 | /// ParentId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-parentid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ParentId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// PathPart
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-pathpart
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic PathPart
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// RestApiId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-restapiid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic RestApiId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/UsagePlanKey.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class UsagePlanKey : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::UsagePlanKey";
12 | }
13 | }
14 |
15 | ///
16 | /// KeyId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keyid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic KeyId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// KeyType
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-keytype
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic KeyType
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// UsagePlanId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html#cfn-apigateway-usageplankey-usageplanid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic UsagePlanId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGateway/VpcLink.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGateway
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VpcLink : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGateway::VpcLink";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TargetArns
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-targetarns
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic TargetArns
37 | {
38 | get;
39 | set;
40 | }
41 |
42 | ///
43 | /// Name
44 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html#cfn-apigateway-vpclink-name
45 | /// Required: True
46 | /// UpdateType: Mutable
47 | /// PrimitiveType: String
48 | ///
49 | public dynamic Name
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/ApiGatewayV2/Deployment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ApiGatewayV2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Deployment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ApiGatewayV2::Deployment";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// StageName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-stagename
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic StageName
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ApiId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html#cfn-apigatewayv2-deployment-apiid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ApiId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/AppStream/StackFleetAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.AppStream
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class StackFleetAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::AppStream::StackFleetAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// FleetName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-fleetname
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic FleetName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// StackName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html#cfn-appstream-stackfleetassociation-stackname
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic StackName
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/AppSync/ApiKey.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.AppSync
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ApiKey : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string ApiKey = "ApiKey" ;
10 | public static string Arn = "Arn" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::AppSync::ApiKey";
18 | }
19 | }
20 |
21 | ///
22 | /// Description
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description
24 | /// Required: False
25 | /// UpdateType: Mutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic Description
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// Expires
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires
37 | /// Required: False
38 | /// UpdateType: Mutable
39 | /// PrimitiveType: Double
40 | ///
41 | public dynamic Expires
42 | {
43 | get;
44 | set;
45 | }
46 |
47 | ///
48 | /// ApiId
49 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apiid
50 | /// Required: True
51 | /// UpdateType: Immutable
52 | /// PrimitiveType: String
53 | ///
54 | public dynamic ApiId
55 | {
56 | get;
57 | set;
58 | }
59 | }
60 | }
--------------------------------------------------------------------------------
/src/Humidifier/AppSync/GraphQLSchema.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.AppSync
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class GraphQLSchema : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::AppSync::GraphQLSchema";
12 | }
13 | }
14 |
15 | ///
16 | /// Definition
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definition
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Definition
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// DefinitionS3Location
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-definitions3location
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic DefinitionS3Location
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ApiId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html#cfn-appsync-graphqlschema-apiid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ApiId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Cassandra/Keyspace.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Cassandra
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Keyspace : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Cassandra::Keyspace";
12 | }
13 | }
14 |
15 | ///
16 | /// KeyspaceName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html#cfn-cassandra-keyspace-keyspacename
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic KeyspaceName
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudFormation/CustomResource.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudFormation
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class CustomResource : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::CloudFormation::CustomResource";
12 | }
13 | }
14 |
15 | ///
16 | /// ServiceToken
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ServiceToken
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudFormation/WaitCondition.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudFormation
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class WaitCondition : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Data = "Data" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::CloudFormation::WaitCondition";
17 | }
18 | }
19 |
20 | ///
21 | /// Count
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count
23 | /// Required: False
24 | /// UpdateType: Mutable
25 | /// PrimitiveType: Integer
26 | ///
27 | public dynamic Count
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Handle
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle
36 | /// Required: False
37 | /// UpdateType: Mutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Handle
41 | {
42 | get;
43 | set;
44 | }
45 |
46 | ///
47 | /// Timeout
48 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout
49 | /// Required: False
50 | /// UpdateType: Mutable
51 | /// PrimitiveType: String
52 | ///
53 | public dynamic Timeout
54 | {
55 | get;
56 | set;
57 | }
58 | }
59 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudFormation/WaitConditionHandle.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudFormation
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class WaitConditionHandle : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::CloudFormation::WaitConditionHandle";
12 | }
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudFront/CloudFrontOriginAccessIdentity.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudFront
2 | {
3 | using System.Collections.Generic;
4 | using CloudFrontOriginAccessIdentityTypes;
5 |
6 | public class CloudFrontOriginAccessIdentity : Humidifier.Resource
7 | {
8 | public static class Attributes
9 | {
10 | public static string S3CanonicalUserId = "S3CanonicalUserId" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::CloudFront::CloudFrontOriginAccessIdentity";
18 | }
19 | }
20 |
21 | ///
22 | /// CloudFrontOriginAccessIdentityConfig
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig
24 | /// Required: True
25 | /// UpdateType: Mutable
26 | /// Type: CloudFrontOriginAccessIdentityConfig
27 | ///
28 | public CloudFrontOriginAccessIdentityConfig CloudFrontOriginAccessIdentityConfig
29 | {
30 | get;
31 | set;
32 | }
33 | }
34 |
35 | namespace CloudFrontOriginAccessIdentityTypes
36 | {
37 | public class CloudFrontOriginAccessIdentityConfig
38 | {
39 | ///
40 | /// Comment
41 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment
42 | /// Required: True
43 | /// UpdateType: Mutable
44 | /// PrimitiveType: String
45 | ///
46 | public dynamic Comment
47 | {
48 | get;
49 | set;
50 | }
51 | }
52 | }
53 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudWatch/Dashboard.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudWatch
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Dashboard : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::CloudWatch::Dashboard";
12 | }
13 | }
14 |
15 | ///
16 | /// DashboardName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardname
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic DashboardName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// DashboardBody
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html#cfn-cloudwatch-dashboard-dashboardbody
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic DashboardBody
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/CloudWatch/InsightRule.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CloudWatch
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class InsightRule : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | public static string RuleName = "RuleName" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::CloudWatch::InsightRule";
18 | }
19 | }
20 |
21 | ///
22 | /// RuleState
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulestate
24 | /// Required: True
25 | /// UpdateType: Mutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic RuleState
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// RuleBody
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulebody
37 | /// Required: True
38 | /// UpdateType: Mutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic RuleBody
42 | {
43 | get;
44 | set;
45 | }
46 |
47 | ///
48 | /// RuleName
49 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html#cfn-cloudwatch-insightrule-rulename
50 | /// Required: True
51 | /// UpdateType: Immutable
52 | /// PrimitiveType: String
53 | ///
54 | public dynamic RuleName
55 | {
56 | get;
57 | set;
58 | }
59 | }
60 | }
--------------------------------------------------------------------------------
/src/Humidifier/CodeDeploy/Application.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CodeDeploy
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Application : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::CodeDeploy::Application";
12 | }
13 | }
14 |
15 | ///
16 | /// ApplicationName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-applicationname
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ApplicationName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// ComputePlatform
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-computeplatform
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic ComputePlatform
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/CodeStarConnections/Connection.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.CodeStarConnections
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Connection : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string ConnectionArn = "ConnectionArn" ;
10 | public static string ConnectionStatus = "ConnectionStatus" ;
11 | public static string OwnerAccountId = "OwnerAccountId" ;
12 | }
13 |
14 | public override string AWSTypeName
15 | {
16 | get
17 | {
18 | return @"AWS::CodeStarConnections::Connection";
19 | }
20 | }
21 |
22 | ///
23 | /// ConnectionName
24 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-connectionname
25 | /// Required: True
26 | /// UpdateType: Immutable
27 | /// PrimitiveType: String
28 | ///
29 | public dynamic ConnectionName
30 | {
31 | get;
32 | set;
33 | }
34 |
35 | ///
36 | /// ProviderType
37 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html#cfn-codestarconnections-connection-providertype
38 | /// Required: True
39 | /// UpdateType: Immutable
40 | /// PrimitiveType: String
41 | ///
42 | public dynamic ProviderType
43 | {
44 | get;
45 | set;
46 | }
47 | }
48 | }
--------------------------------------------------------------------------------
/src/Humidifier/Cognito/UserPoolUICustomizationAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Cognito
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class UserPoolUICustomizationAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Cognito::UserPoolUICustomizationAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// CSS
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-css
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CSS
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// UserPoolId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-userpoolid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic UserPoolId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ClientId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html#cfn-cognito-userpooluicustomizationattachment-clientid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ClientId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Cognito/UserPoolUserToGroupAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Cognito
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class UserPoolUserToGroupAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Cognito::UserPoolUserToGroupAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// GroupName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-groupname
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic GroupName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// UserPoolId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-userpoolid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic UserPoolId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Username
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-username
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic Username
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Condition.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Humidifier
4 | {
5 | public class Condition
6 | {
7 | public dynamic Fn { get; }
8 |
9 | public Condition(dynamic fn)
10 | {
11 | if (fn == null) throw new ArgumentNullException(nameof(fn));
12 | Fn = fn;
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/src/Humidifier/Config/AggregationAuthorization.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Config
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class AggregationAuthorization : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Config::AggregationAuthorization";
12 | }
13 | }
14 |
15 | ///
16 | /// AuthorizedAccountId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedaccountid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AuthorizedAccountId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// AuthorizedAwsRegion
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-authorizedawsregion
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic AuthorizedAwsRegion
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Tags
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html#cfn-config-aggregationauthorization-tags
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// Type: List
47 | /// ItemType: Tag
48 | ///
49 | public List Tags
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/CreationPolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public class CreationPolicy
4 | {
5 | public AutoScalingCreationPolicy AutoScalingCreationPolicy { get; set; }
6 | public ResourceSignal ResourceSignal { get; set; }
7 | }
8 |
9 | public class AutoScalingCreationPolicy
10 | {
11 | ///
12 | /// PrimitiveType: Integer
13 | ///
14 | public dynamic MinSuccessfulInstancesPercent { get; set; }
15 | }
16 |
17 | public class ResourceSignal
18 | {
19 | ///
20 | /// PrimitiveType: Integer
21 | ///
22 | public dynamic Count { get; set; }
23 |
24 | ///
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic Timeout { get; set; }
28 | }
29 | }
--------------------------------------------------------------------------------
/src/Humidifier/DAX/ParameterGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.DAX
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ParameterGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::DAX::ParameterGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// ParameterNameValues
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parameternamevalues
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Json
21 | ///
22 | public dynamic ParameterNameValues
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Description
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-description
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Description
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ParameterGroupName
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html#cfn-dax-parametergroup-parametergroupname
44 | /// Required: False
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ParameterGroupName
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/DAX/SubnetGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.DAX
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SubnetGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::DAX::SubnetGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetGroupName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetgroupname
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SubnetGroupName
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// SubnetIds
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html#cfn-dax-subnetgroup-subnetids
44 | /// Required: True
45 | /// UpdateType: Mutable
46 | /// Type: List
47 | /// PrimitiveItemType: String
48 | ///
49 | public dynamic SubnetIds
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/DMS/Certificate.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.DMS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Certificate : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::DMS::Certificate";
12 | }
13 | }
14 |
15 | ///
16 | /// CertificateIdentifier
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificateidentifier
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CertificateIdentifier
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// CertificatePem
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatepem
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic CertificatePem
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// CertificateWallet
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html#cfn-dms-certificate-certificatewallet
44 | /// Required: False
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic CertificateWallet
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/DeletionPolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public enum DeletionPolicy
4 | {
5 | Retain,
6 | Snapshot
7 | }
8 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/ClientVpnTargetNetworkAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ClientVpnTargetNetworkAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::ClientVpnTargetNetworkAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// ClientVpnEndpointId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-clientvpnendpointid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ClientVpnEndpointId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html#cfn-ec2-clientvpntargetnetworkassociation-subnetid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SubnetId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/EgressOnlyInternetGateway.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class EgressOnlyInternetGateway : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::EgressOnlyInternetGateway";
12 | }
13 | }
14 |
15 | ///
16 | /// VpcId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html#cfn-ec2-egressonlyinternetgateway-vpcid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic VpcId
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/GatewayRouteTableAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class GatewayRouteTableAssociation : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string AssociationId = "AssociationId" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::EC2::GatewayRouteTableAssociation";
17 | }
18 | }
19 |
20 | ///
21 | /// RouteTableId
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html#cfn-ec2-gatewayroutetableassociation-routetableid
23 | /// Required: True
24 | /// UpdateType: Mutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic RouteTableId
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// GatewayId
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html#cfn-ec2-gatewayroutetableassociation-gatewayid
36 | /// Required: True
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic GatewayId
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/InternetGateway.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class InternetGateway : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::InternetGateway";
12 | }
13 | }
14 |
15 | ///
16 | /// Tags
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html#cfn-ec2-internetgateway-tags
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// ItemType: Tag
22 | ///
23 | public List Tags
24 | {
25 | get;
26 | set;
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/NatGateway.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class NatGateway : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::NatGateway";
12 | }
13 | }
14 |
15 | ///
16 | /// AllocationId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-allocationid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AllocationId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-subnetid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SubnetId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Tags
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-tags
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// Type: List
47 | /// ItemType: Tag
48 | ///
49 | public List Tags
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/NetworkAcl.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class NetworkAcl : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::NetworkAcl";
12 | }
13 | }
14 |
15 | ///
16 | /// Tags
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-tags
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// ItemType: Tag
22 | ///
23 | public List Tags
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// VpcId
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-vpcid
32 | /// Required: True
33 | /// UpdateType: Immutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic VpcId
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/NetworkInterfacePermission.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class NetworkInterfacePermission : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::NetworkInterfacePermission";
12 | }
13 | }
14 |
15 | ///
16 | /// AwsAccountId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-awsaccountid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AwsAccountId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// NetworkInterfaceId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-networkinterfaceid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic NetworkInterfaceId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Permission
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html#cfn-ec2-networkinterfacepermission-permission
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic Permission
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/PlacementGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PlacementGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::PlacementGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// Strategy
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html#cfn-ec2-placementgroup-strategy
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Strategy
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/RouteTable.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class RouteTable : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::RouteTable";
12 | }
13 | }
14 |
15 | ///
16 | /// Tags
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-tags
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// ItemType: Tag
22 | ///
23 | public List Tags
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// VpcId
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-vpcid
32 | /// Required: True
33 | /// UpdateType: Immutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic VpcId
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/SubnetCidrBlock.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SubnetCidrBlock : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::SubnetCidrBlock";
12 | }
13 | }
14 |
15 | ///
16 | /// Ipv6CidrBlock
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-ipv6cidrblock
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Ipv6CidrBlock
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-subnetid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SubnetId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/SubnetNetworkAclAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SubnetNetworkAclAssociation : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string AssociationId = "AssociationId" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::EC2::SubnetNetworkAclAssociation";
17 | }
18 | }
19 |
20 | ///
21 | /// NetworkAclId
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-networkaclid
23 | /// Required: True
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic NetworkAclId
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// SubnetId
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-associationid
36 | /// Required: True
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic SubnetId
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/SubnetRouteTableAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SubnetRouteTableAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::SubnetRouteTableAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// RouteTableId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-routetableid
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic RouteTableId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-subnetid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SubnetId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/TrafficMirrorFilter.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TrafficMirrorFilter : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::TrafficMirrorFilter";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-description
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// NetworkServices
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-networkservices
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic NetworkServices
37 | {
38 | get;
39 | set;
40 | }
41 |
42 | ///
43 | /// Tags
44 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html#cfn-ec2-trafficmirrorfilter-tags
45 | /// Required: False
46 | /// UpdateType: Mutable
47 | /// Type: List
48 | /// ItemType: Tag
49 | ///
50 | public List Tags
51 | {
52 | get;
53 | set;
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/TransitGatewayRouteTable.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TransitGatewayRouteTable : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::TransitGatewayRouteTable";
12 | }
13 | }
14 |
15 | ///
16 | /// TransitGatewayId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-transitgatewayid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic TransitGatewayId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Tags
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html#cfn-ec2-transitgatewayroutetable-tags
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// Type: List
34 | /// ItemType: Tag
35 | ///
36 | public List Tags
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/TransitGatewayRouteTableAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TransitGatewayRouteTableAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::TransitGatewayRouteTableAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// TransitGatewayRouteTableId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayroutetableid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic TransitGatewayRouteTableId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TransitGatewayAttachmentId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html#cfn-ec2-transitgatewayroutetableassociation-transitgatewayattachmentid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic TransitGatewayAttachmentId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/TransitGatewayRouteTablePropagation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TransitGatewayRouteTablePropagation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::TransitGatewayRouteTablePropagation";
12 | }
13 | }
14 |
15 | ///
16 | /// TransitGatewayRouteTableId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayroutetableid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic TransitGatewayRouteTableId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TransitGatewayAttachmentId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html#cfn-ec2-transitgatewayroutetablepropagation-transitgatewayattachmentid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic TransitGatewayAttachmentId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPCCidrBlock.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPCCidrBlock : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPCCidrBlock";
12 | }
13 | }
14 |
15 | ///
16 | /// AmazonProvidedIpv6CidrBlock
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-amazonprovidedipv6cidrblock
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: Boolean
21 | ///
22 | public dynamic AmazonProvidedIpv6CidrBlock
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// CidrBlock
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-cidrblock
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic CidrBlock
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// VpcId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-vpcid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic VpcId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPCDHCPOptionsAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPCDHCPOptionsAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPCDHCPOptionsAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// DhcpOptionsId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-dhcpoptionsid
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic DhcpOptionsId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// VpcId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-vpcid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic VpcId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPCEndpointService.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPCEndpointService : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPCEndpointService";
12 | }
13 | }
14 |
15 | ///
16 | /// NetworkLoadBalancerArns
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-networkloadbalancerarns
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// PrimitiveItemType: String
22 | ///
23 | public dynamic NetworkLoadBalancerArns
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// AcceptanceRequired
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-acceptancerequired
32 | /// Required: False
33 | /// UpdateType: Mutable
34 | /// PrimitiveType: Boolean
35 | ///
36 | public dynamic AcceptanceRequired
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPCEndpointServicePermissions.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPCEndpointServicePermissions : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPCEndpointServicePermissions";
12 | }
13 | }
14 |
15 | ///
16 | /// AllowedPrincipals
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-allowedprincipals
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// PrimitiveItemType: String
22 | ///
23 | public dynamic AllowedPrincipals
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// ServiceId
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html#cfn-ec2-vpcendpointservicepermissions-serviceid
32 | /// Required: True
33 | /// UpdateType: Immutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic ServiceId
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPCGatewayAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPCGatewayAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPCGatewayAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// InternetGatewayId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-internetgatewayid
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic InternetGatewayId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// VpcId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpcid
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic VpcId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// VpnGatewayId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpngatewayid
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic VpnGatewayId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPNConnectionRoute.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPNConnectionRoute : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPNConnectionRoute";
12 | }
13 | }
14 |
15 | ///
16 | /// DestinationCidrBlock
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-cidrblock
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic DestinationCidrBlock
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// VpnConnectionId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-connectionid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic VpnConnectionId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPNGateway.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPNGateway : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPNGateway";
12 | }
13 | }
14 |
15 | ///
16 | /// AmazonSideAsn
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-amazonsideasn
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: Long
21 | ///
22 | public dynamic AmazonSideAsn
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Tags
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-tags
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// ItemType: Tag
35 | ///
36 | public List Tags
37 | {
38 | get;
39 | set;
40 | }
41 |
42 | ///
43 | /// Type
44 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-type
45 | /// Required: True
46 | /// UpdateType: Immutable
47 | /// PrimitiveType: String
48 | ///
49 | public dynamic Type
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VPNGatewayRoutePropagation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VPNGatewayRoutePropagation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VPNGatewayRoutePropagation";
12 | }
13 | }
14 |
15 | ///
16 | /// RouteTableIds
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-routetableids
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// PrimitiveItemType: String
22 | ///
23 | public dynamic RouteTableIds
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// VpnGatewayId
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-vpngatewayid
32 | /// Required: True
33 | /// UpdateType: Mutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic VpnGatewayId
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/EC2/VolumeAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EC2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VolumeAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EC2::VolumeAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// Device
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-device
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Device
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// InstanceId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-instanceid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic InstanceId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// VolumeId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-volumeid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic VolumeId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ECS/PrimaryTaskSet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ECS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PrimaryTaskSet : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ECS::PrimaryTaskSet";
12 | }
13 | }
14 |
15 | ///
16 | /// Cluster
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-cluster
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Cluster
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TaskSetId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-tasksetid
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic TaskSetId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Service
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html#cfn-ecs-primarytaskset-service
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic Service
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/EMR/SecurityConfiguration.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.EMR
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SecurityConfiguration : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::EMR::SecurityConfiguration";
12 | }
13 | }
14 |
15 | ///
16 | /// Name
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-name
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Name
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SecurityConfiguration
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-securityconfiguration
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: Json
34 | ///
35 | public dynamic SecurityConfiguration_
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/ElastiCache/ParameterGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ElastiCache
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ParameterGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ElastiCache::ParameterGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// CacheParameterGroupFamily
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-cacheparametergroupfamily
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CacheParameterGroupFamily
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Description
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-description
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Description
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Properties
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-properties
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// Type: Map
47 | /// PrimitiveItemType: String
48 | ///
49 | public Dictionary Properties
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/ElastiCache/SecurityGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ElastiCache
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SecurityGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ElastiCache::SecurityGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html#cfn-elasticache-securitygroup-description
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/ElastiCache/SecurityGroupIngress.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ElastiCache
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SecurityGroupIngress : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ElastiCache::SecurityGroupIngress";
12 | }
13 | }
14 |
15 | ///
16 | /// CacheSecurityGroupName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-cachesecuritygroupname
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CacheSecurityGroupName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// EC2SecurityGroupName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupname
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic EC2SecurityGroupName
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// EC2SecurityGroupOwnerId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupownerid
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic EC2SecurityGroupOwnerId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ElastiCache/SubnetGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ElastiCache
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SubnetGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ElastiCache::SubnetGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// CacheSubnetGroupName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-cachesubnetgroupname
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CacheSubnetGroupName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Description
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-description
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Description
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// SubnetIds
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-subnetids
44 | /// Required: True
45 | /// UpdateType: Mutable
46 | /// Type: List
47 | /// PrimitiveItemType: String
48 | ///
49 | public dynamic SubnetIds
50 | {
51 | get;
52 | set;
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/src/Humidifier/Events/EventBus.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Events
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class EventBus : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Policy = "Policy" ;
10 | public static string Arn = "Arn" ;
11 | public static string Name = "Name" ;
12 | }
13 |
14 | public override string AWSTypeName
15 | {
16 | get
17 | {
18 | return @"AWS::Events::EventBus";
19 | }
20 | }
21 |
22 | ///
23 | /// EventSourceName
24 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-eventsourcename
25 | /// Required: False
26 | /// UpdateType: Immutable
27 | /// PrimitiveType: String
28 | ///
29 | public dynamic EventSourceName
30 | {
31 | get;
32 | set;
33 | }
34 |
35 | ///
36 | /// Name
37 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html#cfn-events-eventbus-name
38 | /// Required: True
39 | /// UpdateType: Immutable
40 | /// PrimitiveType: String
41 | ///
42 | public dynamic Name
43 | {
44 | get;
45 | set;
46 | }
47 | }
48 | }
--------------------------------------------------------------------------------
/src/Humidifier/FMS/NotificationChannel.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.FMS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class NotificationChannel : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::FMS::NotificationChannel";
12 | }
13 | }
14 |
15 | ///
16 | /// SnsRoleName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html#cfn-fms-notificationchannel-snsrolename
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic SnsRoleName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SnsTopicArn
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html#cfn-fms-notificationchannel-snstopicarn
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic SnsTopicArn
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/GameLift/MatchmakingRuleSet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.GameLift
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class MatchmakingRuleSet : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | public static string Name = "Name" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::GameLift::MatchmakingRuleSet";
18 | }
19 | }
20 |
21 | ///
22 | /// RuleSetBody
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html#cfn-gamelift-matchmakingruleset-rulesetbody
24 | /// Required: True
25 | /// UpdateType: Immutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic RuleSetBody
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// Name
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html#cfn-gamelift-matchmakingruleset-name
37 | /// Required: True
38 | /// UpdateType: Immutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic Name
42 | {
43 | get;
44 | set;
45 | }
46 | }
47 | }
--------------------------------------------------------------------------------
/src/Humidifier/GuardDuty/Detector.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.GuardDuty
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Detector : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::GuardDuty::Detector";
12 | }
13 | }
14 |
15 | ///
16 | /// FindingPublishingFrequency
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-findingpublishingfrequency
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic FindingPublishingFrequency
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Enable
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html#cfn-guardduty-detector-enable
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: Boolean
34 | ///
35 | public dynamic Enable
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/GuardDuty/Master.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.GuardDuty
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Master : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::GuardDuty::Master";
12 | }
13 | }
14 |
15 | ///
16 | /// DetectorId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-detectorid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic DetectorId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// MasterId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-masterid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic MasterId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// InvitationId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html#cfn-guardduty-master-invitationid
44 | /// Required: False
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic InvitationId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Humidifier.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Humidifier allows you to build AWS CloudFormation templates programmatically.
5 | Jake Scott
6 | Humidifier
7 | en-US
8 | 0.3.1
9 | Jake Scott
10 | net45;netstandard1.3;netstandard2.0
11 | Humidifier
12 | Humidifier
13 | aws;cloudformation;
14 | https://raw.githubusercontent.com/jakejscott/humidifier/master/img/humidifier.png
15 | https://github.com/jakejscott/humidifier
16 | https://github.com/jakejscott/humidifier/blob/master/license.txt
17 | Full
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 | true
26 |
27 |
28 |
--------------------------------------------------------------------------------
/src/Humidifier/IAM/AccessKey.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IAM
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class AccessKey : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string SecretAccessKey = "SecretAccessKey" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::IAM::AccessKey";
17 | }
18 | }
19 |
20 | ///
21 | /// Serial
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-serial
23 | /// Required: False
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: Integer
26 | ///
27 | public dynamic Serial
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Status
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-status
36 | /// Required: False
37 | /// UpdateType: Mutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Status
41 | {
42 | get;
43 | set;
44 | }
45 |
46 | ///
47 | /// UserName
48 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-username
49 | /// Required: True
50 | /// UpdateType: Immutable
51 | /// PrimitiveType: String
52 | ///
53 | public dynamic UserName
54 | {
55 | get;
56 | set;
57 | }
58 | }
59 | }
--------------------------------------------------------------------------------
/src/Humidifier/IAM/InstanceProfile.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IAM
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class InstanceProfile : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::IAM::InstanceProfile";
17 | }
18 | }
19 |
20 | ///
21 | /// InstanceProfileName
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-instanceprofilename
23 | /// Required: False
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic InstanceProfileName
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Path
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-path
36 | /// Required: False
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Path
41 | {
42 | get;
43 | set;
44 | }
45 |
46 | ///
47 | /// Roles
48 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-roles
49 | /// Required: True
50 | /// UpdateType: Mutable
51 | /// Type: List
52 | /// PrimitiveItemType: String
53 | ///
54 | public dynamic Roles
55 | {
56 | get;
57 | set;
58 | }
59 | }
60 | }
--------------------------------------------------------------------------------
/src/Humidifier/IAM/ServiceLinkedRole.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IAM
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ServiceLinkedRole : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::IAM::ServiceLinkedRole";
12 | }
13 | }
14 |
15 | ///
16 | /// CustomSuffix
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-customsuffix
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CustomSuffix
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Description
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-description
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Description
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// AWSServiceName
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html#cfn-iam-servicelinkedrole-awsservicename
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic AWSServiceName
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/IAM/UserToGroupAddition.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IAM
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class UserToGroupAddition : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::IAM::UserToGroupAddition";
12 | }
13 | }
14 |
15 | ///
16 | /// GroupName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-groupname
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic GroupName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Users
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-users
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic Users
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/IStackSerializer.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public interface IStackSerializer
4 | {
5 | string Serialize(Stack stack);
6 | }
7 | }
--------------------------------------------------------------------------------
/src/Humidifier/Inspector/AssessmentTarget.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Inspector
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class AssessmentTarget : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::Inspector::AssessmentTarget";
17 | }
18 | }
19 |
20 | ///
21 | /// AssessmentTargetName
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-assessmenttargetname
23 | /// Required: False
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic AssessmentTargetName
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// ResourceGroupArn
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html#cfn-inspector-assessmenttarget-resourcegrouparn
36 | /// Required: False
37 | /// UpdateType: Mutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic ResourceGroupArn
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/Inspector/ResourceGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Inspector
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ResourceGroup : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::Inspector::ResourceGroup";
17 | }
18 | }
19 |
20 | ///
21 | /// ResourceGroupTags
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html#cfn-inspector-resourcegroup-resourcegrouptags
23 | /// Required: True
24 | /// UpdateType: Immutable
25 | /// Type: List
26 | /// ItemType: Tag
27 | ///
28 | public List ResourceGroupTags
29 | {
30 | get;
31 | set;
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT/Certificate.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Certificate : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::IoT::Certificate";
17 | }
18 | }
19 |
20 | ///
21 | /// CertificateSigningRequest
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest
23 | /// Required: True
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic CertificateSigningRequest
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Status
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status
36 | /// Required: True
37 | /// UpdateType: Mutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Status
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT/Policy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Policy : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::IoT::Policy";
17 | }
18 | }
19 |
20 | ///
21 | /// PolicyDocument
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policydocument
23 | /// Required: True
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: Json
26 | ///
27 | public dynamic PolicyDocument
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// PolicyName
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policyname
36 | /// Required: False
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic PolicyName
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT/PolicyPrincipalAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PolicyPrincipalAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::IoT::PolicyPrincipalAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// PolicyName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-policyname
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic PolicyName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Principal
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-principal
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Principal
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT/Thing.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT
2 | {
3 | using System.Collections.Generic;
4 | using ThingTypes;
5 |
6 | public class Thing : Humidifier.Resource
7 | {
8 | public override string AWSTypeName
9 | {
10 | get
11 | {
12 | return @"AWS::IoT::Thing";
13 | }
14 | }
15 |
16 | ///
17 | /// AttributePayload
18 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload
19 | /// Required: False
20 | /// UpdateType: Mutable
21 | /// Type: AttributePayload
22 | ///
23 | public AttributePayload AttributePayload
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// ThingName
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-thingname
32 | /// Required: False
33 | /// UpdateType: Immutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic ThingName
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 |
43 | namespace ThingTypes
44 | {
45 | public class AttributePayload
46 | {
47 | ///
48 | /// Attributes
49 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes
50 | /// Required: False
51 | /// UpdateType: Mutable
52 | /// Type: Map
53 | /// PrimitiveItemType: String
54 | ///
55 | public Dictionary Attributes_
56 | {
57 | get;
58 | set;
59 | }
60 | }
61 | }
62 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT/ThingPrincipalAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ThingPrincipalAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::IoT::ThingPrincipalAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// Principal
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-principal
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Principal
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// ThingName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-thingname
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic ThingName
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/IoT1Click/Device.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.IoT1Click
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Device : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string DeviceId = "DeviceId" ;
10 | public static string Enabled = "Enabled" ;
11 | public static string Arn = "Arn" ;
12 | }
13 |
14 | public override string AWSTypeName
15 | {
16 | get
17 | {
18 | return @"AWS::IoT1Click::Device";
19 | }
20 | }
21 |
22 | ///
23 | /// DeviceId
24 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-deviceid
25 | /// Required: True
26 | /// UpdateType: Immutable
27 | /// PrimitiveType: String
28 | ///
29 | public dynamic DeviceId
30 | {
31 | get;
32 | set;
33 | }
34 |
35 | ///
36 | /// Enabled
37 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot1click-device.html#cfn-iot1click-device-enabled
38 | /// Required: True
39 | /// UpdateType: Mutable
40 | /// PrimitiveType: Boolean
41 | ///
42 | public dynamic Enabled
43 | {
44 | get;
45 | set;
46 | }
47 | }
48 | }
--------------------------------------------------------------------------------
/src/Humidifier/KMS/Alias.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.KMS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Alias : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::KMS::Alias";
12 | }
13 | }
14 |
15 | ///
16 | /// AliasName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-aliasname
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AliasName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TargetKeyId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-targetkeyid
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic TargetKeyId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/Kinesis/StreamConsumer.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Kinesis
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class StreamConsumer : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string ConsumerCreationTimestamp = "ConsumerCreationTimestamp" ;
10 | public static string ConsumerName = "ConsumerName" ;
11 | public static string ConsumerARN = "ConsumerARN" ;
12 | public static string ConsumerStatus = "ConsumerStatus" ;
13 | public static string StreamARN = "StreamARN" ;
14 | }
15 |
16 | public override string AWSTypeName
17 | {
18 | get
19 | {
20 | return @"AWS::Kinesis::StreamConsumer";
21 | }
22 | }
23 |
24 | ///
25 | /// ConsumerName
26 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-consumername
27 | /// Required: True
28 | /// UpdateType: Immutable
29 | /// PrimitiveType: String
30 | ///
31 | public dynamic ConsumerName
32 | {
33 | get;
34 | set;
35 | }
36 |
37 | ///
38 | /// StreamARN
39 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html#cfn-kinesis-streamconsumer-streamarn
40 | /// Required: True
41 | /// UpdateType: Immutable
42 | /// PrimitiveType: String
43 | ///
44 | public dynamic StreamARN
45 | {
46 | get;
47 | set;
48 | }
49 | }
50 | }
--------------------------------------------------------------------------------
/src/Humidifier/LakeFormation/DataLakeSettings.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.LakeFormation
2 | {
3 | using System.Collections.Generic;
4 | using DataLakeSettingsTypes;
5 |
6 | public class DataLakeSettings : Humidifier.Resource
7 | {
8 | public override string AWSTypeName
9 | {
10 | get
11 | {
12 | return @"AWS::LakeFormation::DataLakeSettings";
13 | }
14 | }
15 |
16 | ///
17 | /// Admins
18 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html#cfn-lakeformation-datalakesettings-admins
19 | /// Required: False
20 | /// UpdateType: Mutable
21 | /// Type: Admins
22 | ///
23 | public Admins Admins
24 | {
25 | get;
26 | set;
27 | }
28 | }
29 |
30 | namespace DataLakeSettingsTypes
31 | {
32 | public class DataLakePrincipal
33 | {
34 | ///
35 | /// DataLakePrincipalIdentifier
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-datalakesettings-datalakeprincipal.html#cfn-lakeformation-datalakesettings-datalakeprincipal-datalakeprincipalidentifier
37 | /// Required: False
38 | /// UpdateType: Mutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic DataLakePrincipalIdentifier
42 | {
43 | get;
44 | set;
45 | }
46 | }
47 |
48 | public class Admins
49 | {
50 | }
51 | }
52 | }
--------------------------------------------------------------------------------
/src/Humidifier/LakeFormation/Resource.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.LakeFormation
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Resource : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::LakeFormation::Resource";
12 | }
13 | }
14 |
15 | ///
16 | /// ResourceArn
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-resourcearn
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ResourceArn
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// UseServiceLinkedRole
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-useservicelinkedrole
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: Boolean
34 | ///
35 | public dynamic UseServiceLinkedRole
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// RoleArn
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html#cfn-lakeformation-resource-rolearn
44 | /// Required: False
45 | /// UpdateType: Mutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic RoleArn
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Logs/LogGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Logs
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class LogGroup : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::Logs::LogGroup";
17 | }
18 | }
19 |
20 | ///
21 | /// LogGroupName
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-loggroupname
23 | /// Required: False
24 | /// UpdateType: Immutable
25 | /// PrimitiveType: String
26 | ///
27 | public dynamic LogGroupName
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// RetentionInDays
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-retentionindays
36 | /// Required: False
37 | /// UpdateType: Mutable
38 | /// PrimitiveType: Integer
39 | ///
40 | public dynamic RetentionInDays
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/Logs/LogStream.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Logs
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class LogStream : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Logs::LogStream";
12 | }
13 | }
14 |
15 | ///
16 | /// LogGroupName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic LogGroupName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// LogStreamName
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic LogStreamName
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/Mapping.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Humidifier
4 | {
5 | public class Mapping : Dictionary>
6 | {
7 | }
8 | }
--------------------------------------------------------------------------------
/src/Humidifier/OpsWorks/ElasticLoadBalancerAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.OpsWorks
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ElasticLoadBalancerAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::OpsWorks::ElasticLoadBalancerAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// ElasticLoadBalancerName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-elbname
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ElasticLoadBalancerName
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// LayerId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-layerid
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic LayerId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/Output.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public class Output
4 | {
5 | public dynamic Value { get; set; }
6 | public dynamic Export { get; set; }
7 | public dynamic Description { get; set; }
8 | public dynamic Condition { get; set; }
9 | }
10 | }
--------------------------------------------------------------------------------
/src/Humidifier/Pinpoint/App.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Pinpoint
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class App : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::Pinpoint::App";
17 | }
18 | }
19 |
20 | ///
21 | /// Tags
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-tags
23 | /// Required: False
24 | /// UpdateType: Mutable
25 | /// PrimitiveType: Json
26 | ///
27 | public dynamic Tags
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Name
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html#cfn-pinpoint-app-name
36 | /// Required: True
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Name
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/Pinpoint/EventStream.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Pinpoint
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class EventStream : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Pinpoint::EventStream";
12 | }
13 | }
14 |
15 | ///
16 | /// ApplicationId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-applicationid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ApplicationId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// DestinationStreamArn
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-destinationstreamarn
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic DestinationStreamArn
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// RoleArn
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html#cfn-pinpoint-eventstream-rolearn
44 | /// Required: True
45 | /// UpdateType: Mutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic RoleArn
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Pinpoint/GCMChannel.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Pinpoint
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class GCMChannel : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Pinpoint::GCMChannel";
12 | }
13 | }
14 |
15 | ///
16 | /// ApiKey
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-apikey
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ApiKey
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Enabled
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-enabled
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: Boolean
34 | ///
35 | public dynamic Enabled
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ApplicationId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html#cfn-pinpoint-gcmchannel-applicationid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ApplicationId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/Pinpoint/VoiceChannel.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Pinpoint
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class VoiceChannel : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Pinpoint::VoiceChannel";
12 | }
13 | }
14 |
15 | ///
16 | /// Enabled
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-enabled
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Boolean
21 | ///
22 | public dynamic Enabled
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// ApplicationId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html#cfn-pinpoint-voicechannel-applicationid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic ApplicationId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/PolicyDocument.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Humidifier
4 | {
5 | public class PolicyDocument
6 | {
7 | public string Version { get; set; }
8 | public string Id { get; set; }
9 | public List Statement { get; set; }
10 | }
11 |
12 | public class Statement
13 | {
14 | public string Sid { get; set; }
15 | public string Effect { get; set; }
16 | public dynamic Principal { get; set; }
17 | public dynamic NotPrincipal { get; set; }
18 | public dynamic Action { get; set; }
19 | public dynamic NotAction { get; set; }
20 | public dynamic Resource { get; set; }
21 | public dynamic NotResource { get; set; }
22 |
23 | public Dictionary> Condition { get; set; }
24 | }
25 | }
--------------------------------------------------------------------------------
/src/Humidifier/Redshift/ClusterSecurityGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Redshift
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ClusterSecurityGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Redshift::ClusterSecurityGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-description
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Tags
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags
31 | /// Required: False
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// ItemType: Tag
35 | ///
36 | public List Tags
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/Redshift/ClusterSubnetGroup.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.Redshift
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ClusterSubnetGroup : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::Redshift::ClusterSubnetGroup";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// SubnetIds
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-subnetids
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic SubnetIds
37 | {
38 | get;
39 | set;
40 | }
41 |
42 | ///
43 | /// Tags
44 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags
45 | /// Required: False
46 | /// UpdateType: Mutable
47 | /// Type: List
48 | /// ItemType: Tag
49 | ///
50 | public List Tags
51 | {
52 | get;
53 | set;
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/src/Humidifier/Resource.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public abstract class Resource
4 | {
5 | public abstract string AWSTypeName { get; }
6 | }
7 | }
--------------------------------------------------------------------------------
/src/Humidifier/RoboMaker/Fleet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.RoboMaker
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Fleet : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Arn = "Arn" ;
10 | }
11 |
12 | public override string AWSTypeName
13 | {
14 | get
15 | {
16 | return @"AWS::RoboMaker::Fleet";
17 | }
18 | }
19 |
20 | ///
21 | /// Tags
22 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-tags
23 | /// Required: False
24 | /// UpdateType: Mutable
25 | /// PrimitiveType: Json
26 | ///
27 | public dynamic Tags
28 | {
29 | get;
30 | set;
31 | }
32 |
33 | ///
34 | /// Name
35 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html#cfn-robomaker-fleet-name
36 | /// Required: False
37 | /// UpdateType: Immutable
38 | /// PrimitiveType: String
39 | ///
40 | public dynamic Name
41 | {
42 | get;
43 | set;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/src/Humidifier/RoboMaker/RobotApplicationVersion.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.RoboMaker
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class RobotApplicationVersion : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::RoboMaker::RobotApplicationVersion";
12 | }
13 | }
14 |
15 | ///
16 | /// CurrentRevisionId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-currentrevisionid
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CurrentRevisionId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Application
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html#cfn-robomaker-robotapplicationversion-application
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Application
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/RoboMaker/SimulationApplicationVersion.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.RoboMaker
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SimulationApplicationVersion : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::RoboMaker::SimulationApplicationVersion";
12 | }
13 | }
14 |
15 | ///
16 | /// CurrentRevisionId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-currentrevisionid
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic CurrentRevisionId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Application
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html#cfn-robomaker-simulationapplicationversion-application
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Application
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/S3/BucketPolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.S3
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class BucketPolicy : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::S3::BucketPolicy";
12 | }
13 | }
14 |
15 | ///
16 | /// Bucket
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-bucket
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Bucket
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// PolicyDocument
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-policydocument
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: Json
34 | ///
35 | public dynamic PolicyDocument
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/SDB/Domain.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SDB
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Domain : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SDB::Domain";
12 | }
13 | }
14 |
15 | ///
16 | /// Description
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html#cfn-sdb-domain-description
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Description
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/SES/ConfigurationSet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SES
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ConfigurationSet : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SES::ConfigurationSet";
12 | }
13 | }
14 |
15 | ///
16 | /// Name
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html#cfn-ses-configurationset-name
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic Name
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/SES/ReceiptRuleSet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SES
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ReceiptRuleSet : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SES::ReceiptRuleSet";
12 | }
13 | }
14 |
15 | ///
16 | /// RuleSetName
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html#cfn-ses-receiptruleset-rulesetname
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic RuleSetName
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/SNS/TopicPolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SNS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TopicPolicy : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SNS::TopicPolicy";
12 | }
13 | }
14 |
15 | ///
16 | /// PolicyDocument
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-policydocument
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Json
21 | ///
22 | public dynamic PolicyDocument
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Topics
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-topics
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic Topics
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/SQS/QueuePolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SQS
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class QueuePolicy : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SQS::QueuePolicy";
12 | }
13 | }
14 |
15 | ///
16 | /// PolicyDocument
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-policydoc
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Json
21 | ///
22 | public dynamic PolicyDocument
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Queues
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-queues
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// Type: List
34 | /// PrimitiveItemType: String
35 | ///
36 | public dynamic Queues
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/SecretsManager/ResourcePolicy.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SecretsManager
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class ResourcePolicy : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SecretsManager::ResourcePolicy";
12 | }
13 | }
14 |
15 | ///
16 | /// SecretId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-secretid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic SecretId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// ResourcePolicy
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html#cfn-secretsmanager-resourcepolicy-resourcepolicy
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: Json
34 | ///
35 | public dynamic ResourcePolicy_
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/SecretsManager/SecretTargetAttachment.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SecretsManager
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class SecretTargetAttachment : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SecretsManager::SecretTargetAttachment";
12 | }
13 | }
14 |
15 | ///
16 | /// SecretId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-secretid
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic SecretId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// TargetType
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targettype
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic TargetType
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// TargetId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html#cfn-secretsmanager-secrettargetattachment-targetid
44 | /// Required: True
45 | /// UpdateType: Mutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic TargetId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/SecurityHub/Hub.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.SecurityHub
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Hub : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::SecurityHub::Hub";
12 | }
13 | }
14 |
15 | ///
16 | /// Tags
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html#cfn-securityhub-hub-tags
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Json
21 | ///
22 | public dynamic Tags
23 | {
24 | get;
25 | set;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceCatalog/AcceptedPortfolioShare.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceCatalog
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class AcceptedPortfolioShare : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ServiceCatalog::AcceptedPortfolioShare";
12 | }
13 | }
14 |
15 | ///
16 | /// AcceptLanguage
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-acceptlanguage
18 | /// Required: False
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AcceptLanguage
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// PortfolioId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html#cfn-servicecatalog-acceptedportfolioshare-portfolioid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic PortfolioId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceCatalog/PortfolioShare.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceCatalog
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PortfolioShare : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ServiceCatalog::PortfolioShare";
12 | }
13 | }
14 |
15 | ///
16 | /// AccountId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-accountid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic AccountId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// AcceptLanguage
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-acceptlanguage
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic AcceptLanguage
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// PortfolioId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html#cfn-servicecatalog-portfolioshare-portfolioid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic PortfolioId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceCatalog/TagOption.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceCatalog
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TagOption : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ServiceCatalog::TagOption";
12 | }
13 | }
14 |
15 | ///
16 | /// Active
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-active
18 | /// Required: False
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Boolean
21 | ///
22 | public dynamic Active
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// Value
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-value
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic Value
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// Key
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html#cfn-servicecatalog-tagoption-key
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic Key
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceCatalog/TagOptionAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceCatalog
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class TagOptionAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ServiceCatalog::TagOptionAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// TagOptionId
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-tagoptionid
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic TagOptionId
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// ResourceId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html#cfn-servicecatalog-tagoptionassociation-resourceid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic ResourceId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceDiscovery/HttpNamespace.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceDiscovery
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class HttpNamespace : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Id = "Id" ;
10 | public static string Arn = "Arn" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::ServiceDiscovery::HttpNamespace";
18 | }
19 | }
20 |
21 | ///
22 | /// Description
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-description
24 | /// Required: False
25 | /// UpdateType: Immutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic Description
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// Name
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html#cfn-servicediscovery-httpnamespace-name
37 | /// Required: True
38 | /// UpdateType: Immutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic Name
42 | {
43 | get;
44 | set;
45 | }
46 | }
47 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceDiscovery/Instance.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceDiscovery
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class Instance : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::ServiceDiscovery::Instance";
12 | }
13 | }
14 |
15 | ///
16 | /// InstanceAttributes
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceattributes
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: Json
21 | ///
22 | public dynamic InstanceAttributes
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// InstanceId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-instanceid
31 | /// Required: False
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic InstanceId
36 | {
37 | get;
38 | set;
39 | }
40 |
41 | ///
42 | /// ServiceId
43 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html#cfn-servicediscovery-instance-serviceid
44 | /// Required: True
45 | /// UpdateType: Immutable
46 | /// PrimitiveType: String
47 | ///
48 | public dynamic ServiceId
49 | {
50 | get;
51 | set;
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceDiscovery/PrivateDnsNamespace.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceDiscovery
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PrivateDnsNamespace : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Id = "Id" ;
10 | public static string Arn = "Arn" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::ServiceDiscovery::PrivateDnsNamespace";
18 | }
19 | }
20 |
21 | ///
22 | /// Description
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-description
24 | /// Required: False
25 | /// UpdateType: Immutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic Description
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// Vpc
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-vpc
37 | /// Required: True
38 | /// UpdateType: Immutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic Vpc
42 | {
43 | get;
44 | set;
45 | }
46 |
47 | ///
48 | /// Name
49 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html#cfn-servicediscovery-privatednsnamespace-name
50 | /// Required: True
51 | /// UpdateType: Immutable
52 | /// PrimitiveType: String
53 | ///
54 | public dynamic Name
55 | {
56 | get;
57 | set;
58 | }
59 | }
60 | }
--------------------------------------------------------------------------------
/src/Humidifier/ServiceDiscovery/PublicDnsNamespace.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.ServiceDiscovery
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class PublicDnsNamespace : Humidifier.Resource
6 | {
7 | public static class Attributes
8 | {
9 | public static string Id = "Id" ;
10 | public static string Arn = "Arn" ;
11 | }
12 |
13 | public override string AWSTypeName
14 | {
15 | get
16 | {
17 | return @"AWS::ServiceDiscovery::PublicDnsNamespace";
18 | }
19 | }
20 |
21 | ///
22 | /// Description
23 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-description
24 | /// Required: False
25 | /// UpdateType: Immutable
26 | /// PrimitiveType: String
27 | ///
28 | public dynamic Description
29 | {
30 | get;
31 | set;
32 | }
33 |
34 | ///
35 | /// Name
36 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html#cfn-servicediscovery-publicdnsnamespace-name
37 | /// Required: True
38 | /// UpdateType: Immutable
39 | /// PrimitiveType: String
40 | ///
41 | public dynamic Name
42 | {
43 | get;
44 | set;
45 | }
46 | }
47 | }
--------------------------------------------------------------------------------
/src/Humidifier/Tag.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier
2 | {
3 | public class Tag
4 | {
5 | public string Key { get; set; }
6 | public dynamic Value { get; set; }
7 | }
8 | }
--------------------------------------------------------------------------------
/src/Humidifier/WAFRegional/RegexPatternSet.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.WAFRegional
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class RegexPatternSet : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::WAFRegional::RegexPatternSet";
12 | }
13 | }
14 |
15 | ///
16 | /// RegexPatternStrings
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-regexpatternstrings
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// Type: List
21 | /// PrimitiveItemType: String
22 | ///
23 | public dynamic RegexPatternStrings
24 | {
25 | get;
26 | set;
27 | }
28 |
29 | ///
30 | /// Name
31 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html#cfn-wafregional-regexpatternset-name
32 | /// Required: True
33 | /// UpdateType: Immutable
34 | /// PrimitiveType: String
35 | ///
36 | public dynamic Name
37 | {
38 | get;
39 | set;
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/src/Humidifier/WAFRegional/WebACLAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.WAFRegional
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class WebACLAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::WAFRegional::WebACLAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// ResourceArn
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-resourcearn
18 | /// Required: True
19 | /// UpdateType: Immutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ResourceArn
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// WebACLId
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-webaclid
31 | /// Required: True
32 | /// UpdateType: Immutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic WebACLId
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Humidifier/WAFv2/WebACLAssociation.cs:
--------------------------------------------------------------------------------
1 | namespace Humidifier.WAFv2
2 | {
3 | using System.Collections.Generic;
4 |
5 | public class WebACLAssociation : Humidifier.Resource
6 | {
7 | public override string AWSTypeName
8 | {
9 | get
10 | {
11 | return @"AWS::WAFv2::WebACLAssociation";
12 | }
13 | }
14 |
15 | ///
16 | /// ResourceArn
17 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html#cfn-wafv2-webaclassociation-resourcearn
18 | /// Required: True
19 | /// UpdateType: Mutable
20 | /// PrimitiveType: String
21 | ///
22 | public dynamic ResourceArn
23 | {
24 | get;
25 | set;
26 | }
27 |
28 | ///
29 | /// WebACLArn
30 | /// http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html#cfn-wafv2-webaclassociation-webaclarn
31 | /// Required: True
32 | /// UpdateType: Mutable
33 | /// PrimitiveType: String
34 | ///
35 | public dynamic WebACLArn
36 | {
37 | get;
38 | set;
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/src/Nuget.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/global.json:
--------------------------------------------------------------------------------
1 | { "sdk": { "version": "2.1.201" } }
--------------------------------------------------------------------------------
/templates/.gitignore:
--------------------------------------------------------------------------------
1 | *.nupkg
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/.$env$.env:
--------------------------------------------------------------------------------
1 | ENV = $env$
2 | REGION = $region$
3 | STACK = $stack$
4 | PROFILE = $profile$
5 | BUILD_CONFIG = $build_config$
6 | TEAM = $team$
7 | EMAIL = $email$
8 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/.template.config/template.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json.schemastore.org/template",
3 | "author": "Humidifier",
4 | "classifications": [
5 | "AWS",
6 | "Lambda",
7 | "Serverless"
8 | ],
9 | "name": "Humidifier Solution Template",
10 | "identity": "Humidifier.Solution.Template.CSharp",
11 | "groupIdentity": "Humidifier.Solution.Template",
12 | "shortName": "humidifier",
13 | "tags": {
14 | "language": "C#",
15 | "type": "project"
16 | },
17 | "sourceName": "ProjectBaseName",
18 | "preferNameDirectory": true,
19 | "symbols": {
20 | "env": {
21 | "type": "parameter",
22 | "datatype": "text",
23 | "replaces": "$env$",
24 | "defaultValue": "test",
25 | "fileRename": "$env$"
26 | },
27 | "region": {
28 | "type": "parameter",
29 | "datatype": "text",
30 | "replaces": "$region$",
31 | "defaultValue": "us-west-2"
32 | },
33 | "stack": {
34 | "type": "parameter",
35 | "datatype": "text",
36 | "replaces": "$stack$",
37 | "defaultValue": "stack"
38 | },
39 | "profile": {
40 | "type": "parameter",
41 | "datatype": "text",
42 | "replaces": "$profile$",
43 | "defaultValue": "default"
44 | },
45 | "build_config": {
46 | "type": "parameter",
47 | "datatype": "text",
48 | "replaces": "$build_config$",
49 | "defaultValue": "Debug"
50 | },
51 | "team": {
52 | "type": "parameter",
53 | "datatype": "text",
54 | "replaces": "$team$",
55 | "defaultValue": "team"
56 | },
57 | "email": {
58 | "type": "parameter",
59 | "datatype": "text",
60 | "replaces": "$email$",
61 | "defaultValue": "email@example.com"
62 | }
63 | }
64 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/Nuget.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.DeployTool/Config.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using Amazon.CloudFormation.Model;
3 |
4 | namespace ProjectBaseName.DeployTool
5 | {
6 | public class Config
7 | {
8 | public string Env { get; set; }
9 | public string Region { get; set; }
10 | public string Profile { get; set; }
11 | public string Stack { get; set; }
12 | public string Team { get; set; }
13 | public string Email { get; set; }
14 | public string BuildPath { get; set; }
15 | public string BuildConfig { get; set; }
16 | public List Tags { get; set; }
17 |
18 | }
19 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.DeployTool/Context.cs:
--------------------------------------------------------------------------------
1 | using Amazon;
2 | using Amazon.CloudFormation;
3 | using Amazon.Lambda;
4 | using Amazon.Runtime;
5 | using Amazon.S3;
6 | using Amazon.SimpleSystemsManagement;
7 | using Humidifier.Json;
8 |
9 | namespace ProjectBaseName.DeployTool
10 | {
11 | public class Context
12 | {
13 | public Config Config { get; set; }
14 | public JsonStackSerializer JsonStackSerializer { get; set; }
15 | public RegionEndpoint Region { get; set; }
16 | public AWSCredentials AwsCredentials { get; set; }
17 | public IAmazonCloudFormation Cloudformation { get; set; }
18 | public IAmazonS3 S3 { get; set; }
19 | public IAmazonSimpleSystemsManagement SSM { get; set; }
20 | public IAmazonLambda Lambda { get; set; }
21 | }
22 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.DeployTool/ProjectBaseName.DeployTool.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | netcoreapp2.0
6 |
7 |
8 |
9 | latest
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.DeployTool/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "deploy-base-$env$": {
4 | "commandName": "Project",
5 | "commandLineArgs": "deploy-base --env=$env$"
6 | },
7 | "deploy-simple-$env$": {
8 | "commandName": "Project",
9 | "commandLineArgs": "deploy-simple --env=$env$"
10 | },
11 | "invoke-simple-$env$": {
12 | "commandName": "Project",
13 | "commandLineArgs": "invoke-simple --env=$env$"
14 | },
15 | "destroy-base-$env$": {
16 | "commandName": "Project",
17 | "commandLineArgs": "destroy-base --env=$env$"
18 | },
19 | "destroy-simple-$env$": {
20 | "commandName": "Project",
21 | "commandLineArgs": "destroy-simple --env=$env$"
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.DeployTool/Util/LambdaInvoker.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using System.Text;
4 | using System.Threading.Tasks;
5 | using Amazon.Lambda;
6 | using Amazon.Lambda.Model;
7 | using Newtonsoft.Json;
8 | using Serilog;
9 |
10 | namespace ProjectBaseName.DeployTool.Util
11 | {
12 | public static class LambdaInvoker
13 | {
14 | public static async Task Invoke(ILogger log, Context context, TArgs args, string functionName)
15 | {
16 | var jsonSettings = new JsonSerializerSettings
17 | {
18 | TypeNameHandling = TypeNameHandling.None,
19 | Formatting = Formatting.None
20 | };
21 |
22 | var payload = JsonConvert.SerializeObject(args, jsonSettings);
23 |
24 | var request = new InvokeRequest
25 | {
26 | FunctionName = functionName,
27 | Payload = payload,
28 | LogType = LogType.Tail,
29 | InvocationType = InvocationType.RequestResponse
30 | };
31 |
32 | InvokeResponse response = await context.Lambda.InvokeAsync(request).ConfigureAwait(false);
33 |
34 | var reader = new StreamReader(response.Payload);
35 | var json = reader.ReadToEnd();
36 |
37 | var bytes = Convert.FromBase64String(response.LogResult);
38 | var logs = Encoding.UTF8.GetString(bytes);
39 |
40 | log.Information("Logs:\n" + logs);
41 |
42 | if (!string.IsNullOrWhiteSpace(response.FunctionError))
43 | {
44 | log.Error("FunctionError:\n{error}", json);
45 | return default;
46 | }
47 | else
48 | {
49 | TResult result = JsonConvert.DeserializeObject(json);
50 | return result;
51 | }
52 | }
53 | }
54 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Lambda.Common/ProjectBaseName.Lambda.Common.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Lambda.Common/SerilogLambdaSink.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using Amazon.Lambda.Core;
4 | using Serilog;
5 | using Serilog.Configuration;
6 | using Serilog.Core;
7 | using Serilog.Events;
8 | using Serilog.Formatting;
9 |
10 | namespace ProjectBaseName.Lambda.Common
11 | {
12 | public class SerilogLambdaSink : ILogEventSink
13 | {
14 | readonly ITextFormatter textFormatter;
15 |
16 | public SerilogLambdaSink(ITextFormatter textFormatter)
17 | {
18 | this.textFormatter = textFormatter ?? throw new ArgumentNullException(nameof(textFormatter));
19 | }
20 |
21 | public void Emit(LogEvent logEvent)
22 | {
23 | if (logEvent == null) throw new ArgumentNullException(nameof(logEvent));
24 | using (var writer = new StringWriter())
25 | {
26 | textFormatter.Format(logEvent, writer);
27 | LambdaLogger.Log(writer.ToString());
28 | }
29 | }
30 | }
31 |
32 | public static class SerilogLambdaSinkConfigurationExtensions
33 | {
34 | public static LoggerConfiguration LambdaLogger(this LoggerSinkConfiguration config, ITextFormatter formatter, LogEventLevel restrictedToMinimumLevel = LevelAlias.Minimum, LoggingLevelSwitch levelSwitch = null)
35 | {
36 | if (config == null) throw new ArgumentNullException(nameof(config));
37 | if (formatter == null) throw new ArgumentNullException(nameof(formatter));
38 | return config.Sink(new SerilogLambdaSink(formatter), restrictedToMinimumLevel, levelSwitch);
39 | }
40 | }
41 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Lambda.Common/SimpleFunctionArgs.cs:
--------------------------------------------------------------------------------
1 | namespace ProjectBaseName.Lambda.Common
2 | {
3 | public class SimpleFunctionArgs
4 | {
5 | public string Name { get; set; }
6 | }
7 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Lambda.Common/SimpleFunctionResult.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace ProjectBaseName.Lambda.Common
4 | {
5 | public class SimpleFunctionResult
6 | {
7 | public string Message { get; set; }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Lambda.Simple/ProjectBaseName.Lambda.Simple.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Tests/ProjectBaseName.Tests.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.0
5 |
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/src/ProjectBaseName.Tests/SimpleLambdaTests.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Amazon.CloudWatch;
3 | using Amazon.Lambda.Core;
4 | using Amazon.Lambda.TestUtilities;
5 | using NSubstitute;
6 | using ProjectBaseName.Lambda.Common;
7 | using ProjectBaseName.Lambda.Simple;
8 | using Xunit;
9 |
10 | namespace ProjectBaseName.Tests
11 | {
12 | public class SimpleLambdaTests
13 | {
14 | [Fact]
15 | public async Task Test1()
16 | {
17 | ILambdaContext context = new TestLambdaContext();
18 | IAmazonCloudWatch cloudwatch = Substitute.For();
19 |
20 | var function = new Function(cloudwatch);
21 |
22 | SimpleFunctionArgs args = new SimpleFunctionArgs { Name = "ProjectBaseName" };
23 | SimpleFunctionResult result = await function.Handler(args, context);
24 |
25 | Assert.Equal("Hello, ProjectBaseName", result.Message);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/templates/Humidifier.Solution.Template/tasks.ps1:
--------------------------------------------------------------------------------
1 | param(
2 | [parameter(position = 0, mandatory = $true)]
3 | [validateSet('$env$')]
4 | [string] $env,
5 |
6 | [parameter(position = 1, mandatory = $true)]
7 | [validateSet(
8 | 'deploy-base',
9 | 'deploy-simple',
10 | 'invoke-simple',
11 | 'tests',
12 | 'secrets-encrypt',
13 | 'secrets-decrypt',
14 | 'secrets-upload',
15 | 'destroy-simple',
16 | 'destroy-base'
17 | )]
18 | [string] $command
19 | )
20 |
21 | if ($command -eq "tests") {
22 | dotnet test .\src\ProjectBaseName.Tests
23 | } else {
24 | $project = ".\src\ProjectBaseName.DeployTool\ProjectBaseName.DeployTool.csproj"
25 | $cmd = "dotnet run --project $project $command --env=$env$ --no-launch-profile"
26 | Write-Host "$cmd" -ForegroundColor GREEN
27 | Invoke-Expression $cmd
28 | }
--------------------------------------------------------------------------------
/templates/Humidifier.Templates.nuspec:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Humidifier.Templates
5 | 1.0.6
6 | Humidifier templates.
7 | Jake Scott
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/tools/nuget.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jakejscott/Humidifier/7efffcf70a992d0447c04a8bda7be80976d98020/tools/nuget.exe
--------------------------------------------------------------------------------