bosh-stemcell 1.2121.0 → 1.2124.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -83,7 +83,14 @@ module Bosh::Stemcell
83
83
  end
84
84
 
85
85
  def exclude_exclusions
86
- infrastructure.name == 'vsphere' ? ' --tag ~exclude_on_vsphere' : ''
86
+ case infrastructure.name
87
+ when 'vsphere'
88
+ ' --tag ~exclude_on_vsphere'
89
+ when 'vcloud'
90
+ ' --tag ~exclude_on_vcloud'
91
+ else
92
+ ''
93
+ end
87
94
  end
88
95
 
89
96
  def image_file_path
@@ -35,7 +35,7 @@ module Bosh::Stemcell
35
35
  'bosh_agent_src_dir' => File.join(source_root, 'bosh_agent'),
36
36
  'go_agent_src_dir' => File.join(source_root, 'go_agent'),
37
37
  'image_create_disk_size' => image_create_disk_size
38
- }.merge(bosh_micro_options).merge(environment_variables).merge(vsphere_options)
38
+ }.merge(bosh_micro_options).merge(environment_variables).merge(ovf_options)
39
39
  end
40
40
 
41
41
  private
@@ -55,9 +55,9 @@ module Bosh::Stemcell
55
55
  :bosh_micro_release_tgz_path
56
56
  )
57
57
 
58
- def vsphere_options
59
- if infrastructure.name == 'vsphere'
60
- { 'image_vsphere_ovf_ovftool_path' => environment['OVFTOOL'] }
58
+ def ovf_options
59
+ if infrastructure.name == 'vsphere' || infrastructure.name == 'vcloud'
60
+ { 'image_ovftool_path' => environment['OVFTOOL'] }
61
61
  else
62
62
  {}
63
63
  end
@@ -8,6 +8,8 @@ module Bosh::Stemcell
8
8
  Aws.new
9
9
  when 'vsphere'
10
10
  Vsphere.new
11
+ when 'vcloud'
12
+ Vcloud.new
11
13
  else
12
14
  raise ArgumentError.new("invalid infrastructure: #{name}")
13
15
  end
@@ -47,6 +49,12 @@ module Bosh::Stemcell
47
49
  end
48
50
  end
49
51
 
52
+ class Vcloud < Base
53
+ def initialize
54
+ super(name: 'vcloud', hypervisor: 'esxi', default_disk_size: 3072)
55
+ end
56
+ end
57
+
50
58
  class Aws < Base
51
59
  def initialize
52
60
  super(name: 'aws', hypervisor: 'xen', supports_light_stemcell: true, default_disk_size: 2048)
@@ -49,17 +49,35 @@ module Bosh::Stemcell
49
49
  when Infrastructure::Aws then
50
50
  aws_stages
51
51
  when Infrastructure::OpenStack then
52
- if operating_system.instance_of?(OperatingSystem::Centos)
53
- centos_openstack_stages
54
- else
55
- openstack_stages
56
- end
52
+ openstack_stages
57
53
  when Infrastructure::Vsphere then
58
- if operating_system.instance_of?(OperatingSystem::Centos)
59
- centos_vsphere_stages
60
- else
61
- vsphere_stages
62
- end
54
+ vsphere_stages
55
+ when Infrastructure::Vcloud then
56
+ vcloud_stages
57
+ end
58
+ end
59
+
60
+ def openstack_stages
61
+ if operating_system.instance_of?(OperatingSystem::Centos)
62
+ centos_openstack_stages
63
+ else
64
+ default_openstack_stages
65
+ end
66
+ end
67
+
68
+ def vsphere_stages
69
+ if operating_system.instance_of?(OperatingSystem::Centos)
70
+ centos_vsphere_stages
71
+ else
72
+ default_vsphere_stages
73
+ end
74
+ end
75
+
76
+ def vcloud_stages
77
+ if operating_system.instance_of?(OperatingSystem::Centos)
78
+ centos_vcloud_stages
79
+ else
80
+ default_vcloud_stages
63
81
  end
64
82
  end
65
83
 
@@ -100,13 +118,29 @@ module Bosh::Stemcell
100
118
  :bosh_harden,
101
119
  :image_create,
102
120
  :image_install_grub,
103
- :image_vsphere_vmx,
104
- :image_vsphere_ovf,
105
- :image_vsphere_prepare_stemcell,
121
+ :image_ovf_vmx,
122
+ :image_ovf_generate,
123
+ :image_ovf_prepare_stemcell,
106
124
  :stemcell,
107
125
  ]
108
126
  end
109
127
 
128
+ def centos_vcloud_stages
129
+ [
130
+ #:system_open_vm_tools,
131
+ :system_vsphere_cdrom,
132
+ :system_parameters,
133
+ :bosh_clean,
134
+ :bosh_harden,
135
+ :image_create,
136
+ :image_install_grub,
137
+ :image_ovf_vmx,
138
+ :image_ovf_generate,
139
+ :image_ovf_prepare_stemcell,
140
+ :stemcell
141
+ ]
142
+ end
143
+
110
144
  def centos_openstack_stages
111
145
  [
112
146
  # Misc
@@ -145,7 +179,7 @@ module Bosh::Stemcell
145
179
  ]
146
180
  end
147
181
 
148
- def openstack_stages
182
+ def default_openstack_stages
149
183
  [
150
184
  # Misc
151
185
  :system_openstack_network,
@@ -166,7 +200,7 @@ module Bosh::Stemcell
166
200
  ]
167
201
  end
168
202
 
169
- def vsphere_stages
203
+ def default_vsphere_stages
170
204
  [
171
205
  :system_open_vm_tools,
172
206
  :system_vsphere_cdrom,
@@ -178,12 +212,32 @@ module Bosh::Stemcell
178
212
  # Image/bootloader
179
213
  :image_create,
180
214
  :image_install_grub,
181
- :image_vsphere_vmx,
182
- :image_vsphere_ovf,
183
- :image_vsphere_prepare_stemcell,
215
+ :image_ovf_vmx,
216
+ :image_ovf_generate,
217
+ :image_ovf_prepare_stemcell,
184
218
  # Final stemcell
185
219
  :stemcell,
186
220
  ]
187
221
  end
222
+
223
+ def default_vcloud_stages
224
+ [
225
+ :system_open_vm_tools,
226
+ :system_vsphere_cdrom,
227
+ # Misc
228
+ :system_parameters,
229
+ # Finalisation
230
+ :bosh_clean,
231
+ :bosh_harden,
232
+ # Image/bootloader
233
+ :image_create,
234
+ :image_install_grub,
235
+ :image_ovf_vmx,
236
+ :image_ovf_generate,
237
+ :image_ovf_prepare_stemcell,
238
+ # Final stemcell
239
+ :stemcell
240
+ ]
241
+ end
188
242
  end
189
243
  end
@@ -1,5 +1,5 @@
1
1
  module Bosh
2
2
  module Stemcell
3
- VERSION = '1.2121.0'
3
+ VERSION = '1.2124.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bosh-stemcell
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2121.0
4
+ version: 1.2124.0
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: 2014-03-04 00:00:00.000000000 Z
12
+ date: 2014-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bosh_aws_cpi
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: 1.2121.0
21
+ version: 1.2124.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- version: 1.2121.0
29
+ version: 1.2124.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: fakefs
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -184,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
184
184
  version: '0'
185
185
  segments:
186
186
  - 0
187
- hash: 449191449963614115
187
+ hash: 593950561922831553
188
188
  requirements: []
189
189
  rubyforge_project:
190
190
  rubygems_version: 1.8.23