Uploaded image for project: 'Puppet'
  1. Puppet
  2. PUP-392

Validate win32 gems on x86 and x64

    Details

    • Type: Task
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: PUP 3.7.0
    • Component/s: None
    • Labels:
    • Template:
    • Story Points:
      4
    • Sprint:
      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

            Activity

              jsd-sla-details-panel

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  josh Josh Cooper
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Zendesk Support