Class: Chef::Resource::AwsRdsParameterGroup

Inherits:
Provisioning::AWSDriver::AWSRDSResource show all
Includes:
Provisioning::AWSDriver::AWSTaggable
Defined in:
lib/chef/resource/aws_rds_parameter_group.rb

Constant Summary

Constants inherited from Provisioning::AWSDriver::AWSResource

Provisioning::AWSDriver::AWSResource::NOT_PASSED

Instance Method Summary collapse

Methods included from Provisioning::AWSDriver::AWSTaggable

included

Methods inherited from Provisioning::AWSDriver::AWSResource

#action, #action=, attribute, aws_id_attribute, aws_id_prefix, #aws_object_id, aws_option_handlers, aws_sdk_class, aws_sdk_class_id, aws_sdk_option_name, aws_sdk_type, get_aws_object, get_aws_object_id, #initialize, lookup_options

Methods inherited from Provisioning::AWSDriver::SuperLWRP

#_pv_is, attribute, lazy

Constructor Details

This class inherits a constructor from Chef::Provisioning::AWSDriver::AWSResource

Instance Method Details

#aws_objectObject



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/chef/resource/aws_rds_parameter_group.rb', line 15

def aws_object
  object = driver.rds.client.describe_db_parameter_groups(db_parameter_group_name: name)[:db_parameter_groups].first

  # use paginated API to get all options
  initial_request = driver.rds.client.describe_db_parameters(db_parameter_group_name: name, max_records: 100)
  marker = initial_request[:marker]
  parameters = initial_request[:parameters]
  while !marker.nil?
    more_results = driver.rds.client.describe_db_parameters(db_parameter_group_name: name, max_records: 100, marker: marker)
    parameters += more_results[:parameters]
    marker = more_results[:marker]
  end
  object[:parameters] = parameters

  object
rescue AWS::RDS::Errors::DBParameterGroupNotFound
  nil
end

#rds_tagging_typeObject



34
35
36
# File 'lib/chef/resource/aws_rds_parameter_group.rb', line 34

def rds_tagging_type
  "pg"
end