isolate-heroku 1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/LICENSE +24 -0
  2. data/README +17 -0
  3. data/lib/isolate/heroku.rb +27 -0
  4. metadata +84 -0
data/LICENSE ADDED
@@ -0,0 +1,24 @@
1
+ Copyright (c) 2010, Jamie Macey <jamie.ruby @ tracefunc.com>
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions are met:
6
+ * Redistributions of source code must retain the above copyright
7
+ notice, this list of conditions and the following disclaimer.
8
+ * Redistributions in binary form must reproduce the above copyright
9
+ notice, this list of conditions and the following disclaimer in the
10
+ documentation and/or other materials provided with the distribution.
11
+ * Neither the name of the <organization> nor the
12
+ names of its contributors may be used to endorse or promote products
13
+ derived from this software without specific prior written permission.
14
+
15
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
16
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
+ DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
19
+ DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22
+ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
data/README ADDED
@@ -0,0 +1,17 @@
1
+ This gem will rebuild your .gems file for Heroku to match the current
2
+ contents of your Isolate file each time it is loaded.
3
+
4
+ Recommended installation is:
5
+
6
+ # Isolate
7
+ gem "isolate-heroku"
8
+
9
+ # early in your app loading cycle
10
+ require "isolate/now"
11
+ require "isolate/heroku"
12
+
13
+ Note that this plugin will only make changes to your local .gems file,
14
+ you still need to commit it yourself.
15
+
16
+ See http://www.jbarnette.com/2010/06/26/isolate-on-heroku.html for
17
+ original motivation.
@@ -0,0 +1,27 @@
1
+ require "digest/md5"
2
+ require "isolate"
3
+
4
+ unless ENV.keys.any? { |k| /^heroku/i =~ k }
5
+ digest = File.file?(".gems") && Digest::MD5.hexdigest(File.read ".gems")
6
+
7
+ File.open ".gems", "wb" do |f|
8
+ f.puts "isolate --version '= #{Isolate::VERSION}'"
9
+
10
+ Isolate.sandbox.entries.each do |entry|
11
+ next unless entry.matches? "production"
12
+
13
+ gem = [entry.name]
14
+ gem << "--version '#{entry.requirement}'"
15
+
16
+ if entry.options[:source]
17
+ gem << "--source #{entry.options[:source]}"
18
+ end
19
+
20
+ f.puts gem.join(" ")
21
+ end
22
+ end
23
+
24
+ unless digest == Digest::MD5.hexdigest(File.read ".gems")
25
+ warn ".gems has changed! Don't forget to commit it."
26
+ end
27
+ end
metadata ADDED
@@ -0,0 +1,84 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: isolate-heroku
3
+ version: !ruby/object:Gem::Version
4
+ hash: 13
5
+ prerelease: false
6
+ segments:
7
+ - 1
8
+ - 1
9
+ version: "1.1"
10
+ platform: ruby
11
+ authors:
12
+ - Jamie Macey
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-09-17 00:00:00 -07:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: isolate
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ description: Automatically keeps your .gems file up to date any time you change your Isolated dependencies and run the application locally
35
+ email:
36
+ - jamie.ruby@tracefunc.com
37
+ executables: []
38
+
39
+ extensions: []
40
+
41
+ extra_rdoc_files: []
42
+
43
+ files:
44
+ - lib/isolate/heroku.rb
45
+ - LICENSE
46
+ - README
47
+ has_rdoc: true
48
+ homepage: http://github.com/jamie/isolate-heroku
49
+ licenses: []
50
+
51
+ post_install_message:
52
+ rdoc_options: []
53
+
54
+ require_paths:
55
+ - lib
56
+ required_ruby_version: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ hash: 3
62
+ segments:
63
+ - 0
64
+ version: "0"
65
+ required_rubygems_version: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ hash: 23
71
+ segments:
72
+ - 1
73
+ - 3
74
+ - 6
75
+ version: 1.3.6
76
+ requirements: []
77
+
78
+ rubyforge_project:
79
+ rubygems_version: 1.3.7
80
+ signing_key:
81
+ specification_version: 3
82
+ summary: Automatically regenerate .gems file for Heroku from Isolate sandbox
83
+ test_files: []
84
+