class Formatron::CloudFormation::Template::VPC::Subnet::Bastion
generates CloudFormation
Bastion
resources
Public Class Methods
new( bastion:, key_pair:, administrator_name:, administrator_password:, availability_zone:, subnet_guid:, hosted_zone_name:, vpc_guid:, vpc_cidr:, kms_key:, private_hosted_zone_id:, public_hosted_zone_id:, bucket:, name:, target: )
click to toggle source
rubocop:disable Metrics/MethodLength rubocop:disable Metrics/ParameterLists
# File lib/formatron/cloud_formation/template/vpc/subnet/bastion.rb, line 12 def initialize( bastion:, key_pair:, administrator_name:, administrator_password:, availability_zone:, subnet_guid:, hosted_zone_name:, vpc_guid:, vpc_cidr:, kms_key:, private_hosted_zone_id:, public_hosted_zone_id:, bucket:, name:, target: ) @bastion = bastion _set_os _add_open_ports @instance = Instance.new( instance: bastion, key_pair: key_pair, administrator_name: administrator_name, administrator_password: administrator_password, availability_zone: availability_zone, subnet_guid: subnet_guid, hosted_zone_name: hosted_zone_name, vpc_guid: vpc_guid, vpc_cidr: vpc_cidr, kms_key: kms_key, private_hosted_zone_id: private_hosted_zone_id, public_hosted_zone_id: public_hosted_zone_id, bucket: bucket, name: name, target: target ) end
Public Instance Methods
merge(resources:, outputs:)
click to toggle source
# File lib/formatron/cloud_formation/template/vpc/subnet/bastion.rb, line 65 def merge(resources:, outputs:) @instance.merge resources: resources, outputs: outputs end
Private Instance Methods
_add_open_ports()
click to toggle source
# File lib/formatron/cloud_formation/template/vpc/subnet/bastion.rb, line 59 def _add_open_ports @bastion.security_group do |security_group| security_group.open_tcp_port 22 end end
_set_os()
click to toggle source
rubocop:enable Metrics/ParameterLists rubocop:enable Metrics/MethodLength
# File lib/formatron/cloud_formation/template/vpc/subnet/bastion.rb, line 53 def _set_os @bastion.os( 'ubuntu' ) end