glitter 2.0.0 → 2.0.1

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ff2fd93522c2e643fe29153618ca0ffec34bb426
4
+ data.tar.gz: cbfa68a7f78a0c2859eb18dc253dfcac0096de7b
5
+ SHA512:
6
+ metadata.gz: 3e34044f36f949f282290d9764ebee24538fd49c3a54f1ee2e79905b54efc087bf7a358944611c75083b8f8ce386709b0b62fdd2d95f1de62aa2abf8deacdbdf
7
+ data.tar.gz: e22c4af7cb00c0e710825e00cfe45dfe4169ef0baa79f08603b544dee15218aeb62cb767244c893dac07ad9b90c10247e4027b81ad8397932457125b139d744b
data/README.md CHANGED
@@ -12,7 +12,7 @@ Glitter also supports the concepts of release channels, which makes it possible
12
12
  1. Install the gem.
13
13
 
14
14
  ```sh
15
- $ gem install glitter --pre
15
+ $ gem install glitter
16
16
  ```
17
17
 
18
18
  2. Publish your app to the web.
@@ -22,7 +22,7 @@ Glitter also supports the concepts of release channels, which makes it possible
22
22
  AWS_SECRET_ACCESS_KEY=access_key_id \
23
23
  AWS_BUCKET_NAME=my-app-bucket \
24
24
  glitter push my-app.dmg -v 1.2.5 -c "mac-edge" \
25
- -m 'Added some really cool stuff to the mix!'
25
+ -n 'Added some really cool stuff to the mix!'
26
26
 
27
27
  Pushing app my-app.dmg to https://s3.amazonaws.com/mac-edge/1.2.5/my-app.dmg
28
28
  Updated head https://s3.amazonaws.com/mac-edge/my-app.dmg to https://s3.amazonaws.com/mac-edge/1.2.5/my-app.dmg
@@ -38,6 +38,23 @@ Glitter also supports the concepts of release channels, which makes it possible
38
38
 
39
39
  Now send your users to mydomain.com/my-app.zip and they'll get the latest version of your app. I don't recommend using a CNAME with your application because it won't work with Amazon's HTTPS servers and you'll have to jump through some hoops to sign your app distributions with a DSA signature. Not worth it in my opinion.
40
40
 
41
+ ## Publishing multiple assets
42
+
43
+ More complex installers may need to push more than one asset up to the web. For example, a .NET application will have a setup.exe installer that runs either a 64-bit or 32-bit MSI installer. To that, provide multiple paths to the CLI. *The first asset will be interpolated into the appcast.xml file*, so make sure its your setup file. Everything else will simply tag along for the ride.
44
+
45
+ ```sh
46
+ $ AWS_ACCESS_KEY_ID=secret_access_key \
47
+ AWS_SECRET_ACCESS_KEY=access_key_id \
48
+ AWS_BUCKET_NAME=my-app-bucket \
49
+ glitter push my-app.exe my-app-64-bit.msi my-app-32-bit.msi -v 1.2.5 -c "mac-edge" \
50
+ -n 'Added some really cool stuff to the mix!'
51
+
52
+ Pushing app my-app.dmg to https://s3.amazonaws.com/mac-edge/1.2.5/my-app.dmg
53
+ Updated head https://s3.amazonaws.com/mac-edge/my-app.dmg to https://s3.amazonaws.com/mac-edge/1.2.5/my-app.dmg
54
+ ```
55
+
56
+ Remember, you'll only want one main installation or package file per channel. If you need multiple installers or packages, consider setting up different channels.
57
+
41
58
  # Contribute
42
59
 
43
60
  Want to hack on glitter? Awesome! You'll need to setup an S3 bucket and run specs with the `AWS_URL` env var specified:
@@ -65,6 +82,10 @@ foreman run bundle exec rspec
65
82
 
66
83
  Pretty sweet eh? That's it!
67
84
 
85
+ # Upgrading from Glitter 1.x?
86
+
87
+ Glitter 2.0 is not backwards compatible with Glitter 1.x. To migrate from 1.x you'll need to specify a release channel like `my-app-production`, note the URL of the binary asset here, and manually change the 1.0 appcast.xml entry to point to the new Glitter 2.0 release channel.
88
+
68
89
  # License
69
90
 
70
91
  Copyright (C) 2011 by Brad Gessler
@@ -8,10 +8,17 @@ module Glitter
8
8
  method_option :channel, :type => :string, :aliases => "-c", :required => true
9
9
  method_option :notes, :type => :string, :aliases => "-n"
10
10
  method_option :force, :type => :boolean, :aliases => "-f"
11
- def push(executable_path)
11
+ def push(executable_path, *asset_paths)
12
12
  release = Release::Sparkle.new(channel, options.version)
13
13
  release.notes = options.notes
14
14
  release.executable = File.open executable_path
15
+ # For more complex releases, additional assets may need to go out with the build.
16
+ asset_paths.each do |path|
17
+ release.assets[File.basename(path)].tap do |asset|
18
+ asset.content = File.open path
19
+ asset.content_type = 'application/octet-stream'
20
+ end
21
+ end
15
22
  release.push(:force => options.force).head
16
23
  end
17
24
 
@@ -1,3 +1,3 @@
1
1
  module Glitter
2
- VERSION = "2.0.0"
2
+ VERSION = "2.0.1"
3
3
  end
metadata CHANGED
@@ -1,49 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
5
- prerelease:
4
+ version: 2.0.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Brad Gessler, Thomas Hanley
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-06 00:00:00.000000000 Z
11
+ date: 2013-10-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: s3
16
- requirement: &70167103492660 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *70167103492660
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: haml
27
- requirement: &70167103491140 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - '>='
31
32
  - !ruby/object:Gem::Version
32
33
  version: '0'
33
34
  type: :runtime
34
35
  prerelease: false
35
- version_requirements: *70167103491140
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
36
41
  - !ruby/object:Gem::Dependency
37
42
  name: thor
38
- requirement: &70167103488980 !ruby/object:Gem::Requirement
39
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
40
44
  requirements:
41
- - - ! '>='
45
+ - - '>='
42
46
  - !ruby/object:Gem::Version
43
47
  version: '0'
44
48
  type: :runtime
45
49
  prerelease: false
46
- version_requirements: *70167103488980
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
47
55
  description: Glitter makes it easy to publish software updates via the Sparkle framework
48
56
  by using S3 buckets.
49
57
  email:
@@ -73,29 +81,27 @@ files:
73
81
  - spec/spec_helper.rb
74
82
  homepage: https://github.com/polleverywhere/glitter
75
83
  licenses: []
84
+ metadata: {}
76
85
  post_install_message:
77
86
  rdoc_options: []
78
87
  require_paths:
79
88
  - lib
80
89
  required_ruby_version: !ruby/object:Gem::Requirement
81
- none: false
82
90
  requirements:
83
- - - ! '>='
91
+ - - '>='
84
92
  - !ruby/object:Gem::Version
85
93
  version: '0'
86
94
  required_rubygems_version: !ruby/object:Gem::Requirement
87
- none: false
88
95
  requirements:
89
- - - ! '>='
96
+ - - '>='
90
97
  - !ruby/object:Gem::Version
91
98
  version: '0'
92
99
  requirements: []
93
100
  rubyforge_project: glitter
94
- rubygems_version: 1.8.3
101
+ rubygems_version: 2.0.3
95
102
  signing_key:
96
- specification_version: 3
103
+ specification_version: 4
97
104
  summary: Publish Mac software updates with the Sparkle framework and Amazon S3.
98
105
  test_files:
99
106
  - spec/lib/glitter_spec.rb
100
107
  - spec/spec_helper.rb
101
- has_rdoc: