aws-sdk-ec2 1.402.0 → 1.547.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +735 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +32 -20
  5. data/lib/aws-sdk-ec2/client.rb +14212 -4429
  6. data/lib/aws-sdk-ec2/client_api.rb +4004 -515
  7. data/lib/aws-sdk-ec2/customizations/instance.rb +18 -1
  8. data/lib/aws-sdk-ec2/customizations/resource.rb +46 -3
  9. data/lib/aws-sdk-ec2/customizations/tag.rb +13 -0
  10. data/lib/aws-sdk-ec2/customizations.rb +0 -22
  11. data/lib/aws-sdk-ec2/dhcp_options.rb +12 -12
  12. data/lib/aws-sdk-ec2/endpoint_parameters.rb +9 -6
  13. data/lib/aws-sdk-ec2/endpoint_provider.rb +16 -20
  14. data/lib/aws-sdk-ec2/endpoints.rb +2 -8314
  15. data/lib/aws-sdk-ec2/image.rb +207 -98
  16. data/lib/aws-sdk-ec2/instance.rb +514 -348
  17. data/lib/aws-sdk-ec2/internet_gateway.rb +7 -7
  18. data/lib/aws-sdk-ec2/key_pair.rb +14 -14
  19. data/lib/aws-sdk-ec2/key_pair_info.rb +30 -30
  20. data/lib/aws-sdk-ec2/nat_gateway.rb +7 -8
  21. data/lib/aws-sdk-ec2/network_acl.rb +70 -70
  22. data/lib/aws-sdk-ec2/network_interface.rb +150 -78
  23. data/lib/aws-sdk-ec2/network_interface_association.rb +3 -3
  24. data/lib/aws-sdk-ec2/placement_group.rb +123 -42
  25. data/lib/aws-sdk-ec2/plugins/endpoints.rb +23 -1202
  26. data/lib/aws-sdk-ec2/resource.rb +1118 -864
  27. data/lib/aws-sdk-ec2/route.rb +50 -34
  28. data/lib/aws-sdk-ec2/route_table.rb +47 -44
  29. data/lib/aws-sdk-ec2/route_table_association.rb +3 -3
  30. data/lib/aws-sdk-ec2/security_group.rb +212 -201
  31. data/lib/aws-sdk-ec2/snapshot.rb +169 -105
  32. data/lib/aws-sdk-ec2/subnet.rb +534 -406
  33. data/lib/aws-sdk-ec2/tag.rb +7 -4
  34. data/lib/aws-sdk-ec2/types.rb +18252 -4766
  35. data/lib/aws-sdk-ec2/volume.rb +160 -116
  36. data/lib/aws-sdk-ec2/vpc.rb +387 -262
  37. data/lib/aws-sdk-ec2/vpc_address.rb +37 -25
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +6 -6
  39. data/lib/aws-sdk-ec2/waiters.rb +146 -38
  40. data/lib/aws-sdk-ec2.rb +40 -36
  41. data/sig/classic_address.rbs +108 -0
  42. data/sig/client.rbs +14833 -0
  43. data/sig/dhcp_options.rbs +84 -0
  44. data/sig/errors.rbs +16 -0
  45. data/sig/image.rbs +232 -0
  46. data/sig/instance.rbs +576 -0
  47. data/sig/internet_gateway.rbs +91 -0
  48. data/sig/key_pair.rbs +54 -0
  49. data/sig/key_pair_info.rbs +63 -0
  50. data/sig/nat_gateway.rbs +107 -0
  51. data/sig/network_acl.rbs +144 -0
  52. data/sig/network_interface.rbs +249 -0
  53. data/sig/network_interface_association.rbs +62 -0
  54. data/sig/placement_group.rbs +78 -0
  55. data/sig/resource.rbs +1049 -0
  56. data/sig/route.rbs +120 -0
  57. data/sig/route_table.rbs +118 -0
  58. data/sig/route_table_association.rbs +69 -0
  59. data/sig/security_group.rbs +311 -0
  60. data/sig/snapshot.rbs +204 -0
  61. data/sig/subnet.rbs +442 -0
  62. data/sig/tag.rbs +63 -0
  63. data/sig/types.rbs +17078 -0
  64. data/sig/volume.rbs +213 -0
  65. data/sig/vpc.rbs +404 -0
  66. data/sig/vpc_address.rbs +104 -0
  67. data/sig/vpc_peering_connection.rbs +84 -0
  68. data/sig/waiters.rbs +700 -0
  69. metadata +45 -19
data/sig/route.rbs ADDED
@@ -0,0 +1,120 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html
11
+ class Route
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#initialize-instance_method
13
+ def initialize: (String route_table_id, String destination_cidr_block, Hash[Symbol, untyped] options) -> void
14
+ | (route_table_id: String, destination_cidr_block: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#route_table_id-instance_method
18
+ def route_table_id: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#destination_cidr_block-instance_method
21
+ def destination_cidr_block: () -> String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#destination_ipv_6_cidr_block-instance_method
24
+ def destination_ipv_6_cidr_block: () -> ::String
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#destination_prefix_list_id-instance_method
27
+ def destination_prefix_list_id: () -> ::String
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#egress_only_internet_gateway_id-instance_method
30
+ def egress_only_internet_gateway_id: () -> ::String
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#gateway_id-instance_method
33
+ def gateway_id: () -> ::String
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#instance_id-instance_method
36
+ def instance_id: () -> ::String
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#instance_owner_id-instance_method
39
+ def instance_owner_id: () -> ::String
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#nat_gateway_id-instance_method
42
+ def nat_gateway_id: () -> ::String
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#transit_gateway_id-instance_method
45
+ def transit_gateway_id: () -> ::String
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#local_gateway_id-instance_method
48
+ def local_gateway_id: () -> ::String
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#carrier_gateway_id-instance_method
51
+ def carrier_gateway_id: () -> ::String
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#network_interface_id-instance_method
54
+ def network_interface_id: () -> ::String
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#origin-instance_method
57
+ def origin: () -> ("CreateRouteTable" | "CreateRoute" | "EnableVgwRoutePropagation")
58
+
59
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#state-instance_method
60
+ def state: () -> ("active" | "blackhole")
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#vpc_peering_connection_id-instance_method
63
+ def vpc_peering_connection_id: () -> ::String
64
+
65
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#core_network_arn-instance_method
66
+ def core_network_arn: () -> ::String
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#odb_network_arn-instance_method
69
+ def odb_network_arn: () -> ::String
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#ip_address-instance_method
72
+ def ip_address: () -> ::String
73
+
74
+ def client: () -> Client
75
+
76
+
77
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#data-instance_method
78
+ def data: () -> Types::Route
79
+
80
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#data_loaded?-instance_method
81
+ def data_loaded?: () -> bool
82
+
83
+
84
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#delete-instance_method
85
+ def delete: (
86
+ ?destination_prefix_list_id: ::String,
87
+ ?dry_run: bool,
88
+ ?destination_ipv_6_cidr_block: ::String
89
+ ) -> ::Aws::EmptyStructure
90
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
91
+
92
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#replace-instance_method
93
+ def replace: (
94
+ ?destination_prefix_list_id: ::String,
95
+ ?vpc_endpoint_id: ::String,
96
+ ?local_target: bool,
97
+ ?transit_gateway_id: ::String,
98
+ ?local_gateway_id: ::String,
99
+ ?carrier_gateway_id: ::String,
100
+ ?core_network_arn: ::String,
101
+ ?odb_network_arn: ::String,
102
+ ?dry_run: bool,
103
+ ?gateway_id: ::String,
104
+ ?destination_ipv_6_cidr_block: ::String,
105
+ ?egress_only_internet_gateway_id: ::String,
106
+ ?instance_id: ::String,
107
+ ?network_interface_id: ::String,
108
+ ?vpc_peering_connection_id: ::String,
109
+ ?nat_gateway_id: ::String
110
+ ) -> ::Aws::EmptyStructure
111
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
112
+
113
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Route.html#route_table-instance_method
114
+ def route_table: () -> RouteTable
115
+
116
+ class Collection < ::Aws::Resources::Collection[Route]
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,118 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html
11
+ class RouteTable
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#initialize-instance_method
13
+ def initialize: (String id, Hash[Symbol, untyped] options) -> void
14
+ | (id: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#id-instance_method
18
+ def id: () -> String
19
+ alias route_table_id id
20
+
21
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#propagating_vgws-instance_method
22
+ def propagating_vgws: () -> ::Array[Types::PropagatingVgw]
23
+
24
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#tags-instance_method
25
+ def tags: () -> ::Array[Types::Tag]
26
+
27
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#vpc_id-instance_method
28
+ def vpc_id: () -> ::String
29
+
30
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#owner_id-instance_method
31
+ def owner_id: () -> ::String
32
+
33
+ def client: () -> Client
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#load-instance_method
36
+ def load: () -> self
37
+ alias reload load
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#data-instance_method
40
+ def data: () -> Types::RouteTable
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#data_loaded?-instance_method
43
+ def data_loaded?: () -> bool
44
+
45
+
46
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#associate_with_subnet-instance_method
47
+ def associate_with_subnet: (
48
+ ?gateway_id: ::String,
49
+ ?dry_run: bool,
50
+ ?subnet_id: ::String
51
+ ) -> RouteTableAssociation
52
+ | (?Hash[Symbol, untyped]) -> RouteTableAssociation
53
+
54
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#create_route-instance_method
55
+ def create_route: (
56
+ ?destination_prefix_list_id: ::String,
57
+ ?vpc_endpoint_id: ::String,
58
+ ?transit_gateway_id: ::String,
59
+ ?local_gateway_id: ::String,
60
+ ?carrier_gateway_id: ::String,
61
+ ?core_network_arn: ::String,
62
+ ?odb_network_arn: ::String,
63
+ ?dry_run: bool,
64
+ ?destination_cidr_block: ::String,
65
+ ?gateway_id: ::String,
66
+ ?destination_ipv_6_cidr_block: ::String,
67
+ ?egress_only_internet_gateway_id: ::String,
68
+ ?instance_id: ::String,
69
+ ?network_interface_id: ::String,
70
+ ?vpc_peering_connection_id: ::String,
71
+ ?nat_gateway_id: ::String
72
+ ) -> Route
73
+ | (?Hash[Symbol, untyped]) -> Route
74
+
75
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#create_tags-instance_method
76
+ def create_tags: (
77
+ ?dry_run: bool,
78
+ tags: Array[
79
+ {
80
+ key: ::String?,
81
+ value: ::String?
82
+ },
83
+ ]
84
+ ) -> Tag::Collection
85
+ | (?Hash[Symbol, untyped]) -> Tag::Collection
86
+
87
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#delete_tags-instance_method
88
+ def delete_tags: (
89
+ ?dry_run: bool,
90
+ ?tags: Array[
91
+ {
92
+ key: ::String?,
93
+ value: ::String?
94
+ },
95
+ ]
96
+ ) -> Tag::Collection
97
+ | (?Hash[Symbol, untyped]) -> Tag::Collection
98
+
99
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#delete-instance_method
100
+ def delete: (
101
+ ?dry_run: bool
102
+ ) -> ::Aws::EmptyStructure
103
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
104
+
105
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#associations-instance_method
106
+ def associations: () -> RouteTableAssociation::Collection
107
+
108
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#routes-instance_method
109
+ def routes: () -> Route::Collection
110
+
111
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTable.html#vpc-instance_method
112
+ def vpc: () -> Vpc?
113
+
114
+ class Collection < ::Aws::Resources::Collection[RouteTable]
115
+ end
116
+ end
117
+ end
118
+ end
@@ -0,0 +1,69 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html
11
+ class RouteTableAssociation
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#initialize-instance_method
13
+ def initialize: (String id, Hash[Symbol, untyped] options) -> void
14
+ | (id: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#id-instance_method
18
+ def id: () -> String
19
+ alias route_table_association_id id
20
+
21
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#main-instance_method
22
+ def main: () -> bool
23
+
24
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#route_table_id-instance_method
25
+ def route_table_id: () -> ::String
26
+
27
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#subnet_id-instance_method
28
+ def subnet_id: () -> ::String
29
+
30
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#gateway_id-instance_method
31
+ def gateway_id: () -> ::String
32
+
33
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#association_state-instance_method
34
+ def association_state: () -> Types::RouteTableAssociationState
35
+
36
+ def client: () -> Client
37
+
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#data-instance_method
40
+ def data: () -> Types::RouteTableAssociation
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#data_loaded?-instance_method
43
+ def data_loaded?: () -> bool
44
+
45
+
46
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#delete-instance_method
47
+ def delete: (
48
+ ?dry_run: bool
49
+ ) -> ::Aws::EmptyStructure
50
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
51
+
52
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#replace_subnet-instance_method
53
+ def replace_subnet: (
54
+ ?dry_run: bool,
55
+ route_table_id: ::String
56
+ ) -> RouteTableAssociation
57
+ | (?Hash[Symbol, untyped]) -> RouteTableAssociation
58
+
59
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#route_table-instance_method
60
+ def route_table: () -> RouteTable?
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/RouteTableAssociation.html#subnet-instance_method
63
+ def subnet: () -> Subnet?
64
+
65
+ class Collection < ::Aws::Resources::Collection[RouteTableAssociation]
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,311 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html
11
+ class SecurityGroup
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#initialize-instance_method
13
+ def initialize: (String id, Hash[Symbol, untyped] options) -> void
14
+ | (id: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#id-instance_method
18
+ def id: () -> String
19
+ alias group_id id
20
+
21
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#ip_permissions_egress-instance_method
22
+ def ip_permissions_egress: () -> ::Array[Types::IpPermission]
23
+
24
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#tags-instance_method
25
+ def tags: () -> ::Array[Types::Tag]
26
+
27
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#vpc_id-instance_method
28
+ def vpc_id: () -> ::String
29
+
30
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#security_group_arn-instance_method
31
+ def security_group_arn: () -> ::String
32
+
33
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#owner_id-instance_method
34
+ def owner_id: () -> ::String
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#group_name-instance_method
37
+ def group_name: () -> ::String
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#description-instance_method
40
+ def description: () -> ::String
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#ip_permissions-instance_method
43
+ def ip_permissions: () -> ::Array[Types::IpPermission]
44
+
45
+ def client: () -> Client
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#load-instance_method
48
+ def load: () -> self
49
+ alias reload load
50
+
51
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#data-instance_method
52
+ def data: () -> Types::SecurityGroup
53
+
54
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#data_loaded?-instance_method
55
+ def data_loaded?: () -> bool
56
+
57
+
58
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#authorize_egress-instance_method
59
+ def authorize_egress: (
60
+ ?tag_specifications: Array[
61
+ {
62
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token" | "capacity-block" | "mac-modification-task")?,
63
+ tags: Array[
64
+ {
65
+ key: ::String?,
66
+ value: ::String?
67
+ },
68
+ ]?
69
+ },
70
+ ],
71
+ ?dry_run: bool,
72
+ ?source_security_group_name: ::String,
73
+ ?source_security_group_owner_id: ::String,
74
+ ?ip_protocol: ::String,
75
+ ?from_port: ::Integer,
76
+ ?to_port: ::Integer,
77
+ ?cidr_ip: ::String,
78
+ ?ip_permissions: Array[
79
+ {
80
+ ip_protocol: ::String?,
81
+ from_port: ::Integer?,
82
+ to_port: ::Integer?,
83
+ user_id_group_pairs: Array[
84
+ {
85
+ description: ::String?,
86
+ user_id: ::String?,
87
+ group_name: ::String?,
88
+ group_id: ::String?,
89
+ vpc_id: ::String?,
90
+ vpc_peering_connection_id: ::String?,
91
+ peering_status: ::String?
92
+ },
93
+ ]?,
94
+ ip_ranges: Array[
95
+ {
96
+ description: ::String?,
97
+ cidr_ip: ::String?
98
+ },
99
+ ]?,
100
+ ipv_6_ranges: Array[
101
+ {
102
+ description: ::String?,
103
+ cidr_ipv_6: ::String?
104
+ },
105
+ ]?,
106
+ prefix_list_ids: Array[
107
+ {
108
+ description: ::String?,
109
+ prefix_list_id: ::String?
110
+ },
111
+ ]?
112
+ },
113
+ ]
114
+ ) -> Types::AuthorizeSecurityGroupEgressResult
115
+ | (?Hash[Symbol, untyped]) -> Types::AuthorizeSecurityGroupEgressResult
116
+
117
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#authorize_ingress-instance_method
118
+ def authorize_ingress: (
119
+ ?cidr_ip: ::String,
120
+ ?from_port: ::Integer,
121
+ ?group_name: ::String,
122
+ ?ip_permissions: Array[
123
+ {
124
+ ip_protocol: ::String?,
125
+ from_port: ::Integer?,
126
+ to_port: ::Integer?,
127
+ user_id_group_pairs: Array[
128
+ {
129
+ description: ::String?,
130
+ user_id: ::String?,
131
+ group_name: ::String?,
132
+ group_id: ::String?,
133
+ vpc_id: ::String?,
134
+ vpc_peering_connection_id: ::String?,
135
+ peering_status: ::String?
136
+ },
137
+ ]?,
138
+ ip_ranges: Array[
139
+ {
140
+ description: ::String?,
141
+ cidr_ip: ::String?
142
+ },
143
+ ]?,
144
+ ipv_6_ranges: Array[
145
+ {
146
+ description: ::String?,
147
+ cidr_ipv_6: ::String?
148
+ },
149
+ ]?,
150
+ prefix_list_ids: Array[
151
+ {
152
+ description: ::String?,
153
+ prefix_list_id: ::String?
154
+ },
155
+ ]?
156
+ },
157
+ ],
158
+ ?ip_protocol: ::String,
159
+ ?source_security_group_name: ::String,
160
+ ?source_security_group_owner_id: ::String,
161
+ ?to_port: ::Integer,
162
+ ?tag_specifications: Array[
163
+ {
164
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token" | "capacity-block" | "mac-modification-task")?,
165
+ tags: Array[
166
+ {
167
+ key: ::String?,
168
+ value: ::String?
169
+ },
170
+ ]?
171
+ },
172
+ ],
173
+ ?dry_run: bool
174
+ ) -> Types::AuthorizeSecurityGroupIngressResult
175
+ | (?Hash[Symbol, untyped]) -> Types::AuthorizeSecurityGroupIngressResult
176
+
177
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#create_tags-instance_method
178
+ def create_tags: (
179
+ ?dry_run: bool,
180
+ tags: Array[
181
+ {
182
+ key: ::String?,
183
+ value: ::String?
184
+ },
185
+ ]
186
+ ) -> Tag::Collection
187
+ | (?Hash[Symbol, untyped]) -> Tag::Collection
188
+
189
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#delete_tags-instance_method
190
+ def delete_tags: (
191
+ ?dry_run: bool,
192
+ ?tags: Array[
193
+ {
194
+ key: ::String?,
195
+ value: ::String?
196
+ },
197
+ ]
198
+ ) -> Tag::Collection
199
+ | (?Hash[Symbol, untyped]) -> Tag::Collection
200
+
201
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#delete-instance_method
202
+ def delete: (
203
+ ?group_name: ::String,
204
+ ?dry_run: bool
205
+ ) -> Types::DeleteSecurityGroupResult
206
+ | (?Hash[Symbol, untyped]) -> Types::DeleteSecurityGroupResult
207
+
208
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#revoke_egress-instance_method
209
+ def revoke_egress: (
210
+ ?security_group_rule_ids: Array[::String],
211
+ ?dry_run: bool,
212
+ ?source_security_group_name: ::String,
213
+ ?source_security_group_owner_id: ::String,
214
+ ?ip_protocol: ::String,
215
+ ?from_port: ::Integer,
216
+ ?to_port: ::Integer,
217
+ ?cidr_ip: ::String,
218
+ ?ip_permissions: Array[
219
+ {
220
+ ip_protocol: ::String?,
221
+ from_port: ::Integer?,
222
+ to_port: ::Integer?,
223
+ user_id_group_pairs: Array[
224
+ {
225
+ description: ::String?,
226
+ user_id: ::String?,
227
+ group_name: ::String?,
228
+ group_id: ::String?,
229
+ vpc_id: ::String?,
230
+ vpc_peering_connection_id: ::String?,
231
+ peering_status: ::String?
232
+ },
233
+ ]?,
234
+ ip_ranges: Array[
235
+ {
236
+ description: ::String?,
237
+ cidr_ip: ::String?
238
+ },
239
+ ]?,
240
+ ipv_6_ranges: Array[
241
+ {
242
+ description: ::String?,
243
+ cidr_ipv_6: ::String?
244
+ },
245
+ ]?,
246
+ prefix_list_ids: Array[
247
+ {
248
+ description: ::String?,
249
+ prefix_list_id: ::String?
250
+ },
251
+ ]?
252
+ },
253
+ ]
254
+ ) -> Types::RevokeSecurityGroupEgressResult
255
+ | (?Hash[Symbol, untyped]) -> Types::RevokeSecurityGroupEgressResult
256
+
257
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/SecurityGroup.html#revoke_ingress-instance_method
258
+ def revoke_ingress: (
259
+ ?cidr_ip: ::String,
260
+ ?from_port: ::Integer,
261
+ ?group_name: ::String,
262
+ ?ip_permissions: Array[
263
+ {
264
+ ip_protocol: ::String?,
265
+ from_port: ::Integer?,
266
+ to_port: ::Integer?,
267
+ user_id_group_pairs: Array[
268
+ {
269
+ description: ::String?,
270
+ user_id: ::String?,
271
+ group_name: ::String?,
272
+ group_id: ::String?,
273
+ vpc_id: ::String?,
274
+ vpc_peering_connection_id: ::String?,
275
+ peering_status: ::String?
276
+ },
277
+ ]?,
278
+ ip_ranges: Array[
279
+ {
280
+ description: ::String?,
281
+ cidr_ip: ::String?
282
+ },
283
+ ]?,
284
+ ipv_6_ranges: Array[
285
+ {
286
+ description: ::String?,
287
+ cidr_ipv_6: ::String?
288
+ },
289
+ ]?,
290
+ prefix_list_ids: Array[
291
+ {
292
+ description: ::String?,
293
+ prefix_list_id: ::String?
294
+ },
295
+ ]?
296
+ },
297
+ ],
298
+ ?ip_protocol: ::String,
299
+ ?source_security_group_name: ::String,
300
+ ?source_security_group_owner_id: ::String,
301
+ ?to_port: ::Integer,
302
+ ?security_group_rule_ids: Array[::String],
303
+ ?dry_run: bool
304
+ ) -> Types::RevokeSecurityGroupIngressResult
305
+ | (?Hash[Symbol, untyped]) -> Types::RevokeSecurityGroupIngressResult
306
+
307
+ class Collection < ::Aws::Resources::Collection[SecurityGroup]
308
+ end
309
+ end
310
+ end
311
+ end