vanagon 0.6.1 → 0.6.2
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.
- checksums.yaml +4 -4
- data/README.md +130 -23
- data/bin/build +0 -4
- data/bin/build_host_info +21 -0
- data/bin/inspect +25 -0
- data/lib/vanagon/driver.rb +17 -8
- data/lib/vanagon/engine/base.rb +11 -2
- data/lib/vanagon/engine/docker.rb +21 -6
- data/lib/vanagon/engine/ec2.rb +75 -0
- data/lib/vanagon/engine/hardware.rb +20 -3
- data/lib/vanagon/engine/local.rb +18 -3
- data/lib/vanagon/engine/pooler.rb +22 -7
- data/lib/vanagon/extensions/hashable.rb +41 -0
- data/lib/vanagon/extensions/ostruct/json.rb +12 -0
- data/lib/vanagon/extensions/set/json.rb +12 -0
- data/lib/vanagon/extensions/string.rb +1 -1
- data/lib/vanagon/platform.rb +2 -0
- data/lib/vanagon/platform/dsl.rb +63 -0
- data/lib/vanagon/platform/osx.rb +6 -0
- data/lib/vanagon/project/dsl.rb +1 -1
- data/lib/vanagon/utilities.rb +10 -4
- data/resources/osx/uninstaller.tool.erb +24 -0
- data/resources/rpm/project.spec.erb +6 -0
- data/spec/lib/vanagon/driver_spec.rb +88 -0
- data/spec/lib/vanagon/engine/docker_spec.rb +6 -0
- data/spec/lib/vanagon/engine/ec2_spec.rb +33 -0
- data/spec/lib/vanagon/engine/hardware_spec.rb +4 -0
- data/spec/lib/vanagon/engine/local_spec.rb +5 -0
- data/spec/lib/vanagon/engine/pooler_spec.rb +5 -0
- data/spec/lib/vanagon/extensions/ostruct/json_spec.rb +16 -0
- data/spec/lib/vanagon/extensions/set/json_spec.rb +17 -0
- data/spec/lib/vanagon/extensions/string_spec.rb +30 -0
- data/spec/lib/vanagon/utilities_spec.rb +1 -1
- metadata +22 -6
- data/resources/windows/wix/componentgroup.wxs.erb +0 -33
- data/resources/windows/wix/project.wxs.erb +0 -34
- data/resources/windows/wix/registryEntries.wxs.erb +0 -47
@@ -2,6 +2,10 @@
|
|
2
2
|
|
3
3
|
# Turn off the brp-python-bytecompile script
|
4
4
|
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')
|
5
|
+
# Disable brp-strip-static-archive, which on EL platforms causes
|
6
|
+
# cross-compiled static libs to end up with "no machine" as their
|
7
|
+
# architure, breaking builds:
|
8
|
+
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-strip-static-archive[[:space:]].*$!!g')
|
5
9
|
#
|
6
10
|
|
7
11
|
Name: <%= @name %>
|
@@ -119,6 +123,7 @@ done
|
|
119
123
|
|
120
124
|
|
121
125
|
%pre
|
126
|
+
<%- unless @platform.is_aix? || (@platform.is_el? && @platform.os_version.to_i == 4) -%>
|
122
127
|
# Save state so we know later if this is an upgrade or an install
|
123
128
|
mkdir -p %{_localstatedir}/lib/rpm-state/%{name}
|
124
129
|
if [ "$1" -eq 1 ] ; then
|
@@ -127,6 +132,7 @@ fi
|
|
127
132
|
if [ "$1" -gt 1 ] ; then
|
128
133
|
touch %{_localstatedir}/lib/rpm-state/%{name}/upgrade
|
129
134
|
fi
|
135
|
+
<%- end -%>
|
130
136
|
|
131
137
|
<%- if @user -%>
|
132
138
|
# Add our user and group
|
@@ -0,0 +1,88 @@
|
|
1
|
+
require 'vanagon/driver'
|
2
|
+
require 'vanagon/project'
|
3
|
+
require 'vanagon/platform'
|
4
|
+
|
5
|
+
describe 'Vanagon::Driver' do
|
6
|
+
let (:project) { double(:project, :settings => {} ) }
|
7
|
+
|
8
|
+
let (:redhat) do
|
9
|
+
eval_platform('el-7-x86_64', <<-END)
|
10
|
+
platform 'el-7-x86_64' do |plat|
|
11
|
+
plat.vmpooler_template 'centos-7-x86_64'
|
12
|
+
end
|
13
|
+
END
|
14
|
+
end
|
15
|
+
|
16
|
+
def eval_platform(name, definition)
|
17
|
+
plat = Vanagon::Platform::DSL.new(name)
|
18
|
+
plat.instance_eval(definition)
|
19
|
+
plat._platform
|
20
|
+
end
|
21
|
+
|
22
|
+
def create_driver(platform, options = {})
|
23
|
+
allow(Vanagon::Project).to receive(:load_project).and_return(project)
|
24
|
+
allow(Vanagon::Platform).to receive(:load_platform).and_return(platform)
|
25
|
+
|
26
|
+
Vanagon::Driver.new(platform, project, options)
|
27
|
+
end
|
28
|
+
|
29
|
+
describe 'when resolving build host info' do
|
30
|
+
it 'returns the vmpooler_template using the pooler engine' do
|
31
|
+
info = create_driver(redhat).build_host_info
|
32
|
+
|
33
|
+
expect(info).to match({ 'name' => 'centos-7-x86_64',
|
34
|
+
'engine' => 'pooler' })
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'returns the vmpooler template with an explicit engine' do
|
38
|
+
info = create_driver(redhat, :engine => 'pooler').build_host_info
|
39
|
+
|
40
|
+
expect(info).to match({ 'name' => 'centos-7-x86_64',
|
41
|
+
'engine' => 'pooler' })
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'returns the first build_host using the hardware engine' do
|
45
|
+
platform = eval_platform('aix-7.1-ppc', <<-END)
|
46
|
+
platform 'aix-7.1-ppc' do |plat|
|
47
|
+
plat.build_host ["pe-aix-71-01", "pe-aix-71-02"]
|
48
|
+
end
|
49
|
+
END
|
50
|
+
|
51
|
+
info = create_driver(platform).build_host_info
|
52
|
+
|
53
|
+
expect(info).to match({ 'name' => 'pe-aix-71-01',
|
54
|
+
'engine' => 'hardware' })
|
55
|
+
end
|
56
|
+
|
57
|
+
it 'returns the docker_image using the docker engine' do
|
58
|
+
platform = eval_platform('el-7-x86_64', <<-END)
|
59
|
+
platform 'el-7-x86_64' do |plat|
|
60
|
+
plat.docker_image 'centos7'
|
61
|
+
end
|
62
|
+
END
|
63
|
+
|
64
|
+
expect(Vanagon::Utilities).to receive(:find_program_on_path).with('docker').and_return('/usr/bin/docker')
|
65
|
+
info = create_driver(platform, :engine => 'docker').build_host_info
|
66
|
+
|
67
|
+
expect(info).to match({ 'name' => 'centos7',
|
68
|
+
'engine' => 'docker' })
|
69
|
+
end
|
70
|
+
|
71
|
+
it 'returns "local machine" using the local engine' do
|
72
|
+
info = create_driver(redhat, :engine => 'local').build_host_info
|
73
|
+
|
74
|
+
expect(info).to match({ 'name' => 'local machine',
|
75
|
+
'engine' => 'local' })
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'raises when using the base engine' do
|
79
|
+
driver = create_driver(redhat, :engine => 'base')
|
80
|
+
|
81
|
+
expect {
|
82
|
+
driver.build_host_info
|
83
|
+
}.to raise_error(Vanagon::Error,
|
84
|
+
/build_host_name has not been implemented for your engine/)
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'vanagon/engine/docker'
|
2
|
+
require 'vanagon/platform'
|
2
3
|
|
3
4
|
describe 'Vanagon::Engine::Docker' do
|
4
5
|
let (:platform_with_docker_image) {
|
@@ -37,4 +38,9 @@ describe 'Vanagon::Engine::Docker' do
|
|
37
38
|
expect(Vanagon::Engine::Docker.new(platform_with_docker_image).validate_platform).to be(true)
|
38
39
|
end
|
39
40
|
end
|
41
|
+
|
42
|
+
it 'returns "docker" name' do
|
43
|
+
expect(Vanagon::Utilities).to receive(:find_program_on_path).with('docker').and_return('/usr/bin/docker')
|
44
|
+
expect(Vanagon::Engine::Docker.new(platform_with_docker_image).name).to eq('docker')
|
45
|
+
end
|
40
46
|
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
begin
|
2
|
+
require 'aws-sdk'
|
3
|
+
rescue LoadError
|
4
|
+
$stderr.puts "Unable to load AWS SDK; skipping optional EC2 engine spec tests"
|
5
|
+
end
|
6
|
+
|
7
|
+
if defined? ::Aws
|
8
|
+
require 'vanagon/engine/ec2'
|
9
|
+
require 'vanagon/platform'
|
10
|
+
|
11
|
+
describe 'Vanagon::Engine::Ec2' do
|
12
|
+
let(:platform_ec2) do
|
13
|
+
plat = Vanagon::Platform::DSL.new('el-7-x86_64')
|
14
|
+
plat.instance_eval(<<-END)
|
15
|
+
platform 'el-7-x86_64' do |plat|
|
16
|
+
plat.aws_ami 'ami'
|
17
|
+
plat.target_user 'root'
|
18
|
+
plat.aws_subnet_id 'subnet_id'
|
19
|
+
plat.aws_user_data 'user_data'
|
20
|
+
plat.aws_region 'us-west-1'
|
21
|
+
plat.aws_key_name 'vanagon'
|
22
|
+
plat.aws_instance_type 't1.micro'
|
23
|
+
plat.ssh_port '22'
|
24
|
+
end
|
25
|
+
END
|
26
|
+
plat._platform
|
27
|
+
end
|
28
|
+
|
29
|
+
it 'returns "ec2" name' do
|
30
|
+
expect(Vanagon::Engine::Ec2.new(platform_ec2).name).to eq('ec2')
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -49,4 +49,8 @@ describe 'Vanagon::Engine::Hardware' do
|
|
49
49
|
expect(Vanagon::Engine::Hardware.new(platform, nil).validate_platform).to be(true)
|
50
50
|
end
|
51
51
|
end
|
52
|
+
|
53
|
+
it 'returns "hardware" name' do
|
54
|
+
expect(Vanagon::Engine::Hardware.new(platform, nil).name).to eq('hardware')
|
55
|
+
end
|
52
56
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'vanagon/engine/local'
|
2
|
+
require 'vanagon/platform'
|
2
3
|
|
3
4
|
describe 'Vanagon::Engine::Local' do
|
4
5
|
let (:platform) {
|
@@ -24,4 +25,8 @@ describe 'Vanagon::Engine::Local' do
|
|
24
25
|
expect(engine.dispatch('true', true)).to eq('')
|
25
26
|
end
|
26
27
|
end
|
28
|
+
|
29
|
+
it 'returns "local" name' do
|
30
|
+
expect(Vanagon::Engine::Local.new(platform).name).to eq('local')
|
31
|
+
end
|
27
32
|
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'vanagon/engine/pooler'
|
2
|
+
require 'vanagon/platform'
|
2
3
|
|
3
4
|
describe 'Vanagon::Engine::Pooler' do
|
4
5
|
let (:platform) { double(Vanagon::Platform, :target_user => 'root') }
|
@@ -53,4 +54,8 @@ describe 'Vanagon::Engine::Pooler' do
|
|
53
54
|
expect(Vanagon::Engine::Pooler.new(platform_with_vcloud_name).validate_platform).to be(true)
|
54
55
|
end
|
55
56
|
end
|
57
|
+
|
58
|
+
it 'returns "pooler" name' do
|
59
|
+
expect(Vanagon::Engine::Pooler.new(platform_with_vcloud_name).name).to eq('pooler')
|
60
|
+
end
|
56
61
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'vanagon/extensions/ostruct/json'
|
2
|
+
|
3
|
+
describe "OpenStruct" do
|
4
|
+
describe "with JSON mixins" do
|
5
|
+
let(:test_ostruct) { OpenStruct.new(size: "big", shape: "spherical", name: "rover") }
|
6
|
+
let(:json_ostruct) { %({"size":"big","shape":"spherical","name":"rover"}) }
|
7
|
+
|
8
|
+
it "responds to #to_json" do
|
9
|
+
expect(OpenStruct.new.respond_to?(:to_json)).to eq(true)
|
10
|
+
end
|
11
|
+
|
12
|
+
it "can be converted to a valid JSON object" do
|
13
|
+
expect(JSON.parse(test_ostruct.to_json)).to eq(JSON.parse(json_ostruct))
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'vanagon/extensions/set/json'
|
2
|
+
|
3
|
+
describe "Set" do
|
4
|
+
describe "with JSON mixins" do
|
5
|
+
let(:test_set) { Set['a', 'a', 'b', 'c'] }
|
6
|
+
let(:json_set) { %(["a","b","c"]) }
|
7
|
+
|
8
|
+
it "responds to #to_json" do
|
9
|
+
expect(Set.new.respond_to?(:to_json)).to eq(true)
|
10
|
+
end
|
11
|
+
|
12
|
+
it "can be converted to a valid JSON object" do
|
13
|
+
expect(JSON.parse(test_set.to_json)).to eq(JSON.parse(json_set))
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'vanagon/extensions/string'
|
2
|
+
|
3
|
+
describe "String" do
|
4
|
+
it "responds to #undent" do
|
5
|
+
expect(String.new.respond_to?(:undent)).to eq(true)
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
describe "Vanagon::Extensions::String" do
|
10
|
+
let (:basic_indented_string) { "\s\sa string" }
|
11
|
+
let (:basic_string) { "a string" }
|
12
|
+
let (:fancy_indented_string) { "\s\sleading line\n\s\s\s\s\s\strailing line\n\s\s\s\slast line" }
|
13
|
+
let (:fancy_string) { "leading line\n trailing line\n last line" }
|
14
|
+
let (:tab_indented_string) { "\t\t\ttab string" }
|
15
|
+
let (:tab_string) { "tab string" }
|
16
|
+
|
17
|
+
describe "#undent" do
|
18
|
+
it "trims trivial leading whitespace" do
|
19
|
+
expect(basic_indented_string.undent).to eq(basic_string)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "trims more complex whitespace" do
|
23
|
+
expect(fancy_indented_string.undent).to eq(fancy_string)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "trims leading tabs" do
|
27
|
+
expect(tab_indented_string.undent).to eq(tab_string)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -146,7 +146,7 @@ describe "Vanagon::Utilities" do
|
|
146
146
|
|
147
147
|
it 'raises a Vanagon::Error if the command fails n times' do
|
148
148
|
expect(Vanagon::Utilities).to receive(:remote_ssh_command).with(host, command, port).exactly(tries).times.and_raise(RuntimeError)
|
149
|
-
expect{ Vanagon::Utilities.retry_with_timeout(tries, timeout) { Vanagon::Utilities.remote_ssh_command(host, command, port) } }.to raise_error(
|
149
|
+
expect{ Vanagon::Utilities.retry_with_timeout(tries, timeout) { Vanagon::Utilities.remote_ssh_command(host, command, port) } }.to raise_error(RuntimeError)
|
150
150
|
end
|
151
151
|
|
152
152
|
it 'returns true if the command succeeds within n times' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vanagon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet Labs
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-06-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -54,19 +54,23 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
description: Vanagon is a tool to build a single package out of a project, which can
|
56
56
|
itself contain one or more components.
|
57
|
-
email: info@
|
57
|
+
email: info@puppet.com
|
58
58
|
executables:
|
59
59
|
- build
|
60
|
+
- inspect
|
60
61
|
- ship
|
61
62
|
- repo
|
62
63
|
- devkit
|
64
|
+
- build_host_info
|
63
65
|
extensions: []
|
64
66
|
extra_rdoc_files: []
|
65
67
|
files:
|
66
68
|
- LICENSE
|
67
69
|
- README.md
|
68
70
|
- bin/build
|
71
|
+
- bin/build_host_info
|
69
72
|
- bin/devkit
|
73
|
+
- bin/inspect
|
70
74
|
- bin/repo
|
71
75
|
- bin/ship
|
72
76
|
- lib/makefile.rb
|
@@ -84,10 +88,14 @@ files:
|
|
84
88
|
- lib/vanagon/driver.rb
|
85
89
|
- lib/vanagon/engine/base.rb
|
86
90
|
- lib/vanagon/engine/docker.rb
|
91
|
+
- lib/vanagon/engine/ec2.rb
|
87
92
|
- lib/vanagon/engine/hardware.rb
|
88
93
|
- lib/vanagon/engine/local.rb
|
89
94
|
- lib/vanagon/engine/pooler.rb
|
90
95
|
- lib/vanagon/errors.rb
|
96
|
+
- lib/vanagon/extensions/hashable.rb
|
97
|
+
- lib/vanagon/extensions/ostruct/json.rb
|
98
|
+
- lib/vanagon/extensions/set/json.rb
|
91
99
|
- lib/vanagon/extensions/string.rb
|
92
100
|
- lib/vanagon/optparse.rb
|
93
101
|
- lib/vanagon/patch.rb
|
@@ -122,6 +130,7 @@ files:
|
|
122
130
|
- resources/osx/postinstall.erb
|
123
131
|
- resources/osx/preinstall.erb
|
124
132
|
- resources/osx/project-installer.xml.erb
|
133
|
+
- resources/osx/uninstaller.tool.erb
|
125
134
|
- resources/rpm/project.spec.erb
|
126
135
|
- resources/solaris/10/depend.erb
|
127
136
|
- resources/solaris/10/pkginfo.erb
|
@@ -133,11 +142,8 @@ files:
|
|
133
142
|
- resources/windows/nuget/chocolateyInstall.ps1
|
134
143
|
- resources/windows/nuget/chocolateyUninstall.ps1
|
135
144
|
- resources/windows/nuget/project.nuspec.erb
|
136
|
-
- resources/windows/wix/componentgroup.wxs.erb
|
137
145
|
- resources/windows/wix/directorylist.wxs.erb
|
138
146
|
- resources/windows/wix/filter.xslt.erb
|
139
|
-
- resources/windows/wix/project.wxs.erb
|
140
|
-
- resources/windows/wix/registryEntries.wxs.erb
|
141
147
|
- spec/fixtures/component/invalid-test-fixture.json
|
142
148
|
- spec/fixtures/component/mcollective.service
|
143
149
|
- spec/fixtures/component/test-fixture.json
|
@@ -165,11 +171,16 @@ files:
|
|
165
171
|
- spec/lib/vanagon/component/source/localsource_spec.rb
|
166
172
|
- spec/lib/vanagon/component/source_spec.rb
|
167
173
|
- spec/lib/vanagon/component_spec.rb
|
174
|
+
- spec/lib/vanagon/driver_spec.rb
|
168
175
|
- spec/lib/vanagon/engine/base_spec.rb
|
169
176
|
- spec/lib/vanagon/engine/docker_spec.rb
|
177
|
+
- spec/lib/vanagon/engine/ec2_spec.rb
|
170
178
|
- spec/lib/vanagon/engine/hardware_spec.rb
|
171
179
|
- spec/lib/vanagon/engine/local_spec.rb
|
172
180
|
- spec/lib/vanagon/engine/pooler_spec.rb
|
181
|
+
- spec/lib/vanagon/extensions/ostruct/json_spec.rb
|
182
|
+
- spec/lib/vanagon/extensions/set/json_spec.rb
|
183
|
+
- spec/lib/vanagon/extensions/string_spec.rb
|
173
184
|
- spec/lib/vanagon/optparse_spec.rb
|
174
185
|
- spec/lib/vanagon/platform/deb_spec.rb
|
175
186
|
- spec/lib/vanagon/platform/dsl_spec.rb
|
@@ -218,11 +229,16 @@ test_files:
|
|
218
229
|
- spec/lib/vanagon/component/source/localsource_spec.rb
|
219
230
|
- spec/lib/vanagon/component/source_spec.rb
|
220
231
|
- spec/lib/vanagon/component_spec.rb
|
232
|
+
- spec/lib/vanagon/driver_spec.rb
|
221
233
|
- spec/lib/vanagon/engine/base_spec.rb
|
222
234
|
- spec/lib/vanagon/engine/docker_spec.rb
|
235
|
+
- spec/lib/vanagon/engine/ec2_spec.rb
|
223
236
|
- spec/lib/vanagon/engine/hardware_spec.rb
|
224
237
|
- spec/lib/vanagon/engine/local_spec.rb
|
225
238
|
- spec/lib/vanagon/engine/pooler_spec.rb
|
239
|
+
- spec/lib/vanagon/extensions/ostruct/json_spec.rb
|
240
|
+
- spec/lib/vanagon/extensions/set/json_spec.rb
|
241
|
+
- spec/lib/vanagon/extensions/string_spec.rb
|
226
242
|
- spec/lib/vanagon/optparse_spec.rb
|
227
243
|
- spec/lib/vanagon/platform/deb_spec.rb
|
228
244
|
- spec/lib/vanagon/platform/dsl_spec.rb
|
@@ -1,33 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="windows-1252"?>
|
2
|
-
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
|
3
|
-
|
4
|
-
<!-- Default component groups that are to be included in this project.
|
5
|
-
This can be copied in the project specific area to add additional component groups.
|
6
|
-
|
7
|
-
Note that a number of the groups below are "pseudo-groups" that are necessary to
|
8
|
-
force the Wix Linker (light) to include fragments (e.g. FragmentProperties).
|
9
|
-
|
10
|
-
A UI reference is can also be included in the project specific area if required.
|
11
|
-
Otherwise, the project will default here to using the minimal UI (WixUI_Minimal). -->
|
12
|
-
|
13
|
-
<Fragment>
|
14
|
-
<ComponentGroup Id="MainComponentGroup">
|
15
|
-
<!-- We can add all components by referencing this one thing -->
|
16
|
-
<ComponentGroupRef Id="AppComponentGroup" />
|
17
|
-
<ComponentGroupRef Id="AppDataComponentGroup" />
|
18
|
-
<ComponentGroupRef Id="RegistryComponentGroup" />
|
19
|
-
<%- get_services.each do |service| -%>
|
20
|
-
<ComponentGroupRef Id="<%= service.component_group_id %>" />
|
21
|
-
<%- end -%>
|
22
|
-
<!-- All of these Include refs are expected to be present -->
|
23
|
-
<ComponentGroupRef Id="FragmentProperties" />
|
24
|
-
<ComponentGroupRef Id="FragmentSequences" />
|
25
|
-
<ComponentGroupRef Id="FragmentCustomActions" />
|
26
|
-
</ComponentGroup>
|
27
|
-
|
28
|
-
<UI>
|
29
|
-
<UIRef Id="WixUI_Minimal"/>
|
30
|
-
</UI>
|
31
|
-
|
32
|
-
</Fragment>
|
33
|
-
</Wix>
|
@@ -1,34 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="windows-1252"?>
|
2
|
-
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
|
3
|
-
<Product
|
4
|
-
Id="*"
|
5
|
-
UpgradeCode="<%= settings[:upgrade_code] %>"
|
6
|
-
Name="<%= settings[:product_name] %>"
|
7
|
-
Language="1033"
|
8
|
-
Codepage="1252"
|
9
|
-
Version="<%= @platform.wix_product_version(@version) %>"
|
10
|
-
Manufacturer="<%= settings[:company_name] %>" >
|
11
|
-
|
12
|
-
<Package
|
13
|
-
InstallerVersion="300"
|
14
|
-
InstallScope="perMachine"
|
15
|
-
Description="<%= "#{settings[:product_id]}#{@platform.architecture == "x64" ? " (64-bit)" : ""}" %> Installer"
|
16
|
-
Comments="<%= @homepage %>"
|
17
|
-
Compressed="yes"
|
18
|
-
Platform="<%= @platform.architecture %>" />
|
19
|
-
|
20
|
-
<!-- We will use DirectoryRef at the project level to hook in the project directory structure -->
|
21
|
-
<Directory Id='TARGETDIR' Name='SourceDir' />
|
22
|
-
|
23
|
-
<MajorUpgrade AllowDowngrades="yes" />
|
24
|
-
<Media Id="1" Cabinet="<%= settings[:product_id] %>.cab" EmbedCab="yes" CompressionLevel="high" />
|
25
|
-
|
26
|
-
<Feature
|
27
|
-
Id="<%= settings[:product_id] %>Runtime"
|
28
|
-
Title="<%= settings[:product_id] %> Runtime"
|
29
|
-
Level="1">
|
30
|
-
<ComponentGroupRef Id="MainComponentGroup" />
|
31
|
-
</Feature>
|
32
|
-
|
33
|
-
</Product>
|
34
|
-
</Wix>
|