glitter 2.1.0 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0b43879ebbac63bd80e1dfbf64aeed785270b499
4
- data.tar.gz: 660add5d3cf34ad23c49afd47b33d5a5658a2a5d
2
+ SHA256:
3
+ metadata.gz: 3db883076a34eaebb62b1959ebd34fbd705aa60bacf6d4a500017e121c2230d0
4
+ data.tar.gz: bf899d58b3cea229c933dd839132a517c8cd4f13c8fd6d8c9a1a84fc91e3a921
5
5
  SHA512:
6
- metadata.gz: ccd3f05a997766bbd0dc2650d3c967984a74633d2806d368f4aec38e80405f764f562215e9810f4e6d2547790f6864d7994efc4debf8192752b70335459ad500
7
- data.tar.gz: 2dbd3a334009fec2066d376887c4ac1de5ea8be6ede887b541af7f6edaf4630d993cd17fd4ad7a1de7a1c0bfe4718b164a7861e257bd355a2ca867ca893fc130
6
+ metadata.gz: 06e82efa096f2c1a3828522f37b14ef69d1c8bea120a722064f7d10e1d3d290563ed68414453cafbc51a2aa59b3802c29cdf8a5acd0fde11975ae476022f73fe
7
+ data.tar.gz: d28b8f8cd33a5e5f58aab1d406d2b57921c8efeae5caefa02ba116eae999939f3df4d5a1696f83b4689cf919715c0bba28188e8ff5c5eef05c8e444831395a13
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.4.1
1
+ 2.7.4
data/glitter.gemspec CHANGED
@@ -11,11 +11,13 @@ Gem::Specification.new do |s|
11
11
  s.homepage = "https://github.com/polleverywhere/glitter"
12
12
  s.summary = %q{Publish Mac software updates with the Sparkle framework and Amazon S3.}
13
13
  s.description = %q{Glitter makes it easy to publish software updates via the Sparkle framework by using S3 buckets.}
14
+ s.licenses = ['MIT']
14
15
 
15
16
  s.rubyforge_project = "glitter"
16
- s.add_dependency "s3"
17
- s.add_dependency "haml"
18
- s.add_dependency "thor"
17
+ s.required_ruby_version = ">= 2.0.0"
18
+ s.add_dependency "s3", "~> 0.3"
19
+ s.add_dependency "haml", "~> 3.0"
20
+ s.add_dependency "thor", "~> 1.0"
19
21
 
20
22
  s.files = `git ls-files`.split("\n")
21
23
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
data/lib/glitter/cli.rb CHANGED
@@ -7,9 +7,10 @@ module Glitter
7
7
  method_option :version, :type => :string, :aliases => "-v", :required => true
8
8
  method_option :channel, :type => :string, :aliases => "-c", :required => true
9
9
  method_option :notes, :type => :string, :aliases => "-n"
10
- method_option :force, :type => :boolean, :aliases => "-f"
11
10
  method_option :bundle_version, :type => :string, :aliases => "-b"
12
11
  method_option :minimum_system_version, :type => :string, :aliases => "-m"
12
+ method_option :force, :type => :boolean, :aliases => "-f"
13
+ method_option :timeout, :type => :numeric, :aliases => "-t", :default => Server::DEFAULT_S3_TIMEOUT
13
14
  def push(executable_path, *asset_paths)
14
15
  release = Release::Sparkle.new(channel, options.version)
15
16
  release.minimum_system_version = options.minimum_system_version
@@ -52,7 +53,7 @@ module Glitter
52
53
  end
53
54
 
54
55
  def server
55
- @server ||= Server.new
56
+ @server ||= Server.new(timeout: options.timeout)
56
57
  end
57
58
  end
58
59
  end
@@ -5,10 +5,15 @@ require 'uri'
5
5
  # contain multiple releases of software.
6
6
  module Glitter
7
7
  class Server
8
- attr_reader :access_key_id, :secret_access_key, :bucket_name
8
+ attr_reader :access_key_id, :secret_access_key, :bucket_name, :timeout
9
9
 
10
- def initialize(access_key_id = ENV['AWS_ACCESS_KEY_ID'], secret_access_key = ENV['AWS_SECRET_ACCESS_KEY'], bucket_name = ENV['AWS_BUCKET_NAME'])
11
- @access_key_id, @secret_access_key, @bucket_name = access_key_id, secret_access_key, bucket_name
10
+ DEFAULT_S3_TIMEOUT = 60
11
+
12
+ def initialize(access_key_id = ENV['AWS_ACCESS_KEY_ID'], secret_access_key = ENV['AWS_SECRET_ACCESS_KEY'], bucket_name = ENV['AWS_BUCKET_NAME'], timeout: DEFAULT_S3_TIMEOUT)
13
+ @access_key_id = access_key_id
14
+ @secret_access_key = secret_access_key
15
+ @bucket_name = bucket_name
16
+ @timeout = timeout
12
17
  end
13
18
 
14
19
  def channel(name)
@@ -35,7 +40,7 @@ module Glitter
35
40
  end
36
41
 
37
42
  def s3
38
- @s3 ||= ::S3::Service.new(:access_key_id => access_key_id, :secret_access_key => secret_access_key, :use_ssl => true)
43
+ @s3 ||= ::S3::Service.new(access_key_id: access_key_id, secret_access_key: secret_access_key, timeout: timeout, use_ssl: true)
39
44
  end
40
45
  end
41
- end
46
+ end
@@ -1,3 +1,3 @@
1
1
  module Glitter
2
- VERSION = "2.1.0"
2
+ VERSION = "2.2.0"
3
3
  end
@@ -2,18 +2,15 @@ require 'spec_helper'
2
2
  require 'rexml/document'
3
3
 
4
4
  describe Glitter do
5
- let(:server) do
6
- Glitter::Server.new
7
- end
8
5
 
9
- # Note that running this spec *will* upload a single file to your S3 bucket
10
- it "should release to channel" do
11
- Glitter::Release::Sparkle.new server.channel('test-channel'), "1.1.2-#{rand}" do |r|
12
- r.executable = File.open(__FILE__)
13
- r.notes = %[Did you know that its #{Time.now}? Wait, you can only answer yes to that question.]
14
- r.minimum_system_version = "10.10"
15
- end.push.head
16
- end
6
+ # # Note that uncommenting and running this spec *will* upload a single file to your S3 bucket
7
+ # it "should release to channel" do
8
+ # Glitter::Release::Sparkle.new Glitter::Server.new.channel('test-channel'), "1.1.2-#{rand}" do |r|
9
+ # r.executable = File.open(__FILE__)
10
+ # r.notes = %[Did you know that its #{Time.now}? Wait, you can only answer yes to that question.]
11
+ # r.minimum_system_version = "10.10"
12
+ # end.push.head
13
+ # end
17
14
 
18
15
  it "AWS path segments are parsed correctly for an item at top level of version folder" do
19
16
  channel, version, key = Glitter::Release.object_segments("/channel/version/some-item")
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+ require 'rexml/document'
3
+
4
+ describe Glitter::Server do
5
+ describe "#new" do
6
+ context "No timeout flag is passed to the server constructor" do
7
+ let(:server) { Glitter::Server.new }
8
+
9
+ it "defaults to the default timeout" do
10
+ expect(server.timeout).to eq Glitter::Server::DEFAULT_S3_TIMEOUT
11
+ end
12
+ end
13
+
14
+ context "A timeout flag is passed to the server constructor" do
15
+ let(:server) { Glitter::Server.new(timeout: 10) }
16
+
17
+ it "will have a timeout value of the passed timeout flag" do
18
+ expect(server.timeout).to eq 10
19
+ end
20
+ end
21
+ end
22
+ end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brad Gessler, Thomas Hanley
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-15 00:00:00.000000000 Z
11
+ date: 2022-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: s3
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '0.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '0.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: haml
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '3.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: thor
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '1.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '1.0'
55
55
  description: Glitter makes it easy to publish software updates via the Sparkle framework
56
56
  by using S3 buckets.
57
57
  email:
@@ -79,9 +79,11 @@ files:
79
79
  - lib/glitter/templates/notes.html.erb
80
80
  - lib/glitter/version.rb
81
81
  - spec/lib/glitter_spec.rb
82
+ - spec/lib/server_spec.rb
82
83
  - spec/spec_helper.rb
83
84
  homepage: https://github.com/polleverywhere/glitter
84
- licenses: []
85
+ licenses:
86
+ - MIT
85
87
  metadata: {}
86
88
  post_install_message:
87
89
  rdoc_options: []
@@ -91,18 +93,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
91
93
  requirements:
92
94
  - - ">="
93
95
  - !ruby/object:Gem::Version
94
- version: '0'
96
+ version: 2.0.0
95
97
  required_rubygems_version: !ruby/object:Gem::Requirement
96
98
  requirements:
97
99
  - - ">="
98
100
  - !ruby/object:Gem::Version
99
101
  version: '0'
100
102
  requirements: []
101
- rubyforge_project: glitter
102
- rubygems_version: 2.6.13
103
+ rubygems_version: 3.1.6
103
104
  signing_key:
104
105
  specification_version: 4
105
106
  summary: Publish Mac software updates with the Sparkle framework and Amazon S3.
106
107
  test_files:
107
108
  - spec/lib/glitter_spec.rb
109
+ - spec/lib/server_spec.rb
108
110
  - spec/spec_helper.rb