bosh-gen 0.16.2 → 0.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +13 -5
- data/.rspec +3 -0
- data/.travis.yml +16 -0
- data/ChangeLog.md +110 -89
- data/Gemfile +7 -1
- data/Guardfile +4 -8
- data/README.md +52 -22
- data/Rakefile +10 -0
- data/bosh-gen.gemspec +7 -5
- data/lib/bosh/gen/cli.rb +20 -28
- data/lib/bosh/gen/generators/job_generator.rb +9 -10
- data/lib/bosh/gen/generators/job_generator/templates/jobs/%job_name%_simple/templates/bin/%job_name%_ctl.tt +5 -5
- data/lib/bosh/gen/generators/new_release_generator.rb +63 -68
- data/lib/bosh/gen/generators/new_release_generator/templates/jobs/%project_name_hyphenated%/templates/bin/%job_name%_ctl.tt +5 -5
- data/lib/bosh/gen/generators/new_release_generator/templates/jobs/%project_name_hyphenated%/templates/data/properties.sh.erb +6 -0
- data/lib/bosh/gen/generators/new_release_generator/templates/templates/infrastructure-aws-ec2.yml.tt +7 -5
- data/lib/bosh/gen/generators/new_release_generator/templates/templates/infrastructure-warden.yml.tt +3 -4
- data/lib/bosh/gen/generators/new_release_generator/templates/templates/jobs.yml.tt +3 -0
- data/lib/bosh/gen/generators/new_release_generator/templates/templates/make_manifest.tt +18 -2
- data/lib/bosh/gen/generators/new_release_generator/templates/templates/stub.yml.tt +2 -1
- data/lib/bosh/gen/settings.rb +61 -0
- data/lib/bosh/gen/version.rb +1 -1
- data/spec/fixtures/deployment_manifests/2_jobs_1_ip_8196_disk_with_numeric.yml +64 -0
- data/spec/fixtures/releases/s3test-boshrelease/.gitignore +18 -0
- data/spec/fixtures/releases/s3test-boshrelease/README.md +51 -0
- data/spec/fixtures/releases/s3test-boshrelease/Rakefile +15 -0
- data/spec/fixtures/releases/s3test-boshrelease/config/blobs.yml +1 -0
- data/spec/fixtures/releases/s3test-boshrelease/config/final.yml +5 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/.gitkeep +0 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/monit +5 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/spec +13 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/bin/monit_debugger +13 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/bin/s3test_ctl +36 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/config/.gitkeep +0 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/config/s3test.conf.erb +5 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/data/properties.sh.erb +10 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/helpers/ctl_setup.sh +81 -0
- data/spec/fixtures/releases/s3test-boshrelease/jobs/s3test/templates/helpers/ctl_utils.sh +156 -0
- data/spec/fixtures/releases/s3test-boshrelease/packages/.gitkeep +0 -0
- data/spec/fixtures/releases/s3test-boshrelease/src/.gitkeep +0 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/deployment.yml +35 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/infrastructure-aws-ec2.yml +40 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/infrastructure-warden.yml +107 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/jobs.yml +30 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/make_manifest +54 -0
- data/spec/fixtures/releases/s3test-boshrelease/templates/stub.yml +13 -0
- data/spec/generators/deployment_manifest_generator_spec.rb +19 -14
- data/spec/generators/{jobs/webapp_job_generator_spec.rb → job_generator_spec.rb} +8 -13
- data/spec/generators/new_release_generator_spec.rb +70 -0
- data/spec/models/bosh_config_spec.rb +3 -3
- data/spec/models/deployment_manifest_spec.rb +16 -6
- data/spec/models/release_detection_spec.rb +6 -6
- data/spec/spec_helper.rb +27 -7
- data/spec/support/fog.rb +3 -0
- data/spec/{generators → support}/generator_spec_helper.rb +47 -6
- metadata +105 -36
- data/spec/models/extract_spec.rb +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NmY5YjI3MTFiNTQ5YWVlNzZiODVjNTkzMjc5ZTUyOWI3YjcwOGZiNA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
N2UxN2QxZTQ2MjNhMTY0YjNlMWRhZjRjYTg0ZWJmMjE5ZmQxYmZiYw==
|
5
7
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MWMwN2NmNTc5OTYwYTYwMjMxODdkODMwNTRlOGE1NjhjYmNkMjViZTJhZDQx
|
10
|
+
NjUxOWVlNzZhMDAyMWMyOTFjNGFjN2Q4YmExNGVlZmQzNGQwMmE1MjY1OGFi
|
11
|
+
Njg4YTE5ODAxMWNlNGE2ZDEwZmQ2ZTA4ZmI4YWNkNWVjNDhlMzk=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
YjBmODA3NzM3MzVhYmI4MTg3ZDYyMzQ3ZWUyMzZjODMwNGRmNGEyMjRmMzNj
|
14
|
+
NmRmNGZlODk2Zjk4Njc3OTllMzJjYjY1NTAyMjEyYjAyNmM1ZjZiMzM5NjU3
|
15
|
+
OGJhNDE3OGM2MmM2NDc5YzcyYTFiODY1YTQ4MWUwZWQ0NzM5NTg=
|
data/.rspec
ADDED
data/.travis.yml
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
language: ruby
|
2
|
+
script: bundle exec rake spec
|
3
|
+
rvm:
|
4
|
+
- ruby-1.9.3
|
5
|
+
# - rbx-19mode
|
6
|
+
- ruby-2.0.0
|
7
|
+
- ruby-2.1.0
|
8
|
+
notifications:
|
9
|
+
email:
|
10
|
+
recipients:
|
11
|
+
- drnicwilliams@gmail.com
|
12
|
+
on_success: change
|
13
|
+
on_failure: always
|
14
|
+
env:
|
15
|
+
global:
|
16
|
+
- secure: ""
|
data/ChangeLog.md
CHANGED
@@ -1,57 +1,68 @@
|
|
1
|
-
|
1
|
+
Change Log
|
2
|
+
==========
|
2
3
|
|
3
|
-
|
4
|
+
v0.17.0
|
5
|
+
-------
|
4
6
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
- `new --s3` - no more read-only credentials; no more encryption keys
|
8
|
+
|
9
|
+
v0.16.0
|
10
|
+
-------
|
11
|
+
|
12
|
+
- `new` creates an initial job of the same name.
|
13
|
+
- default to running job process as vcap:vcap [v0.16.1]
|
14
|
+
- Default $INCLUDE_PATH & $LD_LIBRARY_PATH to '' if not set [v0.16.1]
|
15
|
+
- Fix make_manifest for aws-ec2 [v0.16.2]
|
16
|
+
- Remove references to OpenStack until we have spiff templates generated [v0.16.2]
|
10
17
|
|
11
18
|
The initial job is configured to have the xyz.leader_address property, and an example conf file that shows how to use it.
|
12
19
|
|
13
|
-
|
20
|
+
v0.15.0
|
21
|
+
-------
|
14
22
|
|
15
|
-
|
16
|
-
|
17
|
-
|
23
|
+
- Create packages from existing Aptitude .deb packages with `package --apt`
|
24
|
+
- Assume project & job names have hyphens in templates
|
25
|
+
- Templates default to latest stemcell [Aristoteles Neto]
|
18
26
|
|
19
|
-
|
27
|
+
v0.14.0
|
28
|
+
-------
|
20
29
|
|
21
|
-
|
22
|
-
|
30
|
+
- templates/make_manifest & example spiff templates generated
|
31
|
+
- no more static example bosh-lite.yml templates
|
23
32
|
|
24
|
-
|
33
|
+
v0.13.0
|
34
|
+
-------
|
25
35
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
36
|
+
- bosh-lite example manifests generated for new releases
|
37
|
+
- created folder always has -boshrelease suffix [v0.13.1]
|
38
|
+
- use public https in generated readme [v0.13.2]
|
39
|
+
- bosh-lite-solo.yml is a template [v0.13.3]
|
30
40
|
|
31
|
-
|
41
|
+
v0.12.0
|
42
|
+
-------
|
32
43
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
44
|
+
- Supports bosh_cli 1.5.0.pre gems
|
45
|
+
- dev.yml uses same release name as final.yml for blob reuse
|
46
|
+
- sets reuse_compilation_vms: true now
|
47
|
+
- generated project README focuses on final releases [v0.12.1]
|
48
|
+
- Default bucket name is project folder name [v0.12.1]
|
38
49
|
|
39
|
-
|
50
|
+
v0.11.0
|
51
|
+
-------
|
40
52
|
|
41
53
|
Added:
|
42
54
|
|
43
|
-
|
44
|
-
|
45
|
-
|
55
|
+
- New blobstore provider: OpenStack Swift [thanks Ferran!]
|
56
|
+
- `package` --src/-s specifies already internal sources/blobs; example: --src 'myapp/**/*'
|
57
|
+
- `job` includes an empty `templates/config` to suggest where config templates should go
|
46
58
|
|
47
59
|
Improved:
|
48
60
|
|
49
|
-
|
61
|
+
- `new` - --s3 flag looks for `~/.bosh_s3_credentials` file for default AWS S3 credentials
|
50
62
|
|
51
|
-
For common defaults on s3 blobstore credentials, create an
|
52
|
-
`~/.bosh_s3_credentials` file that looks like:
|
63
|
+
For common defaults on s3 blobstore credentials, create an`~/.bosh_s3_credentials` file that looks like:
|
53
64
|
|
54
|
-
```
|
65
|
+
```yaml
|
55
66
|
readonly_access_key: XXX
|
56
67
|
readonly_secret_access_key: XXX
|
57
68
|
readwrite_access_key: XXX
|
@@ -60,45 +71,48 @@ readwrite_secret_access_key: XXX
|
|
60
71
|
|
61
72
|
Other changes:
|
62
73
|
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
74
|
+
- Using 1.0 release candidate for bosh_cli
|
75
|
+
- `micro` - fix accidental gitignore of prepare/prepare_spec
|
76
|
+
- `new` - `bosh-gen new project-boshrelease`; name is "project", initial dev name is "project-dev"
|
77
|
+
- `manifest` - default stemcell is bosh-stemcell-0.6.4
|
78
|
+
- `manifest` - creates `#{name}.yml` instead of `#{name}/manifest.yml`
|
79
|
+
- `job` - example file not in a subfolder anymore
|
69
80
|
|
70
|
-
|
81
|
+
v0.10.0
|
82
|
+
-------
|
71
83
|
|
72
84
|
Added:
|
73
85
|
|
74
|
-
|
86
|
+
- `micro` - create a "micro" job that packages all/some jobs into a single VM
|
75
87
|
|
76
88
|
Improved:
|
77
89
|
|
78
|
-
|
90
|
+
- `new` - read/write credentials now in private.yml; more useful default README
|
79
91
|
|
80
|
-
|
92
|
+
v0.9.0
|
93
|
+
------
|
81
94
|
|
82
95
|
Major news
|
83
96
|
|
84
|
-
|
97
|
+
- `job` - more powerful initial scripts; templates nested in folders; scripts are much cleaner to read; scripts in bin/ & helpers/ do not have ERb; only data/properties.sh.erb & config/ are for ERb.
|
85
98
|
|
86
99
|
Other changes:
|
87
100
|
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
101
|
+
- `package` - detects .zip files (in addition to .tar.gz) and includes useful default unpacking script in `packaging`; describe available env vars in `packaging` script
|
102
|
+
- `manifest` - auto-detects current BOSH UUID
|
103
|
+
- `extract-pkg` - now a single argument - the path of the source package folder
|
104
|
+
- `extract-job` - now a single argument - the path of the source job folder
|
92
105
|
|
93
|
-
|
106
|
+
v0.8.0
|
107
|
+
------
|
94
108
|
|
95
109
|
Changed:
|
96
110
|
|
97
|
-
|
111
|
+
- `package` - the `packaging` script include default tar/configure/make sequence for all tarballs
|
98
112
|
|
99
113
|
For example, `bosh-gen package nginx -f ..../blobs/nginx/`, the resulting `packaging` is:
|
100
114
|
|
101
|
-
```
|
115
|
+
```bash
|
102
116
|
set -e # exit immediately if a simple command exits with a non-zero status
|
103
117
|
set -u # report the usage of uninitialized variables
|
104
118
|
|
@@ -115,94 +129,101 @@ make install
|
|
115
129
|
|
116
130
|
Changed:
|
117
131
|
|
118
|
-
|
119
|
-
|
132
|
+
- `extract-job` & `extract-pkg` - copies files mentioned in specs
|
133
|
+
- `package` - large files go into blobs/ folder
|
120
134
|
|
121
135
|
### v0.8.2
|
122
136
|
|
123
137
|
Bug fixes:
|
124
138
|
|
125
|
-
|
139
|
+
- `extract-pkg` - missing #source_file helper
|
126
140
|
|
127
|
-
|
141
|
+
v0.7.0
|
142
|
+
------
|
128
143
|
|
129
144
|
Added:
|
130
145
|
|
131
|
-
|
146
|
+
- `extract-pkg` - extract a package and its dependencies from a target release
|
132
147
|
|
133
148
|
Changed/Renamed:
|
134
149
|
|
135
|
-
|
136
|
-
|
137
|
-
|
150
|
+
- `extract` -> `extract-job`
|
151
|
+
- `new` -> `.gitignore` includes `.vagrant`, to support `bosh-solo`
|
152
|
+
- `manifest` -> update to soon-to-be-released stemcell 0.6.2
|
138
153
|
|
139
|
-
|
154
|
+
v0.6.0
|
155
|
+
------
|
140
156
|
|
141
157
|
Added:
|
142
158
|
|
143
|
-
|
159
|
+
- `extract` - extract a job and its dependent packages to the current release
|
144
160
|
|
145
161
|
### v0.6.1
|
146
162
|
|
147
|
-
|
148
|
-
|
163
|
+
- `new` - ignore .blobs folder in releases
|
164
|
+
- `manifest` - persistent_disk is an integer; added to common job too
|
149
165
|
|
150
166
|
### v0.6.2
|
151
167
|
|
152
|
-
|
153
|
-
|
168
|
+
- `manifest` - provided IP addresses are distributed across jobs until it runs out
|
169
|
+
- `manifest` - fix to allocation of persistent disk
|
154
170
|
|
155
|
-
|
171
|
+
v0.5.0
|
172
|
+
------
|
156
173
|
|
157
|
-
|
158
|
-
|
159
|
-
|
174
|
+
- `job` - takes a COMMAND argument
|
175
|
+
- `source --blob/-b` - file stored in blobs/ folder instead of src/
|
176
|
+
- `source` - packaging script includes standard configure/make/make install if .tar.gz or .tgz
|
160
177
|
|
161
|
-
|
178
|
+
v0.4
|
179
|
+
----
|
162
180
|
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
181
|
+
- `job` - added --ruby flag to include a ruby/rack-specifc ctl script
|
182
|
+
- releases include a rake task to document what properties are required
|
183
|
+
- `manifest` - has a --disk/-d flag to assign a persistent disk to all VMs (common pool)
|
184
|
+
- `job` - export some variables in ctl scripts so they are available to application
|
185
|
+
- `job` - ctl script has logs/tail/clearlogs commands
|
168
186
|
|
169
|
-
|
187
|
+
v0.3
|
188
|
+
----
|
170
189
|
|
171
190
|
Added:
|
172
191
|
|
173
|
-
|
174
|
-
|
192
|
+
- `template` - add a template/file to a job
|
193
|
+
- `source` - download and add a source file/tarball to a package
|
175
194
|
|
176
195
|
### v0.3.1 (never released)
|
177
196
|
|
178
197
|
Added:
|
179
198
|
|
180
|
-
|
199
|
+
- `manifest` - generate a deployment manifest for a release
|
181
200
|
|
182
201
|
Fixed:
|
183
202
|
|
184
|
-
|
203
|
+
- `job` - creates a monit script and a stub control script
|
185
204
|
|
186
205
|
### v0.3.2
|
187
206
|
|
188
|
-
|
189
|
-
|
207
|
+
- `job` - ctl file has TODO to remind about PID file
|
208
|
+
- `job` - use the provided release path to detect jobs
|
190
209
|
|
191
210
|
### v0.3.3
|
192
211
|
|
193
|
-
|
212
|
+
- `manifest` - introspect the release project for release + job information
|
194
213
|
|
195
214
|
### v0.3.4
|
196
215
|
|
197
|
-
|
216
|
+
- `manifest` - Force us-east-1e to ensure all VMs and volumes are always in the same AZ
|
198
217
|
|
199
|
-
|
218
|
+
v0.2
|
219
|
+
----
|
200
220
|
|
201
221
|
Added:
|
202
222
|
|
203
|
-
|
204
|
-
|
223
|
+
- `package` - create package scaffold, including source files
|
224
|
+
- `job` - create job scaffold
|
205
225
|
|
206
|
-
|
226
|
+
v0.1
|
227
|
+
----
|
207
228
|
|
208
|
-
|
229
|
+
- `new` - create new release
|
data/Gemfile
CHANGED
@@ -3,5 +3,11 @@ source 'https://rubygems.org'
|
|
3
3
|
# Specify your gem's dependencies in bosh-gen.gemspec
|
4
4
|
gemspec
|
5
5
|
|
6
|
+
if File.directory?("../cyoi")
|
7
|
+
gem "cyoi", path: "../cyoi"
|
8
|
+
end
|
9
|
+
|
6
10
|
gem 'bosh_cli', '~> 1.1750'
|
7
|
-
gem 'bosh_common', '~> 1.1750'
|
11
|
+
gem 'bosh_common', '~> 1.1750'
|
12
|
+
|
13
|
+
gem 'guard-rspec'
|
data/Guardfile
CHANGED
@@ -1,9 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
# with Minitest::Spec
|
6
|
-
watch(%r|^spec/(.*)_spec\.rb|)
|
7
|
-
watch(%r|^lib/bosh/gen/(.*)([^/]+)\.rb|) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
8
|
-
watch(%r|^spec/spec_helper\.rb|) { "spec" }
|
1
|
+
guard 'rspec', spec_paths: ["spec"] do
|
2
|
+
watch(%r{^spec/(.+_spec)\.rb$})
|
3
|
+
watch(%r{^lib/bosh/gen/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
4
|
+
watch('spec/spec_helper.rb') { "spec" }
|
9
5
|
end
|
data/README.md
CHANGED
@@ -1,30 +1,57 @@
|
|
1
|
-
|
1
|
+
BOSH Generators
|
2
|
+
===============
|
2
3
|
|
3
4
|
Generators for creating BOSH releases.
|
4
5
|
|
5
|
-
|
6
|
+
New in 0.17: Creates blobstore/bucket when creating new release.
|
7
|
+
|
8
|
+
Installation
|
9
|
+
------------
|
6
10
|
|
7
11
|
This application requires Ruby 1.9 or 2.0 and is installed via RubyGems:
|
8
12
|
|
9
13
|
$ gem install bosh-gen
|
10
14
|
|
11
|
-
|
15
|
+
Usage
|
16
|
+
-----
|
12
17
|
|
13
18
|
```
|
14
|
-
$ bosh-gen new my-
|
15
|
-
|
16
|
-
|
17
|
-
|
19
|
+
$ bosh-gen new my-project
|
20
|
+
create
|
21
|
+
Auto-detected infrastructure API credentials at ~/.fog (override with $FOG)
|
22
|
+
1. AWS (community)
|
23
|
+
2. Alternate credentials
|
24
|
+
Choose an auto-detected infrastructure: 2
|
25
|
+
|
26
|
+
create README.md
|
27
|
+
create Rakefile
|
28
|
+
create jobs
|
29
|
+
create jobs/my-project/templates/bin/my_project_ctl
|
30
|
+
...
|
31
|
+
create config/blobs.yml
|
32
|
+
create config/dev.yml
|
33
|
+
create config/private.yml
|
34
|
+
create config/final.yml
|
35
|
+
create .gitignore
|
36
|
+
run git init from "."
|
37
|
+
|
38
|
+
Next, change to BOSH release location:
|
39
|
+
cd ./my-project-boshrelease
|
40
|
+
|
41
|
+
Finally...
|
42
|
+
Attempting to create blobstore my-project-boshrelease... done
|
18
43
|
|
19
|
-
|
44
|
+
Confirming: Using blobstore my-project-boshrelease
|
20
45
|
```
|
21
46
|
|
22
|
-
|
47
|
+
Your project is now in the folder mentioned above:
|
23
48
|
|
24
49
|
```
|
25
|
-
$
|
50
|
+
$ cd ./my-project-boshrelease
|
51
|
+
```
|
26
52
|
|
27
|
-
|
53
|
+
```
|
54
|
+
$ wget -P /tmp http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz
|
28
55
|
$ bosh-gen package ruby -f /tmp/ruby-1.9.3-p194.tar.gz
|
29
56
|
|
30
57
|
$ bosh-gen job some-ruby-job -d ruby
|
@@ -53,7 +80,8 @@ $ bosh-gen template some-ruby-job config/some-config.ini
|
|
53
80
|
force jobs/some-ruby-job/spec
|
54
81
|
```
|
55
82
|
|
56
|
-
|
83
|
+
Quickly creating packages
|
84
|
+
-------------------------
|
57
85
|
|
58
86
|
There is a slow way to create a package, and there are three faster ways. Slow vs fast is not a debated about best vs worse. But sometimes you're in a hurry.
|
59
87
|
|
@@ -112,12 +140,13 @@ source /var/vcap/packages/apache2/profile.sh
|
|
112
140
|
|
113
141
|
This is the last option, and it is not the best option. Many Debian packages will also start processes that have default configuration that is not correct for your use case. It may be fast to get the Debian packages; but additional work may be required by your jobs to stop and unhook the processes that are automatically started upon installation.
|
114
142
|
|
115
|
-
|
143
|
+
Tutorial
|
144
|
+
--------
|
116
145
|
|
117
|
-
To see how the various commands work together, let's create a new bosh release for [Cassandra](http://cassandra.apache.org/
|
146
|
+
To see how the various commands work together, let's create a new bosh release for [Cassandra](http://cassandra.apache.org/).
|
118
147
|
|
119
148
|
```
|
120
|
-
$ bosh-gen new cassandra
|
149
|
+
$ bosh-gen new cassandra
|
121
150
|
$ cd cassandra
|
122
151
|
$ bosh-gen extract-pkg ../cf-release/packages/dea_jvm7
|
123
152
|
create packages/dea_jvm7
|
@@ -163,12 +192,12 @@ Look at all that goodness!
|
|
163
192
|
|
164
193
|
A quick summary of these files:
|
165
194
|
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
195
|
+
- The `monit` script uses `bin/monit_debugger` to help you debug any glitches in starting/stopping processes.
|
196
|
+
- `ctl_setup.sh` setups up lots of common folders and env vars.
|
197
|
+
- `ctl_utils.sh` comes from cf-release's common/utils.sh with some extra helper functions
|
198
|
+
- `data/properties.sh.erb` is where you extract any `<%= properties.cassandra... %>` values from the deployment manifest.
|
199
|
+
- `bin/cassandra_ctl` no longer needs to be an unreadable ERb template! Use the env variables you create in `data/properties.sh.erb` and normal bash if statements instead of ERb `<% if ... %>` templates.
|
200
|
+
- `examples/...` is a folder for documenting example, valid deployment manifest properties for the release.
|
172
201
|
|
173
202
|
In `bin/cassandra_ctl` you now change "TODO" to `cassandra` and the rest of the tutorial is left to you, dear cassandra lover.
|
174
203
|
|
@@ -181,7 +210,8 @@ bosh upload release
|
|
181
210
|
|
182
211
|
When you create a final release, you will first need to setup your AWS credentials in `config/final.yml`
|
183
212
|
|
184
|
-
|
213
|
+
Contributing
|
214
|
+
------------
|
185
215
|
|
186
216
|
1. Fork it
|
187
217
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|