wixgem 0.103.0 → 0.104.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d74b5fb71fcf7c779fa24c77e2d7fa89990f58fe7eebf75c3be102863f4cf80
4
- data.tar.gz: 5b246289c5915cd0a7600cb8ef4c083bd1cf2054db337b022bce4f31b243b30a
3
+ metadata.gz: c34c2e37847b346835aea3b1dc0acc0d3e510bc2d6166ae9dbaca9b4d1b6dc58
4
+ data.tar.gz: 27a2dd5f5e44ae283442e6d7186d33d6380f2822371c53108c29bbf6dc392e09
5
5
  SHA512:
6
- metadata.gz: 27ee06f5d4205339dd1d9c48f4f2dccb6fac462f783f7d23940d0c97c058e1c37d6c1a6abcbb89f6503e04cfb59ed7be2d352a089ef5577e85768045cb05ad6e
7
- data.tar.gz: c62f1d23d1e71865e481e61b26714e0644eb6527ed8298e9207eefd38ec9a6e21eff7e4188b2876d90a6a791c2d95d8b204add6a0d2801a24916dce42fbf6552
6
+ metadata.gz: d3b54177e11699e6c308b9561e6373efb705a38630fe6be8abe949d8c1213acabd3fe06745132ed6f1423e9c9a8e3e152ab38c7e219008cafcdb814ded4daa06
7
+ data.tar.gz: fe3453ac182dc6233ecc46bd73f5230c0dc5f1aa1446fe6caca806f7036ac1ce0a2c87130c0b44b7287943e8ab348010c4bb4034e6735b3c9964ce004b2fcb6e
data/example/example.msi CHANGED
Binary file
data/example/example.msm CHANGED
Binary file
data/lib/service.rb CHANGED
@@ -22,19 +22,31 @@ class Service
22
22
  service_exe_element = file_elements[0]
23
23
  service_exe_element.attributes['KeyPath']='yes'
24
24
 
25
- create_service_element(service_exe_element)
25
+ create_service_element(xml_doc, service_exe_element)
26
26
 
27
27
  return xml_doc
28
28
  end
29
29
 
30
30
  private
31
- def create_service_element(service_exe_element)
31
+ def create_service_element(xml_doc, service_exe_element)
32
32
  parent_element = service_exe_element.parent
33
33
 
34
34
  service = @hash[:service]
35
35
  service_control = {}
36
36
  service_control = @hash[:service_control] if(@hash.has_key?(:service))
37
37
 
38
+ if(service.key?(:logonasservice))
39
+ wix = REXML::XPath.match(xml_doc, "/Wix")[0]
40
+ wix.add_attribute('xmlns:Util', 'http://schemas.microsoft.com/wix/UtilExtension')
41
+
42
+ user_element = parent_element.add_element 'Util:User'
43
+ user_element.attributes['Id'] = "logon_as_service_#{SecureRandom.uuid.gsub(/-/,'')}"
44
+ user_element.add_attribute('Domain', service[:domain]) if(service.key?(:domain))
45
+ user_element.add_attribute('Name', service[:name])
46
+ user_element.add_attribute('LogonAsService', service[:logonasservice])
47
+ user_element.add_attribute('CreateUser', 'no')
48
+ user_element.add_attribute('UpdateIfExists', 'yes')
49
+ end
38
50
  service_element = parent_element.add_element('ServiceInstall')
39
51
 
40
52
  service_element.attributes['Id'] = "Service_#{SecureRandom.uuid.gsub(/-/,'')}"
data/lib/wixgem.rb CHANGED
@@ -9,7 +9,6 @@ require_relative 'custom_action.rb'
9
9
  require_relative 'temp_directory.rb'
10
10
  require_relative 'associate_extension.rb'
11
11
  require_relative 'service.rb'
12
- require_relative 'user.rb'
13
12
 
14
13
  # Editor for wix Files WixEdit: http://http://wixedit.sourceforge.net/
15
14
  # Full list of Wix editors : http://robmensching.com/blog/posts/2007/11/20/wix-editors/
@@ -223,17 +222,6 @@ class Wix
223
222
  return xml_doc
224
223
  end
225
224
 
226
- def self.manage_users(xml_doc,input)
227
- return xml_doc unless(input.has_key?(:users))
228
-
229
- input[:users].each do |username, user_hash|
230
- user = User.new(username, user_hash)
231
- xml_doc = user.create(xml_doc)
232
- end
233
-
234
- return xml_doc
235
- end
236
-
237
225
  def self.manage_services(xml_doc,input)
238
226
  return xml_doc unless(input.has_key?(:services))
239
227
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wixgem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.103.0
4
+ version: 0.104.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Marshall
@@ -143,7 +143,6 @@ files:
143
143
  - lib/service.rb
144
144
  - lib/shortcut.rb
145
145
  - lib/temp_directory.rb
146
- - lib/user.rb
147
146
  - lib/wixgem.rb
148
147
  homepage: http://rubygems.org/gems/wixgem
149
148
  licenses:
data/lib/user.rb DELETED
@@ -1,32 +0,0 @@
1
- require 'rexml/document'
2
- require 'SecureRandom'
3
-
4
- module Wixgem
5
-
6
- class User
7
- def initialize(name, user_hash)
8
- @user_name = name
9
- @user_hash = user_hash
10
- end
11
- def create(xml_doc)
12
- wix = REXML::XPath.match(xml_doc, "/Wix")[0]
13
- wix.add_attribute('xmlns:Util', 'http://schemas.microsoft.com/wix/UtilExtension')
14
-
15
- match = REXML::XPath.match(xml_doc, "/Wix")
16
-
17
- fragment = match[0].add_element 'Fragment'
18
- component_group = fragment.add_element 'ComponentGroup'
19
- component_group.add_attribute('Id', "cg_#{SecureRandom.uuid.gsub(/-/,'')}")
20
- component = component_group.add_element 'Component'
21
- component.add_attribute('Id', "c_#{SecureRandom.uuid.gsub(/-/,'')}")
22
- component.add_attribute('Directory', 'INSTALLDIR')
23
-
24
- user_element = component.add_element 'Util:User'
25
- user_element.add_attribute('Id', "user_#{SecureRandom.uuid.gsub(/-/,'')}")
26
- user_element.add_attribute('Name', @user_name)
27
- @user_hash.each { |attrib, value| user_element.add_attribute(attrib.to_s, value) }
28
-
29
- return xml_doc
30
- end
31
- end
32
- end