bosh-director 1.5.0.pre.1435 → 1.5.0.pre.1436

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,6 +10,7 @@ require 'bosh/director/deployment_plan/job'
10
10
  require 'bosh/director/deployment_plan/network'
11
11
  require 'bosh/director/deployment_plan/network_subnet'
12
12
  require 'bosh/director/deployment_plan/compiled_package'
13
+ require 'bosh/director/deployment_plan/rendered_templates_archive'
13
14
  require 'bosh/director/deployment_plan/preparer'
14
15
  require 'bosh/director/deployment_plan/resource_pools'
15
16
  require 'bosh/director/deployment_plan/updater'
@@ -1,8 +1,5 @@
1
- # Copyright (c) 2009-2012 VMware, Inc.
2
-
3
1
  module Bosh::Director
4
2
  module DeploymentPlan
5
- ##
6
3
  # Represents a single job instance.
7
4
  class Instance
8
5
  include DnsHelper
@@ -19,9 +16,12 @@ module Bosh::Director
19
16
  # @return [String] Checksum all of the configuration templates
20
17
  attr_accessor :configuration_hash
21
18
 
22
- # @return [Hash] A hash of template SHA1 hashes.
19
+ # @return [Hash] A hash of template SHA1 hashes
23
20
  attr_accessor :template_hashes
24
21
 
22
+ # @return [DeploymentPlan::RenderedTemplatesArchive]
23
+ attr_accessor :rendered_templates_archive
24
+
25
25
  # @return [Hash<String, NetworkReservation>] network reservations
26
26
  attr_accessor :network_reservations
27
27
 
@@ -361,6 +361,13 @@ module Bosh::Director
361
361
  spec['template_hashes'] = template_hashes
362
362
  end
363
363
 
364
+ # Ruby BOSH Agent does not look at 'rendered_templates_archive'
365
+ # since it renders job templates and then compares template hashes.
366
+ # Go BOSH Agent has no ability to render ERB so pre-rendered templates are provided.
367
+ if rendered_templates_archive
368
+ spec['rendered_templates_archive'] = rendered_templates_archive.spec
369
+ end
370
+
364
371
  spec
365
372
  end
366
373
 
@@ -0,0 +1,14 @@
1
+ module Bosh::Director::DeploymentPlan
2
+ class RenderedTemplatesArchive
3
+ attr_reader :blobstore_id, :sha1
4
+
5
+ def initialize(blobstore_id, sha1)
6
+ @blobstore_id = blobstore_id
7
+ @sha1 = sha1
8
+ end
9
+
10
+ def spec
11
+ { 'blobstore_id' => @blobstore_id, 'sha1' => @sha1 }
12
+ end
13
+ end
14
+ end
@@ -9,10 +9,15 @@ module Bosh::Director
9
9
  end
10
10
 
11
11
  def persist(instance, rendered_job_templates)
12
- current_archive = instance.model.latest_rendered_templates_archive
13
- if !current_archive || current_archive.content_sha1 != instance.configuration_hash
14
- persist_without_checking(instance, rendered_job_templates)
12
+ archive_model = instance.model.latest_rendered_templates_archive
13
+
14
+ if !archive_model || archive_model.content_sha1 != instance.configuration_hash
15
+ archive_model = persist_without_checking(instance, rendered_job_templates)
15
16
  end
17
+
18
+ instance.rendered_templates_archive =
19
+ DeploymentPlan::RenderedTemplatesArchive.new(
20
+ archive_model.blobstore_id, archive_model.sha1)
16
21
  end
17
22
 
18
23
  def persist_without_checking(instance, rendered_job_templates)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Bosh
4
4
  module Director
5
- VERSION = '1.5.0.pre.1435'
5
+ VERSION = '1.5.0.pre.1436'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bosh-director
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0.pre.1435
4
+ version: 1.5.0.pre.1436
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -34,7 +34,7 @@ dependencies:
34
34
  requirements:
35
35
  - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: 1.5.0.pre.1435
37
+ version: 1.5.0.pre.1436
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
@@ -42,7 +42,7 @@ dependencies:
42
42
  requirements:
43
43
  - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: 1.5.0.pre.1435
45
+ version: 1.5.0.pre.1436
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: bosh-core
48
48
  requirement: !ruby/object:Gem::Requirement
@@ -50,7 +50,7 @@ dependencies:
50
50
  requirements:
51
51
  - - ~>
52
52
  - !ruby/object:Gem::Version
53
- version: 1.5.0.pre.1435
53
+ version: 1.5.0.pre.1436
54
54
  type: :runtime
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,7 +58,7 @@ dependencies:
58
58
  requirements:
59
59
  - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: 1.5.0.pre.1435
61
+ version: 1.5.0.pre.1436
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: bosh_common
64
64
  requirement: !ruby/object:Gem::Requirement
@@ -66,7 +66,7 @@ dependencies:
66
66
  requirements:
67
67
  - - ~>
68
68
  - !ruby/object:Gem::Version
69
- version: 1.5.0.pre.1435
69
+ version: 1.5.0.pre.1436
70
70
  type: :runtime
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -74,7 +74,7 @@ dependencies:
74
74
  requirements:
75
75
  - - ~>
76
76
  - !ruby/object:Gem::Version
77
- version: 1.5.0.pre.1435
77
+ version: 1.5.0.pre.1436
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: bosh_cpi
80
80
  requirement: !ruby/object:Gem::Requirement
@@ -82,7 +82,7 @@ dependencies:
82
82
  requirements:
83
83
  - - ~>
84
84
  - !ruby/object:Gem::Version
85
- version: 1.5.0.pre.1435
85
+ version: 1.5.0.pre.1436
86
86
  type: :runtime
87
87
  prerelease: false
88
88
  version_requirements: !ruby/object:Gem::Requirement
@@ -90,7 +90,7 @@ dependencies:
90
90
  requirements:
91
91
  - - ~>
92
92
  - !ruby/object:Gem::Version
93
- version: 1.5.0.pre.1435
93
+ version: 1.5.0.pre.1436
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: bosh_openstack_cpi
96
96
  requirement: !ruby/object:Gem::Requirement
@@ -98,7 +98,7 @@ dependencies:
98
98
  requirements:
99
99
  - - ~>
100
100
  - !ruby/object:Gem::Version
101
- version: 1.5.0.pre.1435
101
+ version: 1.5.0.pre.1436
102
102
  type: :runtime
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
@@ -106,7 +106,7 @@ dependencies:
106
106
  requirements:
107
107
  - - ~>
108
108
  - !ruby/object:Gem::Version
109
- version: 1.5.0.pre.1435
109
+ version: 1.5.0.pre.1436
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: bosh_aws_cpi
112
112
  requirement: !ruby/object:Gem::Requirement
@@ -114,7 +114,7 @@ dependencies:
114
114
  requirements:
115
115
  - - ~>
116
116
  - !ruby/object:Gem::Version
117
- version: 1.5.0.pre.1435
117
+ version: 1.5.0.pre.1436
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,7 +122,7 @@ dependencies:
122
122
  requirements:
123
123
  - - ~>
124
124
  - !ruby/object:Gem::Version
125
- version: 1.5.0.pre.1435
125
+ version: 1.5.0.pre.1436
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: bosh_vsphere_cpi
128
128
  requirement: !ruby/object:Gem::Requirement
@@ -130,7 +130,7 @@ dependencies:
130
130
  requirements:
131
131
  - - ~>
132
132
  - !ruby/object:Gem::Version
133
- version: 1.5.0.pre.1435
133
+ version: 1.5.0.pre.1436
134
134
  type: :runtime
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
@@ -138,7 +138,7 @@ dependencies:
138
138
  requirements:
139
139
  - - ~>
140
140
  - !ruby/object:Gem::Version
141
- version: 1.5.0.pre.1435
141
+ version: 1.5.0.pre.1436
142
142
  - !ruby/object:Gem::Dependency
143
143
  name: eventmachine
144
144
  requirement: !ruby/object:Gem::Requirement
@@ -461,7 +461,7 @@ dependencies:
461
461
  version: '0'
462
462
  description: ! 'BOSH Director
463
463
 
464
- 496235'
464
+ 7ece07'
465
465
  email: support@cloudfoundry.com
466
466
  executables:
467
467
  - bosh-director
@@ -575,6 +575,7 @@ files:
575
575
  - lib/bosh/director/deployment_plan/planner.rb
576
576
  - lib/bosh/director/deployment_plan/preparer.rb
577
577
  - lib/bosh/director/deployment_plan/release_version.rb
578
+ - lib/bosh/director/deployment_plan/rendered_templates_archive.rb
578
579
  - lib/bosh/director/deployment_plan/resource_pool.rb
579
580
  - lib/bosh/director/deployment_plan/resource_pools.rb
580
581
  - lib/bosh/director/deployment_plan/stemcell.rb