cf-s3-invalidator 0.3.3 → 0.3.4
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.
data/README.md
CHANGED
@@ -29,9 +29,12 @@ Then you can just run:
|
|
29
29
|
|
30
30
|
## Development
|
31
31
|
|
32
|
-
|
32
|
+
[]
|
33
|
+
(http://travis-ci.org/laurilehmijoki/cf-s3-invalidator)
|
33
34
|
|
34
|
-
|
35
|
+
Run tests:
|
36
|
+
|
37
|
+
`rake test`
|
35
38
|
|
36
39
|
## License
|
37
40
|
|
data/Rakefile
ADDED
data/cf-s3-invalidator.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'cf-s3-invalidator'
|
3
|
-
s.version = '0.3.
|
3
|
+
s.version = '0.3.4'
|
4
4
|
s.summary = 'A tool for invalidating AWS S3-based Cloudfront distributions'
|
5
5
|
s.description =
|
6
6
|
'This lib fetches the names of all objects on an Amazon Web
|
@@ -16,7 +16,9 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.homepage = 'https://github.com/laurilehmijoki/cf-s3-invalidator'
|
17
17
|
|
18
18
|
s.add_dependency 'aws-sdk'
|
19
|
+
s.add_dependency 'colored'
|
19
20
|
|
20
21
|
s.add_development_dependency 'cucumber'
|
22
|
+
s.add_development_dependency 'rake'
|
21
23
|
s.add_development_dependency 'aruba', '>= 0.4.7'
|
22
24
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Feature: cloudfront-s3-invalidator CLI help
|
2
2
|
In order to use the invalidator
|
3
3
|
As a geek
|
4
|
-
I want to run cf-s3-inv and see
|
4
|
+
I want to run cf-s3-inv and see instructions for using the software
|
5
5
|
|
6
6
|
Scenario: Run cf-s3-inv without arguments and the configuration file
|
7
7
|
When I run `cf-s3-inv`
|
@@ -2,7 +2,7 @@ Feature: cloudfront-s3-invalidator without AWS credentials
|
|
2
2
|
|
3
3
|
In order to invalidate my S3-based Cloudfront distribution
|
4
4
|
As a geek without AWS credentials
|
5
|
-
I want to run cf-s3-inv and see
|
5
|
+
I want to run cf-s3-inv and see that it tells me I have no valid credentials
|
6
6
|
|
7
7
|
Scenario: Run cf-s3-inv with the configuration file that has invalid AWS access key
|
8
8
|
Given a file named "_cf_s3_invalidator.yml" with:
|
@@ -13,14 +13,14 @@ Feature: cloudfront-s3-invalidator without AWS credentials
|
|
13
13
|
cloudfront_distribution_id: CF_ID
|
14
14
|
"""
|
15
15
|
When I run `cf-s3-inv`
|
16
|
-
|
16
|
+
Then the output should contain:
|
17
17
|
"""
|
18
18
|
The AWS Access Key Id you provided does not exist in our records. (AWS::S3::Errors::InvalidAccessKeyId)
|
19
19
|
"""
|
20
20
|
|
21
21
|
Scenario: Run cf-s3-inv with CLI arguments containing invalid AWS access key
|
22
22
|
When I run `cf-s3-inv --key invalid-aws-key --secret invalid-aws-secret --bucket some-bucket --distribution some-dist`
|
23
|
-
|
23
|
+
Then the output should contain:
|
24
24
|
"""
|
25
25
|
The AWS Access Key Id you provided does not exist in our records. (AWS::S3::Errors::InvalidAccessKeyId)
|
26
26
|
"""
|
data/features/support/env.rb
CHANGED
@@ -9,10 +9,14 @@ require 'cucumber/rspec/doubles'
|
|
9
9
|
# Following from 'aruba/cucumber'
|
10
10
|
Before do
|
11
11
|
@__aruba_original_paths = (ENV['PATH'] || '').split(File::PATH_SEPARATOR)
|
12
|
-
|
13
|
-
|
12
|
+
ENV['PATH'] = ([File.expand_path('bin')] + @__aruba_original_paths).join(File::PATH_SEPARATOR)
|
13
|
+
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
15
|
+
After do
|
16
|
+
ENV['PATH'] = @__aruba_original_paths.join(File::PATH_SEPARATOR)
|
17
|
+
end
|
18
|
+
|
19
|
+
Before do
|
20
|
+
@aruba_timeout_seconds = 10
|
21
|
+
end
|
18
22
|
# End of following from 'aruba/cucumber'
|
@@ -1,7 +1,9 @@
|
|
1
|
+
require 'rubygems'
|
1
2
|
require 'openssl'
|
2
3
|
require 'digest/sha1'
|
3
4
|
require 'net/https'
|
4
5
|
require 'base64'
|
6
|
+
require 'colored'
|
5
7
|
|
6
8
|
# Adapted from:
|
7
9
|
# Confabulus @ http://blog.confabulus.com/2011/05/13/cloudfront-invalidation-from-ruby
|
@@ -45,14 +47,14 @@ class CloudfrontInvalidator
|
|
45
47
|
|
46
48
|
def print_operation_result(http_response, items)
|
47
49
|
success = http_response.code == '201'
|
48
|
-
puts "Invalidating Cloudfront items"
|
50
|
+
puts "Invalidating Cloudfront items".cyan
|
49
51
|
items.each do |item|
|
50
|
-
puts " #{item}"
|
52
|
+
puts " #{item}".blue
|
51
53
|
end
|
52
54
|
if success
|
53
|
-
puts "succeeded"
|
55
|
+
puts "succeeded".green.bold
|
54
56
|
else
|
55
|
-
puts "FAILED, reason:"
|
57
|
+
puts "FAILED, reason:".red
|
56
58
|
puts http_response.body
|
57
59
|
end
|
58
60
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cf-s3-invalidator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 27
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 0.3.
|
9
|
+
- 4
|
10
|
+
version: 0.3.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Lauri Lehmijoki
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-07-
|
18
|
+
date: 2012-07-05 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: aws-sdk
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
type: :runtime
|
33
33
|
version_requirements: *id001
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
|
-
name:
|
35
|
+
name: colored
|
36
36
|
prerelease: false
|
37
37
|
requirement: &id002 !ruby/object:Gem::Requirement
|
38
38
|
none: false
|
@@ -43,12 +43,40 @@ dependencies:
|
|
43
43
|
segments:
|
44
44
|
- 0
|
45
45
|
version: "0"
|
46
|
-
type: :
|
46
|
+
type: :runtime
|
47
47
|
version_requirements: *id002
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
|
-
name:
|
49
|
+
name: cucumber
|
50
50
|
prerelease: false
|
51
51
|
requirement: &id003 !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
hash: 3
|
57
|
+
segments:
|
58
|
+
- 0
|
59
|
+
version: "0"
|
60
|
+
type: :development
|
61
|
+
version_requirements: *id003
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: rake
|
64
|
+
prerelease: false
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
hash: 3
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
version: "0"
|
74
|
+
type: :development
|
75
|
+
version_requirements: *id004
|
76
|
+
- !ruby/object:Gem::Dependency
|
77
|
+
name: aruba
|
78
|
+
prerelease: false
|
79
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
52
80
|
none: false
|
53
81
|
requirements:
|
54
82
|
- - ">="
|
@@ -60,7 +88,7 @@ dependencies:
|
|
60
88
|
- 7
|
61
89
|
version: 0.4.7
|
62
90
|
type: :development
|
63
|
-
version_requirements: *
|
91
|
+
version_requirements: *id005
|
64
92
|
description: |-
|
65
93
|
This lib fetches the names of all objects on an Amazon Web
|
66
94
|
Services S3 bucket. Then it calls the Cloudfront invalidation REST API on the
|
@@ -78,6 +106,7 @@ files:
|
|
78
106
|
- .gitignore
|
79
107
|
- Gemfile
|
80
108
|
- README.md
|
109
|
+
- Rakefile
|
81
110
|
- bin/cf-s3-inv
|
82
111
|
- cf-s3-invalidator.gemspec
|
83
112
|
- features/cloudfront-s3-invalidator-help.feature
|