bosh-stemcell 1.2121.0 → 1.2124.0

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.
@@ -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