engineyard-local 0.2.1 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +1 -0
- data/Gemfile.lock +73 -1
- data/README.md +40 -38
- data/config/dna.json +92 -66
- data/config/locales/en.yml +94 -9
- data/config/patches/chef-ey-1.1.336.patch +55 -0
- data/config/settings.yml +6 -1
- data/engineyard-local.gemspec +5 -4
- data/install/osx/README.md +42 -4
- data/install/osx/engineyard-local/engineyard-local.pkgproj +35 -6
- data/install/osx/images/dmg_background.png +0 -0
- data/install/osx/images/dmg_icon.icns +0 -0
- data/lib/engineyard-local.rb +64 -0
- data/lib/engineyard-local/command.rb +23 -0
- data/lib/engineyard-local/command/base.rb +78 -1
- data/lib/engineyard-local/command/group.rb +70 -6
- data/lib/engineyard-local/command/help.rb +36 -0
- data/lib/engineyard-local/command/helpers.rb +12 -0
- data/lib/engineyard-local/command/start.rb +26 -0
- data/lib/engineyard-local/command/status.rb +33 -0
- data/lib/engineyard-local/command/stop.rb +26 -0
- data/lib/engineyard-local/command/terminate.rb +26 -0
- data/lib/engineyard-local/command/up.rb +24 -15
- data/lib/engineyard-local/command/update.rb +42 -0
- data/lib/engineyard-local/middleware.rb +1 -0
- data/lib/engineyard-local/middleware/bundle.rb +1 -0
- data/lib/engineyard-local/middleware/chef.rb +52 -2
- data/lib/engineyard-local/middleware/cookbooks.rb +111 -0
- data/lib/engineyard-local/middleware/dna.rb +6 -4
- data/lib/engineyard-local/middleware/exec.rb +2 -1
- data/lib/engineyard-local/middleware/helpers/executable.rb +14 -2
- data/lib/engineyard-local/middleware/network.rb +3 -3
- data/lib/engineyard-local/middleware/rails.rb +1 -0
- data/lib/engineyard-local/middleware/rails/assets.rb +35 -0
- data/lib/engineyard-local/middleware/rails/command.rb +1 -1
- data/lib/engineyard-local/middleware/rails/db.rb +0 -1
- data/lib/engineyard-local/middleware/rails/new.rb +1 -1
- data/lib/engineyard-local/version.rb +1 -1
- data/test/engineyard-local/command/up_test.rb +1 -0
- data/test/integration/commands_test.rb +30 -0
- data/test/test_helper.rb +8 -2
- metadata +81 -70
- data/install/osx/images/eylocal_installer.png +0 -0
- data/test/integration/up_test.rb +0 -28
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,14 +1,43 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
engineyard-local (0.1
|
4
|
+
engineyard-local (0.2.1)
|
5
5
|
thor (~> 0.14.6)
|
6
6
|
vagrant (= 1.0.1)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: http://rubygems.org/
|
10
10
|
specs:
|
11
|
+
actionmailer (3.2.3)
|
12
|
+
actionpack (= 3.2.3)
|
13
|
+
mail (~> 2.4.4)
|
14
|
+
actionpack (3.2.3)
|
15
|
+
activemodel (= 3.2.3)
|
16
|
+
activesupport (= 3.2.3)
|
17
|
+
builder (~> 3.0.0)
|
18
|
+
erubis (~> 2.7.0)
|
19
|
+
journey (~> 1.0.1)
|
20
|
+
rack (~> 1.4.0)
|
21
|
+
rack-cache (~> 1.2)
|
22
|
+
rack-test (~> 0.6.1)
|
23
|
+
sprockets (~> 2.1.2)
|
24
|
+
activemodel (3.2.3)
|
25
|
+
activesupport (= 3.2.3)
|
26
|
+
builder (~> 3.0.0)
|
27
|
+
activerecord (3.2.3)
|
28
|
+
activemodel (= 3.2.3)
|
29
|
+
activesupport (= 3.2.3)
|
30
|
+
arel (~> 3.0.2)
|
31
|
+
tzinfo (~> 0.3.29)
|
32
|
+
activeresource (3.2.3)
|
33
|
+
activemodel (= 3.2.3)
|
34
|
+
activesupport (= 3.2.3)
|
35
|
+
activesupport (3.2.3)
|
36
|
+
i18n (~> 0.6)
|
37
|
+
multi_json (~> 1.0)
|
11
38
|
archive-tar-minitar (0.5.2)
|
39
|
+
arel (3.0.2)
|
40
|
+
builder (3.0.0)
|
12
41
|
childprocess (0.3.1)
|
13
42
|
ffi (~> 1.0.6)
|
14
43
|
columnize (0.3.6)
|
@@ -16,18 +45,51 @@ GEM
|
|
16
45
|
ffi (1.0.11)
|
17
46
|
fpm (0.3.11)
|
18
47
|
json
|
48
|
+
hike (1.2.1)
|
19
49
|
i18n (0.6.0)
|
50
|
+
journey (1.0.3)
|
20
51
|
json (1.5.4)
|
21
52
|
linecache19 (0.5.12)
|
22
53
|
ruby_core_source (>= 0.1.4)
|
23
54
|
log4r (1.1.10)
|
55
|
+
mail (2.4.4)
|
56
|
+
i18n (>= 0.4.0)
|
57
|
+
mime-types (~> 1.16)
|
58
|
+
treetop (~> 1.4.8)
|
24
59
|
metaclass (0.0.1)
|
60
|
+
mime-types (1.18)
|
25
61
|
mocha (0.10.5)
|
26
62
|
metaclass (~> 0.0.1)
|
63
|
+
multi_json (1.2.0)
|
27
64
|
net-scp (1.0.4)
|
28
65
|
net-ssh (>= 1.99.1)
|
29
66
|
net-ssh (2.2.2)
|
67
|
+
polyglot (0.3.3)
|
68
|
+
rack (1.4.1)
|
69
|
+
rack-cache (1.2)
|
70
|
+
rack (>= 0.4)
|
71
|
+
rack-ssl (1.3.2)
|
72
|
+
rack
|
73
|
+
rack-test (0.6.1)
|
74
|
+
rack (>= 1.0)
|
75
|
+
rails (3.2.3)
|
76
|
+
actionmailer (= 3.2.3)
|
77
|
+
actionpack (= 3.2.3)
|
78
|
+
activerecord (= 3.2.3)
|
79
|
+
activeresource (= 3.2.3)
|
80
|
+
activesupport (= 3.2.3)
|
81
|
+
bundler (~> 1.0)
|
82
|
+
railties (= 3.2.3)
|
83
|
+
railties (3.2.3)
|
84
|
+
actionpack (= 3.2.3)
|
85
|
+
activesupport (= 3.2.3)
|
86
|
+
rack-ssl (~> 1.3.2)
|
87
|
+
rake (>= 0.8.7)
|
88
|
+
rdoc (~> 3.4)
|
89
|
+
thor (~> 0.14.6)
|
30
90
|
rake (0.9.2.2)
|
91
|
+
rdoc (3.12)
|
92
|
+
json (~> 1.4)
|
31
93
|
ruby-debug-base19 (0.11.25)
|
32
94
|
columnize (>= 0.3.1)
|
33
95
|
linecache19 (>= 0.5.11)
|
@@ -39,7 +101,16 @@ GEM
|
|
39
101
|
ruby_core_source (0.1.5)
|
40
102
|
archive-tar-minitar (>= 0.5.2)
|
41
103
|
shoulda-context (1.0.0)
|
104
|
+
sprockets (2.1.2)
|
105
|
+
hike (~> 1.2)
|
106
|
+
rack (~> 1.0)
|
107
|
+
tilt (~> 1.1, != 1.3.0)
|
42
108
|
thor (0.14.6)
|
109
|
+
tilt (1.3.3)
|
110
|
+
treetop (1.4.10)
|
111
|
+
polyglot
|
112
|
+
polyglot (>= 0.3.1)
|
113
|
+
tzinfo (0.3.33)
|
43
114
|
vagrant (1.0.1)
|
44
115
|
archive-tar-minitar (= 0.5.2)
|
45
116
|
childprocess (~> 0.3.1)
|
@@ -57,6 +128,7 @@ DEPENDENCIES
|
|
57
128
|
engineyard-local!
|
58
129
|
fpm
|
59
130
|
mocha
|
131
|
+
rails
|
60
132
|
rake
|
61
133
|
ruby-debug19
|
62
134
|
shoulda-context
|
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
|
-
#
|
1
|
+
# Engine Yard Local (EY Local)
|
2
2
|
|
3
|
-
|
3
|
+
EY Local brings the production virtual environment of Engine Yard Cloud to your local laptop/workstation.
|
4
|
+
|
5
|
+
Engine Yard Local is a wrapper around the [Vagrant](http://vagrantup.com) tool which is written in Ruby and utilizes VirtualBox, and a custom prepackaged virtual machine image in order to make the creation and management of your local development environment easy, and customizations to your production environment testable. The project also allows you to test in an almost identical environment to Engine Yard's production cloud environment.
|
4
6
|
|
5
7
|
## Contact
|
6
8
|
|
@@ -8,18 +10,21 @@ Team members can be found on `irc.oftc.net` in `#ey-local`.
|
|
8
10
|
|
9
11
|
## Bugs
|
10
12
|
|
11
|
-
If you
|
13
|
+
If you encounter a bug you can post it here: [Engine Yard Local Bugs](https://support.cloud.engineyard.com/forums/20753933-engine-yard-local-bugs) *
|
14
|
+
|
15
|
+
Provide the following information with the bug:
|
12
16
|
|
13
|
-
1. What host platform are
|
17
|
+
1. What host platform are you running?
|
14
18
|
2. What version of VirtualBox do you have installed? `VBoxManage -v`
|
15
19
|
3. What version of the engineyard-local gem do you have installed? `ey-local version`
|
16
20
|
4. What version of the vagrant gem do you have installed? `vagrant -v`
|
21
|
+
5. Provide gist or other dump of the output that illustrates the problem.
|
17
22
|
|
18
|
-
|
23
|
+
**Note**: If you do not have an Engine Yard customer login, you cannot log a bug on this forum. Instead, please email us: eylocal@engineyard.com OR ... better ... start a [free trial](http://www.engineyard.com) today!
|
19
24
|
|
20
25
|
## Installation
|
21
26
|
|
22
|
-
|
27
|
+
Install the latest [VirtualBox](https://www.virtualbox.org/wiki/Downloads) and [Ruby](http://www.ruby-lang.org/en/downloads/) for your platform and then perform:
|
23
28
|
|
24
29
|
$ gem install engineyard-local
|
25
30
|
|
@@ -27,39 +32,41 @@ Once the install is complete you're ready to get started.
|
|
27
32
|
|
28
33
|
## Common Use
|
29
34
|
|
30
|
-
|
35
|
+
EY Local works from the root directory of your Rack based project. You can fire up a virtual environment from there with one command:
|
31
36
|
|
32
|
-
$ cd
|
37
|
+
$ cd /path/to/your/application/code/
|
33
38
|
$ ey-local up
|
34
39
|
[ey-local] Downloading with Vagrant::Downloaders::HTTP...
|
35
40
|
|
36
|
-
If you've never used ey-local before,
|
41
|
+
If you've never used ey-local before, it will begin the process by downloading the base virtual machine image from which all ey-local virtual environments are built. This will only happen once and ey-local will use the downloaded box for all subsequent virtual environments.
|
42
|
+
|
43
|
+
Please note that a known issue is that sometimes it will fail right after download due to not reloading configuration. If this happens to you please try another `ey-local up` immediately and the issue will likely resolve itself since the configuration will be reloaded properly this second time.
|
37
44
|
|
38
|
-
After the download the virtual machine will be created and you'll be able to visit your app by pointing your browser at `33.33.33.10` which represents the virtual machine's host network location.
|
45
|
+
After the download, the virtual machine will be created and you'll be able to visit your app by pointing your browser at the default IP address of `33.33.33.10` which represents the virtual machine's host network location.
|
39
46
|
|
40
|
-
From there you can edit your application files and see the application results as you normally would in your browser.
|
47
|
+
From there you can edit your application files and see the application results as you normally would in your browser at the address [http://33.33.33.10/](http://33.33.33.10/)
|
41
48
|
|
42
49
|
### Stop
|
43
50
|
|
44
|
-
After working on your application you might
|
51
|
+
After working on your application you might want to suspend the virtual machine so it's not eating up cpu cycles while you're doing some thing else. Simply issue:
|
45
52
|
|
46
53
|
$ ey-local stop
|
47
54
|
|
48
|
-
|
55
|
+
... from your project directory to suspend the virtual machine.
|
49
56
|
|
50
57
|
### Start
|
51
58
|
|
52
|
-
To restart the project after suspending it
|
59
|
+
To restart the project's virtual machine after suspending it to continue working:
|
53
60
|
|
54
61
|
$ ey-local start
|
55
62
|
|
56
63
|
### Other Commands
|
57
64
|
|
58
|
-
For other
|
65
|
+
For details on other possible commands including `list`, `rails`, `log`, and `exec` please see:
|
59
66
|
|
60
67
|
$ ey-local help
|
61
68
|
|
62
|
-
|
69
|
+
Please note that the `ey-local` command is a wrapper around [Vagrant](http://vagrantup.com/) itself and any commands that aren't defined for ey-local will be passed through to Vagrant for execution. For example provisioning an ey-local environment is as simple as:
|
63
70
|
|
64
71
|
$ ey-local provision
|
65
72
|
|
@@ -67,49 +74,44 @@ You can learn more about `provision` and other Vagrant commands in the [Vagrant
|
|
67
74
|
|
68
75
|
### Provisioning with Chef
|
69
76
|
|
70
|
-
In addition to the facilities for
|
77
|
+
In addition to the facilities for VM provisioning provided through the Vagrantfile, ey-local also includes a sane default for chef recipes when no other provisioning mechanism is defined. To take advantage of the default simply place your recipe at `$PROJECT_ROOT/cookbooks/main/recipes/default.rb`. From there you can aquire other recipes.
|
71
78
|
|
72
|
-
##
|
79
|
+
## Contributing to the Engine Yard Local Project
|
73
80
|
|
74
81
|
Pull requests are the preferred method for contribution to the project with a couple general guidelines:
|
75
82
|
|
76
83
|
1. **Keep changesets small**. Every changed line has to be reviewed so the smaller each change is the faster the review process will be.
|
77
|
-
2. **Keep commits small**. Keeping each child commit of a pull request small makes managing the git history easier especially for things like bisect. Additionally if the commits require a rebase by a team member resolving conflicts will be much less painful.
|
78
|
-
3. **Discuss large changes**. If you are compelled to make some drastic change to the source please consult the team using the methods detailed earlier.
|
79
|
-
|
80
|
-
### Layout
|
81
|
-
|
82
|
-
The project layout uses the standard ruby gem folder structure. The best starting point for interested parties new to the source is at `lib/engineyard-local/command/group.rb`. There you'll find the Thor based command setup that is the entry point to ey-local's functionality. Thor is a holdover/stopgap before moving to the vagrant command structure, and is mostly a proxy for the command classes in the same subdirectory.
|
84
|
+
2. **Keep commits small**. Keeping each child commit of a pull request small makes managing the git history easier especially for things like bisect. Additionally, if the commits require a rebase by a team member, resolving conflicts will be much less painful.
|
85
|
+
3. **Discuss large changes**. If you are compelled to make some drastic change to the source, please consult the team using the methods detailed earlier.
|
83
86
|
|
84
|
-
|
87
|
+
### Engine Yard Local Project Layout
|
85
88
|
|
86
|
-
|
89
|
+
The project layout uses the standard ruby gem folder structure. The best starting point for interested parties new to the source is at `lib/engineyard-local/command/group.rb`. There you'll find the Thor-based command setup that is the entry point to ey-local's functionality. Thor is a holdover/stopgap before moving to the Vagrant command structure, and is mostly a proxy for the command classes in the same subdirectory.
|
87
90
|
|
88
|
-
|
91
|
+
Upon viewing the individual command classes you'll likely be interested in the middleware used to operate on the Vagrant virtual machines. The middleware is the primary abstraction that is used to keep each unit of work tiny and manageable. All of those and their helpers are to be found int the `lib/engineyard-local/middleware/` directory.
|
89
92
|
|
90
|
-
### Installing HEAD
|
93
|
+
### Installing the latest development HEAD
|
91
94
|
|
92
95
|
You can install the latest from the repository with the following:
|
93
96
|
|
94
|
-
$
|
95
|
-
$ bundle exec rake build
|
97
|
+
$ gem build engineyard-local.gemspec
|
96
98
|
$ gem install pkg/engineyard-local-<VERSION>.gem
|
97
99
|
|
98
100
|
### Tests
|
99
101
|
|
100
|
-
There are a fairly minimal set of mock/stub based unit tests
|
102
|
+
There are a fairly minimal set of mock/stub based unit tests:
|
101
103
|
|
102
|
-
$ bundle install
|
103
|
-
$
|
104
|
+
$ bundle install
|
105
|
+
$ rake test
|
104
106
|
|
105
|
-
If you're developing on
|
107
|
+
If you're developing on Ruby 1.8 your bundle install should exclude the `:dev` group.
|
106
108
|
|
107
|
-
$ bundle install --without=dev
|
109
|
+
$ bundle install --without=dev
|
108
110
|
|
109
|
-
If you're feeling brave you are welcome to run the integration tests as well though they will create and destroy
|
111
|
+
If you're feeling brave you are welcome to run the integration tests as well though they will create and destroy virtual machines over a long period of time. After the bundle install:
|
110
112
|
|
111
|
-
$
|
113
|
+
$ rake integration
|
112
114
|
|
113
115
|
You can also prefix that with a `DEBUG=true` to see the output from the tested commands.
|
114
116
|
|
115
|
-
$ DEBUG=true
|
117
|
+
$ DEBUG=true rake integration
|
data/config/dna.json
CHANGED
@@ -1,38 +1,24 @@
|
|
1
1
|
{
|
2
2
|
"db_slaves": [
|
3
3
|
],
|
4
|
-
"nodejs": {
|
5
|
-
"version": "0.6.1"
|
6
|
-
},
|
7
|
-
"nginx": {
|
8
|
-
"version": "1.0.10-r1"
|
9
|
-
},
|
10
4
|
"aws_secret_key": "",
|
11
5
|
"ruby_version": "Ruby 1.9.3",
|
12
|
-
"backup_interval": 24,
|
13
|
-
"internal_ssh_public_key": "",
|
14
|
-
"admin_ssh_key": "",
|
15
6
|
"user_ssh_key": [
|
16
|
-
|
7
|
+
""
|
17
8
|
],
|
9
|
+
"internal_ssh_public_key": "",
|
10
|
+
"admin_ssh_key": "",
|
11
|
+
"backup_interval": 24,
|
18
12
|
"internal_ssh_private_key": "",
|
13
|
+
"instance_role": "eylocal",
|
19
14
|
"utility_instances": [
|
20
15
|
|
21
16
|
],
|
22
17
|
"mailserver": "smtp.engineyard.com",
|
23
|
-
"instance_role": "eylocal",
|
24
18
|
"crons": [
|
25
19
|
|
26
|
-
],
|
27
|
-
"removed_applications": [
|
28
20
|
],
|
29
21
|
"backup_window": 10,
|
30
|
-
"gems_to_install": [
|
31
|
-
{
|
32
|
-
"name": "bundler"
|
33
|
-
}
|
34
|
-
],
|
35
|
-
"alert_email": "",
|
36
22
|
"applications": {
|
37
23
|
"APPNAME": {
|
38
24
|
"auth": {
|
@@ -40,16 +26,16 @@
|
|
40
26
|
},
|
41
27
|
"newrelic": false,
|
42
28
|
"https_bind_port": 443,
|
29
|
+
"migration_command": "rake db:migrate",
|
43
30
|
"type": "APPTYPE",
|
44
|
-
"migration_command": "bundle exec rake db:migrate",
|
45
31
|
"repository_name": "APPURL",
|
46
32
|
"revision": "APPREVISION",
|
47
33
|
"http_bind_port": 80,
|
48
34
|
"run_deploy": false,
|
49
35
|
"branch": "HEAD",
|
50
|
-
"
|
36
|
+
"run_migrations": true,
|
51
37
|
"deploy_action": "deploy",
|
52
|
-
"
|
38
|
+
"deploy_key": "",
|
53
39
|
"services": [
|
54
40
|
{
|
55
41
|
"resource": "mongrel",
|
@@ -67,62 +53,87 @@
|
|
67
53
|
"memcached",
|
68
54
|
"monit",
|
69
55
|
"nginx",
|
70
|
-
"
|
56
|
+
"passenger3"
|
71
57
|
],
|
72
58
|
"vhosts": [
|
73
59
|
{
|
74
60
|
"name": "_",
|
75
|
-
"role": "
|
61
|
+
"role": "eylocal"
|
76
62
|
}
|
77
63
|
]
|
78
64
|
}
|
79
65
|
},
|
80
|
-
"
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
66
|
+
"gems_to_install": [
|
67
|
+
{
|
68
|
+
"name": "rails",
|
69
|
+
"version": "2.3.2"
|
70
|
+
},
|
71
|
+
{
|
72
|
+
"name": "mysql2",
|
73
|
+
"version": "0.3.2"
|
74
|
+
}
|
75
|
+
],
|
76
|
+
"alert_email": "ALERT_EMAIL",
|
86
77
|
"reporting_url": "",
|
87
78
|
"users": [
|
88
79
|
{
|
89
80
|
"gid": "1000",
|
90
81
|
"username": "vagrant",
|
91
82
|
"uid": "1000",
|
92
|
-
"
|
93
|
-
"
|
83
|
+
"comment": "",
|
84
|
+
"password": "abc123unme"
|
94
85
|
}
|
95
86
|
],
|
96
|
-
"
|
87
|
+
"environment": {
|
88
|
+
"name": "eylocal",
|
89
|
+
"stack": "nginx_passenger3",
|
90
|
+
"framework_env": "production"
|
91
|
+
},
|
92
|
+
"aws_secret_id": "",
|
97
93
|
"packages_to_install": [
|
98
94
|
|
99
95
|
],
|
100
|
-
"
|
101
|
-
"username": "vagrant",
|
102
|
-
"password": "abc123unme"
|
103
|
-
},
|
96
|
+
"db_host": "ey-local",
|
104
97
|
"engineyard": {
|
98
|
+
"this": "ey-local",
|
105
99
|
"environment": {
|
106
100
|
"apps": [
|
107
101
|
{
|
108
102
|
"name": "APPNAME",
|
109
103
|
"newrelic": false,
|
110
|
-
"migration_command": "rake db:migrate",
|
111
|
-
"type": "APPTYPE",
|
112
104
|
"components": [
|
105
|
+
{
|
106
|
+
"collection": [
|
113
107
|
|
108
|
+
],
|
109
|
+
"key": "addons"
|
110
|
+
},
|
111
|
+
{
|
112
|
+
"key": "app_metadata"
|
113
|
+
}
|
114
114
|
],
|
115
115
|
"database_name": "APPNAME",
|
116
|
+
"migration_command": "rake db:migrate",
|
117
|
+
"type": "rails",
|
116
118
|
"repository_name": "APPURL",
|
117
|
-
"revision": "APPREVISION",
|
118
119
|
"run_deploy": false,
|
120
|
+
"revision": "APPREVISION",
|
119
121
|
"bundled": null,
|
120
122
|
"branch": "HEAD",
|
121
|
-
"
|
123
|
+
"run_migrations": true,
|
122
124
|
"deploy_action": "deploy",
|
123
|
-
"
|
125
|
+
"deploy_key": "",
|
124
126
|
"gems": [
|
125
|
-
|
127
|
+
{
|
128
|
+
"name": "rails",
|
129
|
+
"version": "2.3.2",
|
130
|
+
"source": null
|
131
|
+
},
|
132
|
+
{
|
133
|
+
"name": "mysql2",
|
134
|
+
"version": "0.3.2",
|
135
|
+
"source": null
|
136
|
+
}
|
126
137
|
],
|
127
138
|
"vhosts": [
|
128
139
|
{
|
@@ -136,71 +147,86 @@
|
|
136
147
|
}
|
137
148
|
],
|
138
149
|
"ssh_keys": [
|
139
|
-
|
150
|
+
""
|
140
151
|
],
|
152
|
+
"name": "eylocal",
|
141
153
|
"aws_secret_key": "",
|
142
|
-
"name": "prod",
|
143
|
-
"ruby_version": null,
|
144
154
|
"instances": [
|
145
155
|
{
|
146
156
|
"name": null,
|
147
157
|
"public_hostname": "ey-local",
|
148
|
-
"stonith_config": {
|
149
|
-
"endpoint_uri": "https://cloud.engineyard.com/stonith",
|
150
|
-
"endpoint_token": "69576b03-5ad5-4774-acec-452fbad20a76",
|
151
|
-
"monitor_host": "ey-local",
|
152
|
-
"endpoint_id": "ey-local"
|
153
|
-
},
|
154
|
-
"role": "solo",
|
155
158
|
"components": [
|
156
159
|
{
|
157
160
|
"key": "ssmtp"
|
158
161
|
}
|
159
162
|
],
|
163
|
+
"stonith_config": {
|
164
|
+
"endpoint_uri": "https://cloud.engineyard.com/stonith",
|
165
|
+
"endpoint_token": "bbef81eb-5d48-4c6c-8282-084e2e669569",
|
166
|
+
"monitor_host": "ey-local",
|
167
|
+
"endpoint_id": "ey-local"
|
168
|
+
},
|
169
|
+
"role": "eylocal",
|
160
170
|
"enabled": true,
|
161
171
|
"id": "ey-local",
|
162
172
|
"private_hostname": "ey-local",
|
163
173
|
"reporting_url": "",
|
164
174
|
"instance_api_config": {
|
165
175
|
"token": "",
|
166
|
-
"
|
167
|
-
"
|
176
|
+
"instance_id": "",
|
177
|
+
"base_url": "https://cloud.engineyard.com/instance_api"
|
168
178
|
},
|
169
179
|
"awsm_token": ""
|
170
180
|
}
|
171
181
|
],
|
172
182
|
"framework_env": "production",
|
183
|
+
"ruby_version": null,
|
173
184
|
"stonith_endpoint": "https://cloud.engineyard.com/stonith",
|
174
|
-
"
|
185
|
+
"region": "us-east-1",
|
175
186
|
"ssh_username": "vagrant",
|
176
187
|
"internal_ssh_public_key": "",
|
177
188
|
"admin_ssh_key": "",
|
178
|
-
"
|
189
|
+
"backup_interval": 24,
|
179
190
|
"internal_ssh_private_key": "",
|
180
|
-
"mailserver": "smtp.engineyard.com",
|
181
191
|
"components": [
|
182
192
|
{
|
183
193
|
"key": "ruby_193"
|
184
194
|
},
|
195
|
+
{
|
196
|
+
"version": "1.8.17",
|
197
|
+
"key": "rubygems"
|
198
|
+
},
|
199
|
+
{
|
200
|
+
"key": "environment_metadata"
|
201
|
+
},
|
202
|
+
{
|
203
|
+
"clusters": [
|
204
|
+
|
205
|
+
],
|
206
|
+
"key": "metadata"
|
207
|
+
},
|
185
208
|
{
|
186
209
|
"key": "passenger3"
|
187
210
|
}
|
188
211
|
],
|
212
|
+
"mailserver": "smtp.engineyard.com",
|
189
213
|
"crons": [
|
190
214
|
|
191
215
|
],
|
192
216
|
"stats_password": "abc123unme",
|
193
|
-
"backup_window": 10,
|
194
217
|
"stack_name": "nginx_passenger3",
|
195
|
-
"
|
218
|
+
"backup_window": 10,
|
196
219
|
"backup_bucket": "",
|
220
|
+
"db_stack_name": "postgres9_1",
|
221
|
+
"ssh_password": "abc123unme",
|
197
222
|
"alert_email": "ALERT_EMAIL",
|
198
|
-
"db_stack_name": "mysql",
|
199
|
-
"aws_secret_id": "",
|
200
223
|
"monitoring": "monit",
|
201
|
-
"newrelic_key": null
|
202
|
-
|
203
|
-
|
224
|
+
"newrelic_key": null,
|
225
|
+
"aws_secret_id": ""
|
226
|
+
}
|
227
|
+
},
|
228
|
+
"haproxy": {
|
229
|
+
"username": "vagrant",
|
230
|
+
"password": "abc123unme"
|
204
231
|
}
|
205
232
|
}
|
206
|
-
|