Details
-
Task
-
Status: Closed
-
Normal
-
Resolution: Fixed
-
None
-
None
-
4
-
Week 2014-6-25 to 2014-7-9
Description
Some of the win32 gems that we use contain native code and are not portable to x64. The complete list of gems that we currently vendor is: https://github.com/puppetlabs/puppet-win32-ruby/tree/1.9.3/ruby/lib/ruby/gems/1.9.1/specifications
bigdecimal-1.1.0
|
deep_merge-1.0.0
|
ffi-1.9.0-x86-mingw32
|
io-console-0.3
|
json-1.5.5
|
minitar-0.5.4
|
minitest-2.5.1
|
rake-0.9.2.2
|
rdoc-3.9.5
|
rgen-0.6.5
|
stomp-1.2.9
|
sys-admin-1.5.6-x86-mingw32
|
win32-api-1.4.8-x86-mingw32
|
win32-dir-0.4.3
|
win32-eventlog-0.5.3
|
win32-process-0.6.5
|
win32-security-0.1.4
|
win32-service-0.7.2-x86-mingw32
|
win32-taskscheduler-0.2.2
|
win32console-1.3.2-x86-mingw32
|
windows-api-0.4.2
|
windows-pr-1.2.2
|
For each gem, we need to determine if it needs to be updated. If a gem needs updating, it must be done in the following puppet-win32-ruby branches. Note some gems contain platform specific code, e.g. ffi-1.9.3-x86, and will need to match the target branch:
puppet-win32-ruby#1.9.3-x86
|
puppet-win32-ruby#2.0.0-x64
|
Additionally, we may need to update version constraints in the following locations:
Gemfile
|
ext/project_data.yaml
|
For example, win32-security 0.2.4 is known to have a bug, so we need to require "~> 0.2.5"
Some of the gems listed above have known issues, so separate tickets have already been created:
win32console
|
win32-security
|
win32-service
|
The remaining set of gems should be verified as part of this ticket e.g. try to manage that type of resource, try to write to the event log, etc under both x86 and x64 ruby. If a gem doesn't work, update it. This should mainly affect windows gems that are not ffi'ed, e.g. win32-eventlog.
One these gems have been validated and updated, we should be in a good position to run acceptance tests. This will also prepare us for removing our dependency on windows-pr & win32-api gems.
We also want to remove sys-admin gem. It is referenced in ext/project_data.yaml, install.rb, etc but never used.
Attachments
Issue Links
- blocks
-
PUP-2396 Support ruby 2.0 x64 on windows
-
- Closed
-
-
PUP-2521 Remove windows-pr gem as a Windows dependency
-
- Closed
-
- is blocked by
-
PUP-1283 Update win32-service gem
-
- Closed
-
-
PUP-1760 Update win32-security gem to latest (after string_to_sid fix)
-
- Closed
-
-
PUP-2389 Create ruby 2.0 branch for x64 in puppet-win32-ruby
-
- Closed
-
- relates to
-
PUP-2521 Remove windows-pr gem as a Windows dependency
-
- Closed
-
-
PUP-391 Validate FFI'ed native windows code against Ruby 2 x64
-
- Closed
-
-
PUP-2881 Upgrade win32-taskscheduler gem (or replace)
-
- Closed
-
-
PUP-2889 Upgrade win32-eventlog
-
- Closed
-
- links to