bellerophon v0.2.0
Bellerophon
Usage
Bellerophon will make AWS SDK calls to get information about the resources in your AWS environment. Once the resources are retrieved, you can add them to the CloudFormation template. You can view the template by going to File > Show Template. Once you are happy with the design of the template, you can choose File > Save Template.
Bellerophon will use region us-east-1 by default. If you want to use a different region, set your local configuration to use another region. The easiest way to configure this is to set the $AWS_REGION env variable.
Installation
- Make sure you have the awscli installed and configured. Bellerophon assumes that ~/.aws/config and ~/.aws/credentials exist and are configured correctly.
- Download Belleraphon from the https://github.com/arminhammer/bellerophon/releases page. Windows, Linux, and OSX are supported.
- Unzip and run.
Supported Resources
One of the goals for Bellerophon is to support all AWS resources that can be defined in CloudFormation. However, at this time only a subset of resources are supported.
This list will be updated as support for more resources is added. Fully supported resources will be marked in bold, partially supported resources will be marked in
italics, and unsupported resources will be marked in strikethroughs.
- AWS::AutoScaling::AutoScalingGroup
- AWS::AutoScaling::LaunchConfiguration
- AWS::AutoScaling::LifecycleHook
- AWS::AutoScaling::ScalingPolicy
AWS::AutoScaling::ScheduledAction
AWS::CloudFormation::Stack
AWS::CloudFront::Distribution
AWS::CloudTrail::Trail
AWS::CloudWatch::Alarm
AWS::CodeDeploy::ApplicationAWS::CodeDeploy::DeploymentConfigAWS::CodeDeploy::DeploymentGroupAWS::CodePipeline::CustomActionTypeAWS::CodePipeline::PipelineAWS::Config::ConfigRuleAWS::Config::ConfigurationRecorderAWS::Config::DeliveryChannelAWS::DataPipeline::PipelineAWS::DirectoryService::MicrosoftADAWS::DirectoryService::SimpleADAWS::DynamoDB::TableAWS::EC2::CustomerGateway
- AWS::EC2::DHCPOptions
- AWS::EC2::EIP
AWS::EC2::EIPAssociation- AWS::EC2::Instance
- AWS::EC2::InternetGateway
- AWS::EC2::NetworkAcl
AWS::EC2::NetworkAclEntry- AWS::EC2::NetworkInterface
AWS::EC2::NetworkInterfaceAttachment- AWS::EC2::PlacementGroup
AWS::EC2::Route- AWS::EC2::RouteTable
- AWS::EC2::SecurityGroup
AWS::EC2::SecurityGroupEgressAWS::EC2::SecurityGroupIngress- AWS::EC2::SpotFleet
- AWS::EC2::Subnet
AWS::EC2::SubnetNetworkAclAssociationAWS::EC2::SubnetRouteTableAssociation- AWS::EC2::Volume
AWS::EC2::VolumeAttachment- AWS::EC2::VPC
AWS::EC2::VPCDHCPOptionsAssociation- AWS::EC2::VPCEndpoint
AWS::EC2::VPCGatewayAttachment- AWS::EC2::VPCPeeringConnection
- AWS::EC2::VPNConnection
AWS::EC2::VPNConnectionRoute- AWS::EC2::VPNGateway
AWS::EC2::VPNGatewayRoutePropagationAWS::ECS::ClusterAWS::ECS::ServiceAWS::ECS::TaskDefinitionAWS::EFS::FileSystemAWS::EFS::MountTargetAWS::ElastiCache::CacheClusterAWS::ElastiCache::ParameterGroupAWS::ElastiCache::ReplicationGroupAWS::ElastiCache::SecurityGroupAWS::ElastiCache::SecurityGroupIngressAWS::ElastiCache::SubnetGroupAWS::ElasticBeanstalk::ApplicationAWS::ElasticBeanstalk::ApplicationVersionAWS::ElasticBeanstalk::ConfigurationTemplateAWS::ElasticBeanstalk::EnvironmentAWS::ElasticLoadBalancing::LoadBalancer
AWS::IAM::AccessKey
- AWS::IAM::Group
- AWS::IAM::InstanceProfile
- AWS::IAM::ManagedPolicy
- ~~AWS::IAM::Policy*
- AWS::IAM::Role
- AWS::IAM::User
AWS::IAM::UserToGroupAdditionAWS::Kinesis::StreamAWS::KMS::KeyAWS::Lambda::EventSourceMappingAWS::Lambda::FunctionAWS::Lambda::PermissionAWS::Logs::DestinationAWS::Logs::LogGroupAWS::Logs::LogStreamAWS::Logs::MetricFilterAWS::Logs::SubscriptionFilterAWS::OpsWorks::AppAWS::OpsWorks::ElasticLoadBalancerAttachmentAWS::OpsWorks::InstanceAWS::OpsWorks::LayerAWS::OpsWorks::StackAWS::RDS::DBClusterAWS::RDS::DBClusterParameterGroupAWS::RDS::DBInstanceAWS::RDS::DBParameterGroupAWS::RDS::DBSecurityGroupAWS::RDS::DBSecurityGroupIngressAWS::RDS::DBSubnetGroupAWS::RDS::EventSubscriptionAWS::RDS::OptionGroupAWS::Redshift::ClusterAWS::Redshift::ClusterParameterGroupAWS::Redshift::ClusterSecurityGroupAWS::Redshift::ClusterSecurityGroupIngressAWS::Redshift::ClusterSubnetGroupAWS::Route53::HealthCheck
- AWS::Route53::HostedZone
AWS::Route53::RecordSetAWS::Route53::RecordSetGroupAWS::S3::Bucket
AWS::S3::BucketPolicy
AWS::SDB::DomainAWS::SNS::Topic
AWS::SNS::TopicPolicyAWS::SQS::Queue
AWS::SQS::QueuePolicyAWS::SSM::DocumentAWS::WAF::ByteMatchSetAWS::WAF::IPSetAWS::WAF::RuleAWS::WAF::SqlInjectionMatchSetAWS::WAF::WebACLAWS::WorkSpaces::Workspace
Underlying tools
Bellerophon uses the following to work:
- Electron (to package the app as a desktop application): http://electron.atom.io/
- MithrilJS (for the UI): http://mithril.js.org/
8 years ago