nuri 0.5.4 → 0.5.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.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +12 -3
  3. data/VERSION +1 -1
  4. data/bin/nuri +10 -7
  5. data/nuri.gemspec +17 -17
  6. metadata +19 -94
  7. data/examples/.gitignore +0 -4
  8. data/examples/bonfire.sfp +0 -87
  9. data/examples/bonfire/epcc.sfp +0 -43
  10. data/examples/bonfire/epcc0.sfp +0 -49
  11. data/examples/bonfire/epcc2.sfp +0 -52
  12. data/examples/bonfire/epcc2a.sfp +0 -25
  13. data/examples/bonfire/inria.sfp +0 -72
  14. data/examples/bonfire/inria0.sfp +0 -49
  15. data/examples/bonfire/inria2.sfp +0 -71
  16. data/examples/bonfire/inria2a.sfp +0 -44
  17. data/examples/bonfire/inria2b.sfp +0 -54
  18. data/examples/bonfire/inria2c.sfp +0 -62
  19. data/examples/bonfire/inria2d.sfp +0 -71
  20. data/examples/bonfire/inria2e.sfp +0 -80
  21. data/examples/bonfire/main.sfp +0 -33
  22. data/examples/bonfire/old/bonfire-1-1-1.sfp +0 -76
  23. data/examples/bonfire/old/bonfire-1-10-1.sfp +0 -77
  24. data/examples/bonfire/old/bonfire-1-2-1.sfp +0 -58
  25. data/examples/bonfire/old/bonfire-1-3-1.sfp +0 -61
  26. data/examples/bonfire/old/bonfire-1-4-1.sfp +0 -64
  27. data/examples/bonfire/old/bonfire-1-5-1.sfp +0 -67
  28. data/examples/bonfire/old/bonfire-1-6-1.sfp +0 -82
  29. data/examples/bonfire/old/bonfire-1-7-1.sfp +0 -82
  30. data/examples/bonfire/old/bonfire-1-8-1.sfp +0 -79
  31. data/examples/bonfire/old/bonfire-1-9-1.sfp +0 -83
  32. data/examples/bonfire/old/wp-test1a.sfp +0 -38
  33. data/examples/bonfire/old/wp-test1b.sfp +0 -18
  34. data/examples/bonfire/old/wp-test1c.sfp +0 -7
  35. data/examples/bonfire/old/wp-test2.sfp +0 -47
  36. data/examples/bonfire/old3/bonfire-epcc.sfp +0 -57
  37. data/examples/bonfire/old3/bonfire-inria.sfp +0 -72
  38. data/examples/bonfire/old3/bonfire-master.sfp +0 -18
  39. data/examples/bonfire/old3/bonfire.sfp +0 -23
  40. data/examples/bonfire/old3/bonfire2.sfp +0 -49
  41. data/examples/bonfire/old3/bonfire3.sfp +0 -76
  42. data/examples/bonfire/old3/bonfire4.sfp +0 -78
  43. data/examples/bonfire/old3/bonfire5.sfp +0 -34
  44. data/examples/bonfire/old3/bonfire5b.sfp +0 -84
  45. data/examples/bonfire/old3/hpvm6.sfp +0 -22
  46. data/examples/bonfire/old3/model.json +0 -1
  47. data/examples/bonfire/old3/test0.sfp +0 -16
  48. data/examples/bonfire/old3/test1.sfp +0 -5
  49. data/examples/bonfire/old3/test10.sfp +0 -5
  50. data/examples/bonfire/old3/test2.sfp +0 -18
  51. data/examples/bonfire/old3/test3.sfp +0 -10
  52. data/examples/bonfire/old3/test4.sfp +0 -11
  53. data/examples/bonfire/old3/test5.sfp +0 -18
  54. data/examples/bonfire/old3/test6.sfp +0 -19
  55. data/examples/bonfire/old3/test7.sfp +0 -34
  56. data/examples/bonfire/old3/test8.sfp +0 -5
  57. data/examples/bonfire/old3/test9.sfp +0 -16
  58. data/examples/bonfire/old3/wordpress-test-cluster.sfp +0 -38
  59. data/examples/bonfire/old3/wordpress-test.sfp +0 -22
  60. data/examples/bonfire/old3/wp-test-2.sfp +0 -49
  61. data/examples/bonfire/test.sfp +0 -13
  62. data/examples/hadoop1.sfp +0 -21
  63. data/examples/hadoop2.sfp +0 -21
  64. data/examples/hpcloud.sfp +0 -18
  65. data/examples/mockcloud/apache2.sfp +0 -14
  66. data/examples/mockcloud/generator.rb +0 -22
  67. data/examples/mockcloud/generator.rb.bak +0 -66
  68. data/examples/mockcloud/hadoop2.sfp.template +0 -25
  69. data/examples/mockcloud/ping.rb +0 -38
  70. data/examples/mockcloud/run.rb +0 -17
  71. data/examples/openstack/openstack-hadoop1-cluster.sfp +0 -37
  72. data/examples/openstack/openstack-hadoop2-cluster.sfp +0 -39
  73. data/examples/test.inc +0 -0
  74. data/examples/test.sfp +0 -11
  75. data/examples/v2/apache.sfp +0 -30
  76. data/examples/v2/aptpackage.sfp +0 -6
  77. data/examples/v2/mock1.sfp +0 -12
  78. data/examples/v2/package.sfp +0 -22
  79. data/examples/v2/service.sfp +0 -94
  80. data/examples/v2/tarpackage.sfp +0 -5
  81. data/examples/wordpress.sfp +0 -41
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9d540fda2ce76121b09511e85b2c986141462e3f
4
- data.tar.gz: 36872856f912ad6cbd3998fac2721ac4c7713e8b
3
+ metadata.gz: 1c34076e1cbaeb3ab79b76e36387aa2511cab7ff
4
+ data.tar.gz: 727cd0fd4aeb6be246a700a1981818352e93f365
5
5
  SHA512:
6
- metadata.gz: d5bf64d0730f0f802a28d0464e79905f0c9a1ed60a7e083d6276b93f3eae99a1016eac02a57ccd7f0ff65b4b9c47f92f3828b4379c8fec942c562af643c0cb61
7
- data.tar.gz: c593d7e1a00db7e9e8c2e5c95b79e0573b849dcd3f8a6aea7343f34cf762db3de27d6a45c6cee78bd00e63905e8c3f0bcc0f8a57360965c9a70f7180cd3e5b49
6
+ metadata.gz: 978456225ec11b54c4bee8ba57043783b7763a24887901d372f7a16ad53e366c70a8af55bcddb51ebd0326540efa4dece7a27dff5222b6502f999a98d9dbeed4
7
+ data.tar.gz: 5f9a62df8ef5f9118806309d6a6247360149b0e306f663650693c5e5221bf70cdce181990e8f9ff4a6505ff9c5ec35736d5a8c2b2865b4853d04f9f5416f4ec3
data/README.md CHANGED
@@ -35,15 +35,24 @@ Requirements
35
35
  - colorize
36
36
  - coderay
37
37
 
38
- Tested on Linux: **Ubuntu 12.04**, **Debian Squeeze**, and **Fedora 13**
38
+ Tested on
39
+ ---------
40
+ - Linux: **Ubuntu 12.04**, **Debian Squeeze**, and **Fedora 13**
41
+ - MacOS X
39
42
 
40
43
 
41
44
  To install
42
45
  ----------
46
+ - Installing the Gem:
43
47
 
44
- $ apt-get install curl ruby1.9.1 ruby1.9.1-dev libz-dev libaugeas-ruby1.9.1 libxml2-dev libxslt-dev make gcc
45
- $ gem install nuri
48
+ $ apt-get install ruby1.9.1 ruby1.9.1-dev libz-dev libaugeas-ruby1.9.1 libxml2-dev libxslt-dev make gcc
49
+ $ gem install nuri
46
50
 
51
+ - Clone from Github:
52
+
53
+ $ apt-get install git ruby1.9.1 ruby1.9.1-dev libz-dev libaugeas-ruby1.9.1 libxml2-dev libxslt-dev make gcc
54
+ $ gem install sfplanner coderay colorize
55
+ $ git clone https://github.com/herry13/nuri
47
56
 
48
57
  Usage
49
58
  -----
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.4
1
+ 0.5.5
data/bin/nuri CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- dir = File.expand_path('../../', __FILE__)
4
- require "#{dir}/lib/nuri"
3
+ home = File.expand_path('../', File.dirname(__FILE__))
4
+ require "#{home}/lib/nuri"
5
5
 
6
6
  Version = File.read(File.dirname(__FILE__) + "/../VERSION").strip
7
7
  About = "Nuri #{Version} (c) 2013"
@@ -76,7 +76,7 @@ EOS
76
76
  opt :color, 'enable colorized output'
77
77
  opt :no_interactive, 'disable interactive input'
78
78
  opt :no_push_module, 'disable automatic push module'
79
- opt :image, 'image graph of the generated plan', :default => '' #Dir.home + '/.nuri/plan.png'
79
+ opt :image, 'image graph of the generated plan', :default => ''
80
80
  end
81
81
  help, args = check_help(args)
82
82
  opts = process_args args, parser
@@ -457,8 +457,8 @@ when <command> is:
457
457
  state get current state
458
458
  plan generate a plan
459
459
  bsig deployment with distributed mechanism
460
- agent manage Nuri agent
461
- edit edit file
460
+ agent manage the agent
461
+ edit edit model file
462
462
  help print this help
463
463
  exit exit this console
464
464
 
@@ -565,8 +565,9 @@ where [command] is:
565
565
  state get the current state
566
566
  plan generate the plan
567
567
  bsig deployment with distributed mechanism
568
- agent manage Nuri agent
568
+ agent manage the agent
569
569
  console enter console
570
+ version print the version
570
571
 
571
572
  EOS
572
573
 
@@ -587,6 +588,8 @@ EOS
587
588
  do_edit
588
589
  when 'm', 'model'
589
590
  do_model
591
+ when 'v', 'version'
592
+ puts About
590
593
  else
591
594
  puts banner
592
595
  end
@@ -596,7 +599,7 @@ EOS
596
599
  end
597
600
  end
598
601
 
599
- if $0 == __FILE__
602
+ if File.basename($0) == File.basename(__FILE__)
600
603
  Nuri.init
601
604
  Nuri::Console.new.run
602
605
  end
@@ -1,26 +1,26 @@
1
1
  Gem::Specification.new do |s|
2
- s.name = 'nuri'
3
- s.version = File.read(File.dirname(__FILE__) + '/VERSION').sub(/\n/, '')
4
- s.date = File.mtime(File.dirname(__FILE__) + '/VERSION').strftime("%Y-%m-%d")
5
- s.summary = 'Nuri'
6
- s.description = 'Automated workflow configuration tool'
7
- s.authors = ['Herry']
8
- s.email = 'herry13@gmail.com'
2
+ s.name = 'nuri'
3
+ s.version = File.read(File.dirname(__FILE__) + '/VERSION').sub(/\n/, '')
4
+ s.date = File.mtime(File.dirname(__FILE__) + '/VERSION').strftime("%Y-%m-%d")
5
+ s.summary = 'Nuri'
6
+ s.description = 'intelligent configuration tool'
7
+ s.authors = ['Herry']
8
+ s.email = 'herry13@gmail.com'
9
9
 
10
- s.executables << 'nuri'
11
- s.files = `git ls-files`.split("\n").select { |n| !(n =~ /^(test|modules\/cell*|modules\/idol*)\/.*/) }
10
+ s.executables << 'nuri'
11
+ s.files = `git ls-files`.split("\n").select { |n| !(n =~ /^(test|modules\/cell*|modules\/idol*|examples)\/.*/) }
12
12
 
13
- s.require_paths = ['lib']
13
+ s.require_paths = ['lib']
14
14
 
15
- s.license = 'BSD'
15
+ s.license = 'BSD'
16
16
 
17
- s.homepage = 'https://github.com/herry13/nuri'
18
- s.rubyforge_project = 'nuri'
17
+ s.homepage = 'https://github.com/herry13/nuri'
18
+ s.rubyforge_project = 'nuri'
19
19
 
20
- s.add_dependency 'sfplanner', '~> 0.2.1'
21
- s.add_dependency 'sfpagent', '~> 0.3'
22
- s.add_dependency 'colorize', '~> 0.6'
23
- s.add_dependency 'coderay', '~> 1'
20
+ s.add_dependency 'sfplanner'
21
+ s.add_dependency 'sfpagent'
22
+ s.add_dependency 'colorize'
23
+ s.add_dependency 'coderay'
24
24
 
25
25
  s.add_development_dependency 'rake'
26
26
  end
metadata CHANGED
@@ -1,71 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nuri
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
4
+ version: 0.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Herry
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-15 00:00:00.000000000 Z
11
+ date: 2014-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sfplanner
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.2.1
19
+ version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.2.1
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: sfpagent
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
- version: '0.3'
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - '>='
39
39
  - !ruby/object:Gem::Version
40
- version: '0.3'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: colorize
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - '>='
46
46
  - !ruby/object:Gem::Version
47
- version: '0.6'
47
+ version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
- version: '0.6'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: coderay
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - '>='
60
60
  - !ruby/object:Gem::Version
61
- version: '1'
61
+ version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - '>='
67
67
  - !ruby/object:Gem::Version
68
- version: '1'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -80,7 +80,7 @@ dependencies:
80
80
  - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- description: Automated workflow configuration tool
83
+ description: intelligent configuration tool
84
84
  email: herry13@gmail.com
85
85
  executables:
86
86
  - nuri
@@ -100,81 +100,6 @@ files:
100
100
  - bin/nuri-install-module
101
101
  - bin/nuri-sfwgraph
102
102
  - bin/nuri-uninstall-module
103
- - examples/.gitignore
104
- - examples/bonfire.sfp
105
- - examples/bonfire/epcc.sfp
106
- - examples/bonfire/epcc0.sfp
107
- - examples/bonfire/epcc2.sfp
108
- - examples/bonfire/epcc2a.sfp
109
- - examples/bonfire/inria.sfp
110
- - examples/bonfire/inria0.sfp
111
- - examples/bonfire/inria2.sfp
112
- - examples/bonfire/inria2a.sfp
113
- - examples/bonfire/inria2b.sfp
114
- - examples/bonfire/inria2c.sfp
115
- - examples/bonfire/inria2d.sfp
116
- - examples/bonfire/inria2e.sfp
117
- - examples/bonfire/main.sfp
118
- - examples/bonfire/old/bonfire-1-1-1.sfp
119
- - examples/bonfire/old/bonfire-1-10-1.sfp
120
- - examples/bonfire/old/bonfire-1-2-1.sfp
121
- - examples/bonfire/old/bonfire-1-3-1.sfp
122
- - examples/bonfire/old/bonfire-1-4-1.sfp
123
- - examples/bonfire/old/bonfire-1-5-1.sfp
124
- - examples/bonfire/old/bonfire-1-6-1.sfp
125
- - examples/bonfire/old/bonfire-1-7-1.sfp
126
- - examples/bonfire/old/bonfire-1-8-1.sfp
127
- - examples/bonfire/old/bonfire-1-9-1.sfp
128
- - examples/bonfire/old/wp-test1a.sfp
129
- - examples/bonfire/old/wp-test1b.sfp
130
- - examples/bonfire/old/wp-test1c.sfp
131
- - examples/bonfire/old/wp-test2.sfp
132
- - examples/bonfire/old3/bonfire-epcc.sfp
133
- - examples/bonfire/old3/bonfire-inria.sfp
134
- - examples/bonfire/old3/bonfire-master.sfp
135
- - examples/bonfire/old3/bonfire.sfp
136
- - examples/bonfire/old3/bonfire2.sfp
137
- - examples/bonfire/old3/bonfire3.sfp
138
- - examples/bonfire/old3/bonfire4.sfp
139
- - examples/bonfire/old3/bonfire5.sfp
140
- - examples/bonfire/old3/bonfire5b.sfp
141
- - examples/bonfire/old3/hpvm6.sfp
142
- - examples/bonfire/old3/model.json
143
- - examples/bonfire/old3/test0.sfp
144
- - examples/bonfire/old3/test1.sfp
145
- - examples/bonfire/old3/test10.sfp
146
- - examples/bonfire/old3/test2.sfp
147
- - examples/bonfire/old3/test3.sfp
148
- - examples/bonfire/old3/test4.sfp
149
- - examples/bonfire/old3/test5.sfp
150
- - examples/bonfire/old3/test6.sfp
151
- - examples/bonfire/old3/test7.sfp
152
- - examples/bonfire/old3/test8.sfp
153
- - examples/bonfire/old3/test9.sfp
154
- - examples/bonfire/old3/wordpress-test-cluster.sfp
155
- - examples/bonfire/old3/wordpress-test.sfp
156
- - examples/bonfire/old3/wp-test-2.sfp
157
- - examples/bonfire/test.sfp
158
- - examples/hadoop1.sfp
159
- - examples/hadoop2.sfp
160
- - examples/hpcloud.sfp
161
- - examples/mockcloud/apache2.sfp
162
- - examples/mockcloud/generator.rb
163
- - examples/mockcloud/generator.rb.bak
164
- - examples/mockcloud/hadoop2.sfp.template
165
- - examples/mockcloud/ping.rb
166
- - examples/mockcloud/run.rb
167
- - examples/openstack/openstack-hadoop1-cluster.sfp
168
- - examples/openstack/openstack-hadoop2-cluster.sfp
169
- - examples/test.inc
170
- - examples/test.sfp
171
- - examples/v2/apache.sfp
172
- - examples/v2/aptpackage.sfp
173
- - examples/v2/mock1.sfp
174
- - examples/v2/package.sfp
175
- - examples/v2/service.sfp
176
- - examples/v2/tarpackage.sfp
177
- - examples/wordpress.sfp
178
103
  - lib/naas/d3.js
179
104
  - lib/naas/d3.v3.min.js
180
105
  - lib/naas/index.css
@@ -1,4 +0,0 @@
1
- *cell*
2
- *.log
3
- *.log.*
4
- *idol*
@@ -1,87 +0,0 @@
1
- include "modules/node/node.sfp"
2
- include "modules/vm/vm.sfp"
3
- include "modules/apache/apache.sfp"
4
- include "modules/mysql/mysql.sfp"
5
- include "modules/wordpresscluster/wordpresscluster.sfp"
6
- include "modules/bonfire/bonfire.sfp"
7
-
8
- proxy isa Node {
9
- sfpAddress is "localhost"
10
- epcc isa Bonfire {
11
- experiment is "autocloud"
12
- location is "uk-epcc"
13
- image_name is "BonFIRE Debian Squeeze 10G v5"
14
- wan_name is "BonFIRE WAN"
15
- }
16
- }
17
-
18
- vmlb isa VM {
19
- created = true
20
- apache isa Apache {
21
- running is true
22
- is_load_balancer is true
23
- lb_members is (vmapp1,vmapp2,vmapp3,vmapp4,vmapp5)
24
- }
25
- in_cloud is proxy.epcc
26
- }
27
- vmapp1 extends vmlb {
28
- wp_web isa WordpressWeb {
29
- installed is true
30
- http is vmapp1.apache
31
- database is vmdb.wp_db
32
- }
33
- }
34
- vmapp2 extends vmlb {
35
- wp_web isa WordpressWeb {
36
- installed is true
37
- http is vmapp2.apache
38
- database is vmdb.wp_db
39
- }
40
- }
41
- vmapp3 extends vmlb {
42
- wp_web isa WordpressWeb {
43
- installed is true
44
- http is vmapp3.apache
45
- database is vmdb.wp_db
46
- }
47
- }
48
- vmapp4 extends vmlb {
49
- wp_web isa WordpressWeb {
50
- installed is true
51
- http is vmapp4.apache
52
- database is vmdb.wp_db
53
- }
54
- }
55
- vmapp5 extends vmlb {
56
- wp_web isa WordpressWeb {
57
- installed is true
58
- http is vmapp5.apache
59
- database is vmdb.wp_db
60
- }
61
- }
62
- vmdb isa VM {
63
- created = true
64
- mysql isa Mysql {
65
- running is true
66
- }
67
- wp_db isa WordpressDB {
68
- installed is true
69
- mysql is vmdb.mysql
70
- }
71
- in_cloud is proxy.epcc
72
- }
73
-
74
- global {
75
- if vmlb.apache.running = true then {
76
- vmapp1.apache.running = true
77
- vmapp2.apache.running = true
78
- vmapp3.apache.running = true
79
- vmapp4.apache.running = true
80
- vmapp5.apache.running = true
81
- }
82
- if vmapp1.apache.running = true then vmdb.mysql.running = true
83
- if vmapp2.apache.running = true then vmdb.mysql.running = true
84
- if vmapp3.apache.running = true then vmdb.mysql.running = true
85
- if vmapp4.apache.running = true then vmdb.mysql.running = true
86
- if vmapp5.apache.running = true then vmdb.mysql.running = true
87
- }
@@ -1,43 +0,0 @@
1
- include "../modules/vm/vm.sfp"
2
- include "../modules/apache/apache.sfp"
3
- include "../modules/mysql/mysql.sfp"
4
- include "../modules/wordpresscluster/wordpresscluster.sfp"
5
-
6
- vm1 isa VM {
7
- created = true
8
- apache isa Apache {
9
- running is true
10
- is_load_balancer is true
11
- }
12
- in_cloud is proxy.epcc
13
- }
14
- vm2 isa VM {
15
- created = true
16
- apache isa Apache {
17
- running is true
18
- }
19
- wp_web isa WordpressWeb {
20
- installed is true
21
- http is vm2.apache
22
- database is vm10.wp_db
23
- }
24
- in_cloud is proxy.epcc
25
- }
26
- vm10 isa VM {
27
- created = true
28
- mysql isa Mysql {
29
- running is true
30
- }
31
- wp_db isa WordpressDB {
32
- installed is true
33
- mysql is vm10.mysql
34
- }
35
- in_cloud is proxy.epcc
36
- }
37
-
38
- global {
39
- if vm1.apache.running = true then {
40
- vm2.apache.running = true
41
- }
42
- if vm2.apache.running = true then vm10.mysql.running = true
43
- }