awspec 0.81.1 → 0.82.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.
- checksums.yaml +4 -4
- data/doc/_resource_types/s3_bucket.md +2 -0
- data/doc/_resource_types/sqs.md +9 -0
- data/doc/resource_types.md +31 -13
- data/lib/awspec/generator/doc/type/sqs.rb +17 -0
- data/lib/awspec/helper/finder.rb +4 -1
- data/lib/awspec/helper/finder/sqs.rb +12 -0
- data/lib/awspec/helper/type.rb +1 -1
- data/lib/awspec/stub/sqs.rb +25 -0
- data/lib/awspec/type/sqs.rb +31 -0
- data/lib/awspec/version.rb +1 -1
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7bf3b3b5b1169aa506af43ab8313049de7108685
|
4
|
+
data.tar.gz: 288116aac0f59e7afc2140c62991d4fcebd0c6d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eb0ee16cbc5441eb85bf1ee0d1e6fc38175064abb48ac105ce93e68635af85ab878ccb42814b06168ad487d6dd48ecad924ed9211cf44edaa9f797170849b64a
|
7
|
+
data.tar.gz: b6c4783251da19a5ba6a15b57122cdd35f5d46645efad4f97f082ac557eaa88b2abb975aab8ee26742b13b95460d210dd6c02a850fd7dd8231abc02ee4010a6c
|
@@ -79,6 +79,8 @@ describe s3_bucket('my-bucket') do
|
|
79
79
|
should have_lifecycle_rule(
|
80
80
|
id: 'MyRuleName',
|
81
81
|
noncurrent_version_expiration: { noncurrent_days: 1 },
|
82
|
+
expiration: { days: 2 },
|
83
|
+
transitions: { days: 3, storage_class: 'GLACIER' },
|
82
84
|
status: 'Enabled'
|
83
85
|
)
|
84
86
|
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
### exist
|
2
|
+
|
3
|
+
```ruby
|
4
|
+
describe sqs('my-queue') do
|
5
|
+
it { should exist }
|
6
|
+
its(:queue_url) { should eq 'https://sqs.ap-northeast-1.amazonaws.com/123456789012/my-queue' }
|
7
|
+
its(:queue_arn) { should eq 'arn:aws:sqs:ap-northeast-1:123456789012:my-queue' }
|
8
|
+
end
|
9
|
+
```
|
data/doc/resource_types.md
CHANGED
@@ -45,6 +45,7 @@
|
|
45
45
|
| [s3_bucket](#s3_bucket)
|
46
46
|
| [security_group](#security_group)
|
47
47
|
| [ses_identity](#ses_identity)
|
48
|
+
| [sqs](#sqs)
|
48
49
|
| [subnet](#subnet)
|
49
50
|
| [vpc](#vpc)
|
50
51
|
| [vpn_connection](#vpn_connection)
|
@@ -123,7 +124,7 @@ end
|
|
123
124
|
```
|
124
125
|
|
125
126
|
|
126
|
-
### its(:
|
127
|
+
### its(:architecture), its(:creation_date), its(:image_id), its(:image_location), its(:image_type), its(:public), its(:kernel_id), its(:owner_id), its(:platform), its(:ramdisk_id), its(:state), its(:description), its(:ena_support), its(:hypervisor), its(:image_owner_alias), its(:name), its(:root_device_name), its(:root_device_type), its(:sriov_net_support), its(:state_reason), its(:tags), its(:virtualization_type)
|
127
128
|
### :unlock: Advanced use
|
128
129
|
|
129
130
|
`ami` can use `Aws::EC2::Image` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Image.html).
|
@@ -413,7 +414,7 @@ end
|
|
413
414
|
```
|
414
415
|
|
415
416
|
|
416
|
-
### its(:
|
417
|
+
### its(:bgp_asn), its(:customer_gateway_id), its(:ip_address), its(:state), its(:type), its(:tags)
|
417
418
|
## <a name="directconnect_virtual_interface">directconnect_virtual_interface</a>
|
418
419
|
|
419
420
|
DirectconnectVirtualInterface resource type.
|
@@ -545,7 +546,7 @@ end
|
|
545
546
|
```
|
546
547
|
|
547
548
|
|
548
|
-
### its(:
|
549
|
+
### its(:availability_zone), its(:create_time), its(:encrypted), its(:kms_key_id), its(:size), its(:snapshot_id), its(:state), its(:volume_id), its(:iops), its(:volume_type)
|
549
550
|
### :unlock: Advanced use
|
550
551
|
|
551
552
|
`ebs` can use `Aws::EC2::Volume` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Volume.html).
|
@@ -720,7 +721,7 @@ end
|
|
720
721
|
```
|
721
722
|
|
722
723
|
|
723
|
-
### its(:
|
724
|
+
### its(:ami_launch_index), its(:image_id), its(:instance_id), its(:instance_type), its(:kernel_id), its(:key_name), its(:launch_time), its(:monitoring), its(:placement), its(:platform), its(:private_dns_name), its(:private_ip_address), its(:product_codes), its(:public_dns_name), its(:public_ip_address), its(:ramdisk_id), its(:state_transition_reason), its(:subnet_id), its(:vpc_id), its(:architecture), its(:client_token), its(:ebs_optimized), its(:ena_support), its(:hypervisor), its(:instance_lifecycle), its(:root_device_name), its(:root_device_type), its(:source_dest_check), its(:spot_instance_request_id), its(:sriov_net_support), its(:state_reason), its(:virtualization_type)
|
724
725
|
### :unlock: Advanced use
|
725
726
|
|
726
727
|
`ec2` can use `Aws::EC2::Instance` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Instance.html).
|
@@ -1600,7 +1601,7 @@ describe nat_gateway('nat-7ff7777f') do
|
|
1600
1601
|
end
|
1601
1602
|
```
|
1602
1603
|
|
1603
|
-
### its(:
|
1604
|
+
### its(:create_time), its(:delete_time), its(:failure_code), its(:failure_message), its(:nat_gateway_id), its(:provisioned_bandwidth), its(:state), its(:subnet_id), its(:vpc_id)
|
1604
1605
|
## <a name="network_acl">network_acl</a>
|
1605
1606
|
|
1606
1607
|
NetworkAcl resource type.
|
@@ -1654,7 +1655,7 @@ end
|
|
1654
1655
|
```
|
1655
1656
|
|
1656
1657
|
|
1657
|
-
### its(:inbound_entries_count), its(:outbound_entries_count), its(:
|
1658
|
+
### its(:inbound_entries_count), its(:outbound_entries_count), its(:is_default), its(:network_acl_id), its(:vpc_id)
|
1658
1659
|
### :unlock: Advanced use
|
1659
1660
|
|
1660
1661
|
`network_acl` can use `Aws::EC2::NetworkAcl` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/NetworkAcl.html).
|
@@ -1751,7 +1752,7 @@ describe network_interface('eni-12ab3cde') do
|
|
1751
1752
|
end
|
1752
1753
|
```
|
1753
1754
|
|
1754
|
-
### its(:
|
1755
|
+
### its(:association), its(:availability_zone), its(:description), its(:interface_type), its(:ipv_6_addresses), its(:mac_address), its(:network_interface_id), its(:owner_id), its(:private_dns_name), its(:private_ip_address), its(:requester_id), its(:requester_managed), its(:source_dest_check), its(:status), its(:subnet_id), its(:vpc_id)
|
1755
1756
|
## <a name="rds">rds</a>
|
1756
1757
|
|
1757
1758
|
RDS resource type.
|
@@ -1976,7 +1977,7 @@ end
|
|
1976
1977
|
```
|
1977
1978
|
|
1978
1979
|
|
1979
|
-
### its(:
|
1980
|
+
### its(:propagating_vgws), its(:route_table_id), its(:vpc_id)
|
1980
1981
|
### :unlock: Advanced use
|
1981
1982
|
|
1982
1983
|
`route_table` can use `Aws::EC2::RouteTable` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/RouteTable.html).
|
@@ -2052,6 +2053,8 @@ describe s3_bucket('my-bucket') do
|
|
2052
2053
|
should have_lifecycle_rule(
|
2053
2054
|
id: 'MyRuleName',
|
2054
2055
|
noncurrent_version_expiration: { noncurrent_days: 1 },
|
2056
|
+
expiration: { days: 2 },
|
2057
|
+
transitions: { days: 3, storage_class: 'GLACIER' },
|
2055
2058
|
status: 'Enabled'
|
2056
2059
|
)
|
2057
2060
|
end
|
@@ -2178,7 +2181,7 @@ end
|
|
2178
2181
|
```
|
2179
2182
|
|
2180
2183
|
|
2181
|
-
### its(:inbound_rule_count), its(:outbound_rule_count), its(:inbound_permissions_count), its(:outbound_permissions_count), its(:
|
2184
|
+
### its(:inbound_rule_count), its(:outbound_rule_count), its(:inbound_permissions_count), its(:outbound_permissions_count), its(:description), its(:group_name), its(:owner_id), its(:group_id), its(:vpc_id)
|
2182
2185
|
### :unlock: Advanced use
|
2183
2186
|
|
2184
2187
|
`security_group` can use `Aws::EC2::SecurityGroup` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/SecurityGroup.html).
|
@@ -2222,6 +2225,21 @@ end
|
|
2222
2225
|
```
|
2223
2226
|
|
2224
2227
|
### its(:dkim_enabled), its(:dkim_verification_status), its(:bounce_topic), its(:complaint_topic), its(:delivery_topic), its(:forwarding_enabled), its(:verification_status), its(:verification_token)
|
2228
|
+
## <a name="sqs">sqs</a>
|
2229
|
+
|
2230
|
+
SQS resource type.
|
2231
|
+
|
2232
|
+
### exist
|
2233
|
+
|
2234
|
+
```ruby
|
2235
|
+
describe sqs('my-queue') do
|
2236
|
+
it { should exist }
|
2237
|
+
its(:queue_url) { should eq 'https://sqs.ap-northeast-1.amazonaws.com/123456789012/my-queue' }
|
2238
|
+
its(:queue_arn) { should eq 'arn:aws:sqs:ap-northeast-1:123456789012:my-queue' }
|
2239
|
+
end
|
2240
|
+
```
|
2241
|
+
|
2242
|
+
|
2225
2243
|
## <a name="subnet">subnet</a>
|
2226
2244
|
|
2227
2245
|
Subnet resource type.
|
@@ -2255,7 +2273,7 @@ end
|
|
2255
2273
|
```
|
2256
2274
|
|
2257
2275
|
|
2258
|
-
### its(:
|
2276
|
+
### its(:availability_zone), its(:available_ip_address_count), its(:cidr_block), its(:default_for_az), its(:map_public_ip_on_launch), its(:state), its(:subnet_id), its(:vpc_id), its(:assign_ipv_6_address_on_creation), its(:ipv_6_cidr_block_association_set)
|
2259
2277
|
### :unlock: Advanced use
|
2260
2278
|
|
2261
2279
|
`subnet` can use `Aws::EC2::Subnet` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Subnet.html).
|
@@ -2325,7 +2343,7 @@ end
|
|
2325
2343
|
```
|
2326
2344
|
|
2327
2345
|
|
2328
|
-
### its(:
|
2346
|
+
### its(:cidr_block), its(:dhcp_options_id), its(:state), its(:vpc_id), its(:instance_tenancy), its(:ipv_6_cidr_block_association_set), its(:is_default)
|
2329
2347
|
### :unlock: Advanced use
|
2330
2348
|
|
2331
2349
|
`vpc` can use `Aws::EC2::Vpc` resource (see http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Vpc.html).
|
@@ -2375,7 +2393,7 @@ end
|
|
2375
2393
|
```
|
2376
2394
|
|
2377
2395
|
|
2378
|
-
### its(:
|
2396
|
+
### its(:customer_gateway_configuration), its(:customer_gateway_id), its(:state), its(:type), its(:vpn_connection_id), its(:vpn_gateway_id), its(:options), its(:routes), its(:tags), its(:vgw_telemetry)
|
2379
2397
|
## <a name="vpn_gateway">vpn_gateway</a>
|
2380
2398
|
|
2381
2399
|
VpnGateway resource type.
|
@@ -2407,7 +2425,7 @@ end
|
|
2407
2425
|
```
|
2408
2426
|
|
2409
2427
|
|
2410
|
-
### its(:
|
2428
|
+
### its(:availability_zone), its(:state), its(:type), its(:vpc_attachments), its(:vpn_gateway_id), its(:tags)
|
2411
2429
|
## <a name="waf_web_acl">waf_web_acl</a>
|
2412
2430
|
|
2413
2431
|
WafWebAcl resource type.
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Awspec::Generator
|
2
|
+
module Doc
|
3
|
+
module Type
|
4
|
+
class Sqs < Base
|
5
|
+
def initialize
|
6
|
+
super
|
7
|
+
@type_name = 'SQS'
|
8
|
+
@type = Awspec::Type::Sqs.new('my-queue')
|
9
|
+
@ret = @type.resource_via_client
|
10
|
+
@matchers = []
|
11
|
+
@ignore_matchers = []
|
12
|
+
@describes = []
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/awspec/helper/finder.rb
CHANGED
@@ -30,6 +30,7 @@ require 'awspec/helper/finder/waf'
|
|
30
30
|
require 'awspec/helper/finder/acm'
|
31
31
|
require 'awspec/helper/finder/cloudwatch_logs'
|
32
32
|
require 'awspec/helper/finder/dynamodb'
|
33
|
+
require 'awspec/helper/finder/sqs'
|
33
34
|
|
34
35
|
require 'awspec/helper/finder/account_attributes'
|
35
36
|
|
@@ -67,6 +68,7 @@ module Awspec::Helper
|
|
67
68
|
include Awspec::Helper::Finder::AccountAttributes
|
68
69
|
include Awspec::Helper::Finder::CloudwatchLogs
|
69
70
|
include Awspec::Helper::Finder::Dynamodb
|
71
|
+
include Awspec::Helper::Finder::Sqs
|
70
72
|
|
71
73
|
CLIENTS = {
|
72
74
|
ec2_client: Aws::EC2::Client,
|
@@ -95,7 +97,8 @@ module Awspec::Helper
|
|
95
97
|
sts_client: Aws::STS::Client,
|
96
98
|
acm_client: Aws::ACM::Client,
|
97
99
|
cloudwatch_logs_client: Aws::CloudWatchLogs::Client,
|
98
|
-
dynamodb_client: Aws::DynamoDB::Client
|
100
|
+
dynamodb_client: Aws::DynamoDB::Client,
|
101
|
+
sqs_client: Aws::SQS::Client
|
99
102
|
}
|
100
103
|
|
101
104
|
CLIENT_OPTIONS = {
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Awspec::Helper
|
2
|
+
module Finder
|
3
|
+
module Sqs
|
4
|
+
def find_queue(queue_name)
|
5
|
+
res = sqs_client.list_queues(queue_name_prefix: queue_name).queue_urls.select do |url|
|
6
|
+
url.split('/').last == queue_name
|
7
|
+
end
|
8
|
+
res.single_resource(queue_name)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
data/lib/awspec/helper/type.rb
CHANGED
@@ -15,7 +15,7 @@ module Awspec
|
|
15
15
|
network_acl network_interface rds rds_db_cluster_parameter_group rds_db_parameter_group route53_hosted_zone
|
16
16
|
route_table s3_bucket security_group ses_identity subnet vpc cloudfront_distribution
|
17
17
|
elastictranscoder_pipeline waf_web_acl customer_gateway vpn_gateway vpn_connection internet_gateway acm
|
18
|
-
cloudwatch_logs dynamodb_table eip
|
18
|
+
cloudwatch_logs dynamodb_table eip sqs
|
19
19
|
)
|
20
20
|
|
21
21
|
ACCOUNT_ATTRIBUTES = %w(
|
@@ -0,0 +1,25 @@
|
|
1
|
+
Aws.config[:sqs] = {
|
2
|
+
stub_responses: {
|
3
|
+
list_queues: {
|
4
|
+
queue_urls: [
|
5
|
+
'https://sqs.ap-northeast-1.amazonaws.com/123456789012/my-queue',
|
6
|
+
'https://sqs.ap-northeast-1.amazonaws.com/123456789012/my-queue2'
|
7
|
+
]
|
8
|
+
},
|
9
|
+
get_queue_attributes: {
|
10
|
+
attributes: {
|
11
|
+
'QueueArn' => 'arn:aws:sqs:ap-northeast-1:123456789012:my-queue',
|
12
|
+
'ApproximateNumberOfMessages' => '0',
|
13
|
+
'ApproximateNumberOfMessagesNotVisible' => '0',
|
14
|
+
'ApproximateNumberOfMessagesDelayed' => '0',
|
15
|
+
'CreatedTimestamp' => '1499422322',
|
16
|
+
'LastModifiedTimestamp' => '1499422322',
|
17
|
+
'VisibilityTimeout' => '30',
|
18
|
+
'MaximumMessageSize' => '262144',
|
19
|
+
'MessageRetentionPeriod' => '345600',
|
20
|
+
'DelaySeconds' => '0',
|
21
|
+
'ReceiveMessageWaitTimeSeconds' => '0'
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Awspec::Type
|
2
|
+
class Sqs < ResourceBase
|
3
|
+
def resource_via_client
|
4
|
+
return @resource_via_client if @resource_via_client
|
5
|
+
queue_url = id
|
6
|
+
attributes = {}
|
7
|
+
res = sqs_client.get_queue_attributes({
|
8
|
+
queue_url: queue_url,
|
9
|
+
attribute_names: ['All']
|
10
|
+
})
|
11
|
+
res.attributes.each do |key, value|
|
12
|
+
attributes[key.underscore] = value
|
13
|
+
end
|
14
|
+
attributes['queue_url'] = queue_url
|
15
|
+
@resource_via_client ||= attributes
|
16
|
+
end
|
17
|
+
|
18
|
+
def id
|
19
|
+
@id ||= find_queue(@display_name)
|
20
|
+
end
|
21
|
+
|
22
|
+
def method_missing(name)
|
23
|
+
param_name = name.to_s
|
24
|
+
if resource_via_client.include?(param_name)
|
25
|
+
resource_via_client[param_name]
|
26
|
+
else
|
27
|
+
super
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/lib/awspec/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: awspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.82.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- k1LoW
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-07-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -253,6 +253,7 @@ files:
|
|
253
253
|
- doc/_resource_types/security_group.md
|
254
254
|
- doc/_resource_types/ses_identity.md
|
255
255
|
- doc/_resource_types/ses_send_quota.md
|
256
|
+
- doc/_resource_types/sqs.md
|
256
257
|
- doc/_resource_types/subnet.md
|
257
258
|
- doc/_resource_types/vpc.md
|
258
259
|
- doc/_resource_types/vpn_connection.md
|
@@ -324,6 +325,7 @@ files:
|
|
324
325
|
- lib/awspec/generator/doc/type/security_group.rb
|
325
326
|
- lib/awspec/generator/doc/type/ses_identity.rb
|
326
327
|
- lib/awspec/generator/doc/type/ses_send_quota.rb
|
328
|
+
- lib/awspec/generator/doc/type/sqs.rb
|
327
329
|
- lib/awspec/generator/doc/type/subnet.rb
|
328
330
|
- lib/awspec/generator/doc/type/vpc.rb
|
329
331
|
- lib/awspec/generator/doc/type/vpn_connection.rb
|
@@ -391,6 +393,7 @@ files:
|
|
391
393
|
- lib/awspec/helper/finder/s3.rb
|
392
394
|
- lib/awspec/helper/finder/security_group.rb
|
393
395
|
- lib/awspec/helper/finder/ses.rb
|
396
|
+
- lib/awspec/helper/finder/sqs.rb
|
394
397
|
- lib/awspec/helper/finder/subnet.rb
|
395
398
|
- lib/awspec/helper/finder/vpc.rb
|
396
399
|
- lib/awspec/helper/finder/waf.rb
|
@@ -475,6 +478,7 @@ files:
|
|
475
478
|
- lib/awspec/stub/s3_bucket.rb
|
476
479
|
- lib/awspec/stub/security_group.rb
|
477
480
|
- lib/awspec/stub/ses_identity.rb
|
481
|
+
- lib/awspec/stub/sqs.rb
|
478
482
|
- lib/awspec/stub/subnet.rb
|
479
483
|
- lib/awspec/stub/vpc.rb
|
480
484
|
- lib/awspec/stub/vpn_connection.rb
|
@@ -535,6 +539,7 @@ files:
|
|
535
539
|
- lib/awspec/type/security_group.rb
|
536
540
|
- lib/awspec/type/ses_identity.rb
|
537
541
|
- lib/awspec/type/ses_send_quota.rb
|
542
|
+
- lib/awspec/type/sqs.rb
|
538
543
|
- lib/awspec/type/subnet.rb
|
539
544
|
- lib/awspec/type/vpc.rb
|
540
545
|
- lib/awspec/type/vpn_connection.rb
|