Sha256: 6a14040733d6bd6a9d9d975887e0da1eba819a3f563944677b770548d5d9a8d4
Contents?: true
Size: 913 Bytes
Versions: 3
Compression:
Stored size: 913 Bytes
Contents
module AwsRds class SecurityGroup include AwsServices # Returns Aws::EC2::Types::SecurityGroup def find_or_create(name) resp = ec2.describe_security_groups( filters: [ {name: 'vpc-id', values: [AwsRds.config["vpc_id"]]}, {name: 'group-name', values: [name]}] ) sg = resp.security_groups.first return sg if sg puts "Creating security group #{name}" result = ec2.create_security_group( group_name: name, description: name, vpc_id: AwsRds.config["vpc_id"], ) # TODO: add waiter # ec2.create_tags( # resources: [result.group_id], # tags: [{ key: "Name", value: name }], # ) resp = ec2.describe_security_groups(group_ids: [result.group_id]) resp.security_groups.first end def self.find_or_create(name) new.find_or_create(name) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
aws-rds-0.3.0 | lib/aws_rds/security_group.rb |
aws-rds-0.2.0 | lib/aws_rds/security_group.rb |
aws-rds-0.1.2 | lib/aws_rds/security_group.rb |