zen_garden 0.0.2 → 0.0.5
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/.travis.yml +2 -0
- data/Gemfile.lock +18 -1
- data/README.md +4 -0
- data/lib/tasks/db.rake +1 -1
- data/lib/tasks/deploy.rake +4 -4
- data/lib/tasks/test.rake +29 -0
- data/lib/zen_garden/bundle_command.rb +7 -0
- data/lib/zen_garden/env_file.rb +26 -0
- data/lib/zen_garden/version.rb +1 -1
- data/lib/zen_garden.rb +1 -0
- data/zen_garden.gemspec +1 -0
- metadata +19 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 654f7a8a6967ab76ceb51ea5850e290dff6dac83
|
4
|
+
data.tar.gz: d0857fe9ff7bd698ff35654b9c1ae405dadb7999
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d386d27907b78deec77c4b69887171628156a8732cec536d9cd988521518f3223b07a2e6d826b55e44da33fdde6c3fb2a6b7f544c635c2fa678e0776064cf196
|
7
|
+
data.tar.gz: a15ad7a15b3a3482e77e858c0a782cfaec904382ca1b2255129167afc9788e2878f2f61c142ea376be4ee40c1cea7843ef0d0936c5ecdb561c14665f9fff43cf
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
zen_garden (0.0.
|
4
|
+
zen_garden (0.0.5)
|
5
|
+
heroku
|
5
6
|
rails (>= 3.0.0)
|
6
7
|
rake
|
7
8
|
|
@@ -32,19 +33,32 @@ GEM
|
|
32
33
|
multi_json (~> 1.3)
|
33
34
|
thread_safe (~> 0.1)
|
34
35
|
tzinfo (~> 0.3.37)
|
36
|
+
addressable (2.3.5)
|
35
37
|
arel (4.0.1)
|
36
38
|
atomic (1.1.14)
|
37
39
|
builder (3.1.4)
|
38
40
|
diff-lcs (1.2.5)
|
39
41
|
erubis (2.7.0)
|
42
|
+
excon (0.25.3)
|
43
|
+
heroku (3.0.1)
|
44
|
+
heroku-api (~> 0.3.7)
|
45
|
+
launchy (>= 0.3.2)
|
46
|
+
netrc (~> 0.7.7)
|
47
|
+
rest-client (~> 1.6.1)
|
48
|
+
rubyzip
|
49
|
+
heroku-api (0.3.15)
|
50
|
+
excon (~> 0.25.1)
|
40
51
|
hike (1.2.3)
|
41
52
|
i18n (0.6.5)
|
53
|
+
launchy (2.4.0)
|
54
|
+
addressable (~> 2.3)
|
42
55
|
mail (2.5.4)
|
43
56
|
mime-types (~> 1.16)
|
44
57
|
treetop (~> 1.4.8)
|
45
58
|
mime-types (1.25)
|
46
59
|
minitest (4.7.5)
|
47
60
|
multi_json (1.8.2)
|
61
|
+
netrc (0.7.7)
|
48
62
|
polyglot (0.3.3)
|
49
63
|
rack (1.5.2)
|
50
64
|
rack-test (0.6.2)
|
@@ -63,6 +77,8 @@ GEM
|
|
63
77
|
rake (>= 0.8.7)
|
64
78
|
thor (>= 0.18.1, < 2.0)
|
65
79
|
rake (10.1.0)
|
80
|
+
rest-client (1.6.7)
|
81
|
+
mime-types (>= 1.16)
|
66
82
|
rspec (2.14.1)
|
67
83
|
rspec-core (~> 2.14.0)
|
68
84
|
rspec-expectations (~> 2.14.0)
|
@@ -71,6 +87,7 @@ GEM
|
|
71
87
|
rspec-expectations (2.14.4)
|
72
88
|
diff-lcs (>= 1.1.3, < 2.0)
|
73
89
|
rspec-mocks (2.14.4)
|
90
|
+
rubyzip (1.1.0)
|
74
91
|
sprockets (2.10.0)
|
75
92
|
hike (~> 1.2)
|
76
93
|
multi_json (~> 1.0)
|
data/README.md
CHANGED
@@ -10,6 +10,10 @@ Travis as part of your continous deployment workflow.
|
|
10
10
|
installed, also notifies it of the deploy.
|
11
11
|
- **rake db** uses database.yml to figure out your username, then
|
12
12
|
creates a username and sets up the database with your schema.
|
13
|
+
- **rake test** will be written if Rails doesn't implement its own test
|
14
|
+
tasks, and create a combo task for RSpec and Teaspoon, as well as
|
15
|
+
include the RSpec and Teaspoon Rake tasks if they haven't already been
|
16
|
+
included.
|
13
17
|
|
14
18
|
## Usage
|
15
19
|
|
data/lib/tasks/db.rake
CHANGED
data/lib/tasks/deploy.rake
CHANGED
@@ -1,15 +1,15 @@
|
|
1
|
-
require 'zen_garden'
|
1
|
+
require 'zen_garden/ssh'
|
2
|
+
require 'zen_garden/bundle_command'
|
2
3
|
|
3
4
|
namespace :deploy do
|
4
|
-
include ZenGarden::SSH
|
5
|
+
include ZenGarden::SSH, ZenGarden::BundleCommand
|
5
6
|
|
6
7
|
task :ssh_configuration do
|
7
8
|
write_ssh_config unless ssh_config_exists?
|
8
9
|
end
|
9
10
|
|
10
11
|
task :heroku_keys do
|
11
|
-
|
12
|
-
sh 'yes | heroku keys:add'
|
12
|
+
bundle_exec 'heroku keys:clear', 'heroku keys:add'
|
13
13
|
end
|
14
14
|
|
15
15
|
task :application_to_heroku do
|
data/lib/tasks/test.rake
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'zen_garden/env_file'
|
2
|
+
|
3
|
+
namespace :test do
|
4
|
+
desc "Encrypt credentials for the testing environment on CI"
|
5
|
+
task :credentials => :environment do
|
6
|
+
project = ENV['TRAVIS_PROJECT_NAME']
|
7
|
+
env = ZenGarden::EnvFile.new "#{Rails.root}/.env"
|
8
|
+
|
9
|
+
env.exports do |key,value|
|
10
|
+
sh "travis encrypt #{project} '#{key}=#{value}'"
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
unless defined? Rails::TestUnitRailtie
|
17
|
+
begin
|
18
|
+
require 'rspec/core/rake_task'
|
19
|
+
|
20
|
+
if defined? Teaspoon
|
21
|
+
RSpec::Core::RakeTask.new :spec
|
22
|
+
|
23
|
+
desc "Run RSpec and Teaspoon code examples"
|
24
|
+
task :test => %w(spec teaspoon)
|
25
|
+
else
|
26
|
+
RSpec::Core::RakeTask.new :test
|
27
|
+
end
|
28
|
+
rescue LoadError; end
|
29
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module ZenGarden
|
2
|
+
class EnvFile
|
3
|
+
attr_reader :location
|
4
|
+
|
5
|
+
def initialize location=".env"
|
6
|
+
@location = location
|
7
|
+
|
8
|
+
raise ArgumentError, "Env file not found" unless exists?
|
9
|
+
end
|
10
|
+
|
11
|
+
def exports
|
12
|
+
contents.select { |line| line =~ /\Aexport\s/ }
|
13
|
+
.map { |line| line.gsub(/\Aexport\s/, '').split '=' }
|
14
|
+
.reduce({}) { |hash,(key,value)| hash.merge key => value }
|
15
|
+
end
|
16
|
+
|
17
|
+
def contents
|
18
|
+
@contents ||= File.read(location).split "\n"
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
def exists?
|
23
|
+
File.exists? location
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/zen_garden/version.rb
CHANGED
data/lib/zen_garden.rb
CHANGED
data/zen_garden.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zen_garden
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Scott
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-11-
|
11
|
+
date: 2013-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: heroku
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: sqlite3
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,10 +100,13 @@ files:
|
|
86
100
|
- config/routes.rb
|
87
101
|
- lib/tasks/db.rake
|
88
102
|
- lib/tasks/deploy.rake
|
103
|
+
- lib/tasks/test.rake
|
89
104
|
- lib/tasks/zen_garden_tasks.rake
|
90
105
|
- lib/zen_garden.rb
|
106
|
+
- lib/zen_garden/bundle_command.rb
|
91
107
|
- lib/zen_garden/database.rb
|
92
108
|
- lib/zen_garden/engine.rb
|
109
|
+
- lib/zen_garden/env_file.rb
|
93
110
|
- lib/zen_garden/ssh.rb
|
94
111
|
- lib/zen_garden/version.rb
|
95
112
|
- spec/dummy/README.rdoc
|