rna 0.2.2 → 0.2.3

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.
data/README.md CHANGED
@@ -1,5 +1,4 @@
1
- Rna gem
2
- ===========
1
+ # Rna gem
3
2
 
4
3
  [![Build History][2]][1]
5
4
 
@@ -8,15 +7,13 @@ Rna gem
8
7
 
9
8
  Rna is a ruby gem that provides simple DSL for generating node.json files required by chef-solo.
10
9
 
11
- Requirements
12
- ------------
10
+ ## Requirements
13
11
 
14
12
  <pre>
15
13
  $ gem install rna
16
14
  </pre>
17
15
 
18
- Usage
19
- ------------
16
+ ## Usage
20
17
 
21
18
  <pre>
22
19
  $ mkdir rna_project
@@ -26,8 +23,9 @@ $ rna init
26
23
 
27
24
  This will sets starter config/rna.rb and config/s3.yml files.
28
25
 
29
- Example rna.rb file
30
- ------------
26
+ ### Example:
27
+
28
+ #### config/rna.rb file
31
29
 
32
30
  ```ruby
33
31
  # This is starter example rna template.
@@ -184,6 +182,8 @@ output/stag-api-resque.json:
184
182
  }
185
183
  ```
186
184
 
185
+ #### Uploading to S3
186
+
187
187
  <pre>
188
188
  $ rna build -o s3 # saves s3 based on config/s3.yml settings
189
189
  </pre>
@@ -195,4 +195,13 @@ access_key_id: hocuspocus
195
195
  secret_access_key: opensesame
196
196
  bucket: my-bucket
197
197
  folder: chef/rna
198
- ```
198
+ ```
199
+
200
+ #### Breaking up config/rna.rb
201
+
202
+ If you have a lot of roles, the config/rna.rb file can get unwieldy long. You can break up the rna.rb file and put role defintions in the config/rna directory. Any file in this directory will be automatically loaded.
203
+
204
+ An example is in the spec/project folder:
205
+
206
+ * config/rna/api.rb
207
+ * config/rna/masta.rb
data/lib/rna/dsl.rb CHANGED
@@ -13,6 +13,14 @@ module Rna
13
13
 
14
14
  def evaluate
15
15
  instance_eval(File.read(@path), @path)
16
+ load_roles
17
+ end
18
+
19
+ # load any roles defined in project/config/rna/*
20
+ def load_roles
21
+ Dir.glob("#{File.dirname(@path)}/rna/*").each do |path|
22
+ instance_eval(File.read(path), path)
23
+ end
16
24
  end
17
25
 
18
26
  def global(options={},&block)
data/lib/rna/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rna
2
- VERSION = '0.2.2'
2
+ VERSION = '0.2.3'
3
3
  end
@@ -0,0 +1,18 @@
1
+ # api
2
+ role 'prod-api-redis', 'stag-api-redis'
3
+ role 'prod-api-resque', 'stag-api-resque' do
4
+ inherits 'prod-api-app'
5
+ set 'workers', 8
6
+ end
7
+ role 'prod-api-app', 'stag-api-app' do
8
+ role_list ['base','api_app']
9
+ set 'application', 'api'
10
+ set 'deploy_code', true
11
+ set 'repository', 'git@github.com:br/api.git'
12
+ set 'scout', {
13
+ 'key' => 'abc',
14
+ 'gems' => {
15
+ 'redis' => nil
16
+ }
17
+ }
18
+ end
@@ -0,0 +1,12 @@
1
+ # masta
2
+ role 'masta-app' do
3
+ output false
4
+ set 'masta_app', 123
5
+ end
6
+ role 'prod-masta-redis', 'stag-masta-redis'
7
+ role 'prod-masta-android', 'stag-masta-android' do
8
+ inherits 'masta-app'
9
+ set 'application', 'masta'
10
+ set 'deploy_code', true
11
+ set 'repository', 'git@github.com:arockwell/masta_blasta.git'
12
+ end
@@ -21,36 +21,6 @@ end
21
21
  role 'base' do
22
22
  role_list ['base']
23
23
  end
24
- # api
25
- role 'prod-api-redis', 'stag-api-redis'
26
- role 'prod-api-resque', 'stag-api-resque' do
27
- inherits 'prod-api-app'
28
- set 'workers', 8
29
- end
30
- role 'prod-api-app', 'stag-api-app' do
31
- role_list ['base','api_app']
32
- set 'application', 'api'
33
- set 'deploy_code', true
34
- set 'repository', 'git@github.com:br/api.git'
35
- set 'scout', {
36
- 'key' => 'abc',
37
- 'gems' => {
38
- 'redis' => nil
39
- }
40
- }
41
- end
42
- # masta
43
- role 'masta-app' do
44
- output false
45
- set 'masta_app', 123
46
- end
47
- role 'prod-masta-redis', 'stag-masta-redis'
48
- role 'prod-masta-android', 'stag-masta-android' do
49
- inherits 'masta-app'
50
- set 'application', 'masta'
51
- set 'deploy_code', true
52
- set 'repository', 'git@github.com:arockwell/masta_blasta.git'
53
- end
54
24
 
55
25
  ###################################
56
26
  # Post processing rules that run at the end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rna
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-17 00:00:00.000000000 Z
12
+ date: 2012-12-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -188,6 +188,8 @@ files:
188
188
  - rna.gemspec
189
189
  - spec/lib/rna_spec.rb
190
190
  - spec/project/config/rna.rb
191
+ - spec/project/config/rna/api.rb
192
+ - spec/project/config/rna/masta.rb
191
193
  - spec/project/config/s3.example.yml
192
194
  - spec/project2/.gitkeep
193
195
  - spec/project2/Guardfile
@@ -205,7 +207,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
205
207
  version: '0'
206
208
  segments:
207
209
  - 0
208
- hash: -1637596285023883731
210
+ hash: 2001643032789055325
209
211
  required_rubygems_version: !ruby/object:Gem::Requirement
210
212
  none: false
211
213
  requirements:
@@ -214,7 +216,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
216
  version: '0'
215
217
  segments:
216
218
  - 0
217
- hash: -1637596285023883731
219
+ hash: 2001643032789055325
218
220
  requirements: []
219
221
  rubyforge_project:
220
222
  rubygems_version: 1.8.24
@@ -225,6 +227,8 @@ summary: Rna is a ruby gem that provides simple DSL for generating node.json fil
225
227
  test_files:
226
228
  - spec/lib/rna_spec.rb
227
229
  - spec/project/config/rna.rb
230
+ - spec/project/config/rna/api.rb
231
+ - spec/project/config/rna/masta.rb
228
232
  - spec/project/config/s3.example.yml
229
233
  - spec/project2/.gitkeep
230
234
  - spec/project2/Guardfile