madscience 0.0.27 → 0.0.28
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -1
- data/lib/madscience/version.rb +1 -1
- data/site-cookbooks/madscience-vagrant-cookbook/recipes/default.rb +39 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77cf959808d4818254eee6d230ed18dd68f19d70
|
4
|
+
data.tar.gz: 0ae73bcef31015732996c7e05c4e1cc59efbc8ad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 25b4330caeecac20f50d66e82da6b122c853de3c1221d8ade83487b323c633c75c9f696895c270ba5d930ad017301f9c22ef99115efcbb94256de65289dfd214
|
7
|
+
data.tar.gz: 8e5dcce3f1ac829d1fb24bf8d035c7788d4a2c5fc85eee54789f6d222bbb337a8ad9e16d3b3dcb669ae02e8534bb15b62e25e4051d8428220d8416598a2cefb1
|
data/README.md
CHANGED
@@ -5,6 +5,10 @@ development machine to a new local VM and a matching production environment.
|
|
5
5
|
It uses Vagrant, Chef and Capistrano. It stores deployment credentials under
|
6
6
|
your home directory in the .deploy_credentials subdirectory.
|
7
7
|
|
8
|
+
Most documentation is given with the base deploy repo:
|
9
|
+
"http://github.com/noahgibbs/madscience" and its wiki:
|
10
|
+
"https://github.com/noahgibbs/madscience/wiki".
|
11
|
+
|
8
12
|
The Mad Science Stack is based on a class called Rails Deploy In An Hour
|
9
13
|
(http://rails-deploy-in-an-hour.com), a paid product. This code is MIT
|
10
14
|
licensed, however, and can be used according to that license.
|
@@ -17,7 +21,7 @@ services like email, your own AWS deploy keys and so on if you need them.
|
|
17
21
|
When in doubt, run setup and look in the deploy credentials directory and
|
18
22
|
nodes/app-server.json.erb in the deploy repository. You can also read
|
19
23
|
documentation in the MadScience project Wiki:
|
20
|
-
https://github.com/noahgibbs/madscience/wiki
|
24
|
+
"https://github.com/noahgibbs/madscience/wiki"
|
21
25
|
|
22
26
|
It's also possible to purchase an online class with additional videos, example
|
23
27
|
configurations and documentation at "http://rails-deploy-in-an-hour.com" if you wish.
|
data/lib/madscience/version.rb
CHANGED
@@ -53,7 +53,7 @@ end
|
|
53
53
|
# URL sometimes seems not to be properly chosen by Vagrant cookbook
|
54
54
|
|
55
55
|
# I'm not going to require curl, but for this version of Vagrant, this is the output of
|
56
|
-
# curl https://dl.bintray.com/mitchellh/vagrant/1.7.1_SHA256SUMS?direct
|
56
|
+
# "curl -L https://dl.bintray.com/mitchellh/vagrant/1.7.1_SHA256SUMS?direct"
|
57
57
|
curl_output = <<-CURL
|
58
58
|
eaeb3ad6624ccaeaefa6fc7a77a2f5d9640ef9385c5eeebdb90602d5f2011176 vagrant_1.7.1.dmg
|
59
59
|
abab1db382be4c5d6b1e5aad96fb0909a559c3e500c5b2eb3f0c9178de7d1ac5 vagrant_1.7.1.msi
|
@@ -84,6 +84,44 @@ ENV['PATH'] = "/usr/bin:#{ENV['PATH']}"
|
|
84
84
|
include_recipe "vagrant"
|
85
85
|
include_recipe "virtualbox"
|
86
86
|
|
87
|
+
# HIDEOUS WORKAROUND:
|
88
|
+
# If you've previously installed Vagrant and manually uninstalled, the Vagrant
|
89
|
+
# installer will simply fail to install, quietly. D'oh!
|
90
|
+
# You have to manuall remove the package: sudo pkgutil --forget com.vagrant.vagrant
|
91
|
+
# But there are other reasons this could happen, so escalate to the user :-(
|
92
|
+
ruby_block "See if Vagrant just didn't install" do
|
93
|
+
block do
|
94
|
+
if !File.exist? "/opt/vagrant" || Dir["/opt/vagrant"].empty?
|
95
|
+
raise "Vagrant failed to install, but didn't raise an error! Uninstall manually and try again! http://docs.vagrantup.com/v2/installation/uninstallation.html"
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
# HIDEOUS WORKAROUND:
|
101
|
+
# When the phase of the moon is wrong, the Vagrant cookbook will
|
102
|
+
# install plugins to its own satisfaction, but they won't show up in
|
103
|
+
# "vagrant plugin list" or actually work. But re-running the Vagrant
|
104
|
+
# cookbook doesn't help, it thinks it's installed. Until debugged,
|
105
|
+
# escalate to user.
|
106
|
+
#
|
107
|
+
# Are you a user? If so, you can fix this by manually installing
|
108
|
+
# whatever plugins you don't see in "vagrant plugin list", from
|
109
|
+
# the set of node.default['vagrant']['plugins'] above. Be sure
|
110
|
+
# to install with the version given, like this:
|
111
|
+
#
|
112
|
+
# vagrant plugin install vagrant-whatever-plugin --plugin-version 1.2.3
|
113
|
+
|
114
|
+
ruby_block "See if Vagrant plugins just didn't install" do
|
115
|
+
ALL_PLUGINS = node.default['vagrant']['plugins'].map { |row| row['name'] }
|
116
|
+
block do
|
117
|
+
output = `/usr/bin/vagrant plugin list` || ""
|
118
|
+
missing_plugins = ALL_PLUGINS.select { |p| !output[p] }
|
119
|
+
unless missing_plugins.empty?
|
120
|
+
raise "Vagrant plugins not installed correctly: #{missing_plugins.inspect}! Uninstall Vagrant and re-run :-( http://docs.vagrantup.com/v2/installation/uninstallation.html"
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
87
125
|
##### Second, set up a local directory of deploy credentials if not already present.
|
88
126
|
|
89
127
|
# TODO: Test this on Windows
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: madscience
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Noah Gibbs
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|