Class: Aws::AutoScaling::Resource
- Inherits:
-
Object
- Object
- Aws::AutoScaling::Resource
- Defined in:
- gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb
Overview
This class provides a resource oriented interface for AutoScaling. To create a resource object:
resource = Aws::AutoScaling::Resource.new(region: 'us-west-2')
You can supply a client object with custom configuration that will be used for all resource operations.
If you do not pass :client, a default client will be constructed.
client = Aws::AutoScaling::Client.new(region: 'us-west-2')
resource = Aws::AutoScaling::Resource.new(client: client)
Actions collapse
-
#create_group(options = {}) ⇒ AutoScalingGroup
-
#create_launch_configuration(options = {}) ⇒ LaunchConfiguration
Associations collapse
-
#activities(options = {}) ⇒ Activity::Collection
-
#activity(id) ⇒ Activity
-
#group(name) ⇒ AutoScalingGroup
-
#groups(options = {}) ⇒ AutoScalingGroup::Collection
-
#instances(options = {}) ⇒ Instance::Collection
-
#launch_configuration(name) ⇒ LaunchConfiguration
-
#launch_configurations(options = {}) ⇒ LaunchConfiguration::Collection
-
#policies(options = {}) ⇒ ScalingPolicy::Collection
-
#policy(name) ⇒ ScalingPolicy
-
#scheduled_action(name) ⇒ ScheduledAction
-
#scheduled_actions(options = {}) ⇒ ScheduledAction::Collection
-
#tags(options = {}) ⇒ Tag::Collection
Instance Method Summary collapse
-
#client ⇒ Client
-
#initialize(options = {}) ⇒ Resource
constructor
A new instance of Resource.
Constructor Details
Instance Method Details
#activities(options = {}) ⇒ Activity::Collection
915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 915 def activities( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_scaling_activities() end resp.each_page do |page| batch = [] page.data.activities.each do |a| batch << Activity.new( id: a.activity_id, data: a, client: @client ) end y.yield(batch) end end Activity::Collection.new(batches) end |
#activity(id) ⇒ Activity
937 938 939 940 941 942 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 937 def activity(id) Activity.new( id: id, client: @client ) end |
#client ⇒ Client
32 33 34 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 32 def client @client end |
#create_group(options = {}) ⇒ AutoScalingGroup
580 581 582 583 584 585 586 587 588 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 580 def create_group( = {}) Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.create_auto_scaling_group() end AutoScalingGroup.new( name: [:auto_scaling_group_name], client: @client ) end |
#create_launch_configuration(options = {}) ⇒ LaunchConfiguration
839 840 841 842 843 844 845 846 847 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 839 def create_launch_configuration( = {}) Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.create_launch_configuration() end LaunchConfiguration.new( name: [:launch_configuration_name], client: @client ) end |
#group(name) ⇒ AutoScalingGroup
946 947 948 949 950 951 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 946 def group(name) AutoScalingGroup.new( name: name, client: @client ) end |
#groups(options = {}) ⇒ AutoScalingGroup::Collection
979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 979 def groups( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_auto_scaling_groups() end resp.each_page do |page| batch = [] page.data.auto_scaling_groups.each do |a| batch << AutoScalingGroup.new( name: a.auto_scaling_group_name, data: a, client: @client ) end y.yield(batch) end end AutoScalingGroup::Collection.new(batches) end |
#instances(options = {}) ⇒ Instance::Collection
1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1012 def instances( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_auto_scaling_instances() end resp.each_page do |page| batch = [] page.data.auto_scaling_instances.each do |a| batch << Instance.new( group_name: a.auto_scaling_group_name, id: a.instance_id, data: a, client: @client ) end y.yield(batch) end end Instance::Collection.new(batches) end |
#launch_configuration(name) ⇒ LaunchConfiguration
1035 1036 1037 1038 1039 1040 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1035 def launch_configuration(name) LaunchConfiguration.new( name: name, client: @client ) end |
#launch_configurations(options = {}) ⇒ LaunchConfiguration::Collection
1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1054 def launch_configurations( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_launch_configurations() end resp.each_page do |page| batch = [] page.data.launch_configurations.each do |l| batch << LaunchConfiguration.new( name: l.launch_configuration_name, data: l, client: @client ) end y.yield(batch) end end LaunchConfiguration::Collection.new(batches) end |
#policies(options = {}) ⇒ ScalingPolicy::Collection
1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1095 def policies( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_policies() end resp.each_page do |page| batch = [] page.data.scaling_policies.each do |s| batch << ScalingPolicy.new( name: s.policy_name, data: s, client: @client ) end y.yield(batch) end end ScalingPolicy::Collection.new(batches) end |
#policy(name) ⇒ ScalingPolicy
1117 1118 1119 1120 1121 1122 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1117 def policy(name) ScalingPolicy.new( name: name, client: @client ) end |
#scheduled_action(name) ⇒ ScheduledAction
1126 1127 1128 1129 1130 1131 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1126 def scheduled_action(name) ScheduledAction.new( name: name, client: @client ) end |
#scheduled_actions(options = {}) ⇒ ScheduledAction::Collection
1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1157 def scheduled_actions( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_scheduled_actions() end resp.each_page do |page| batch = [] page.data.scheduled_update_group_actions.each do |s| batch << ScheduledAction.new( name: s.scheduled_action_name, data: s, client: @client ) end y.yield(batch) end end ScheduledAction::Collection.new(batches) end |
#tags(options = {}) ⇒ Tag::Collection
1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 |
# File 'gems/aws-sdk-autoscaling/lib/aws-sdk-autoscaling/resource.rb', line 1192 def ( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.() end resp.each_page do |page| batch = [] page.data..each do |t| batch << Tag.new( key: t.key, resource_id: t.resource_id, resource_type: t.resource_type, data: t, client: @client ) end y.yield(batch) end end Tag::Collection.new(batches) end |