voxpupuli / puppet-windowsfeature

Library that uses ServerAdministration api that comes with Windows Server 2008 and Windows Server 2012 to add / remove windows features
https://forge.puppet.com/puppet/windowsfeature
MIT License
30 stars 50 forks source link

plans on adding 2016 compatibility? #83

Closed johnypony3 closed 7 years ago

johnypony3 commented 7 years ago

im looking for 2016 compatibility.

wottah commented 7 years ago

+1

matthewrstone commented 7 years ago

Can you explain the issue with 2016? I have a few 2016 servers and using the forge version seems to be working OK for me. Where is it breaking?

wottah commented 7 years ago

My issues are with beaker tests not coming through. As opposed to W2012(R2) tests, which complete within minutes, my 2016 test does not complete enabling a selected dozen windows features even after several hours. Granted: This may be caused by some faulty setup on my side, but it would be nice to have windows 2016 acknowledged as a supported OS by this module nontheless.

natemccurdy commented 7 years ago

I've been using version 2.1.0 of this module on 2016 and 2016 core without issue. Just an FYI.

josefprado commented 7 years ago

I´ve tried this module in Windows 2016 (Version 10.0.14393) and its breaking when trying to add a feature like "Telnet Client".

This is the error we are receiving:

Failed to apply catalog: #<ArgumentError: invalid byte sequence in UTF-8>
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/source.rb:219:in `match'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/source.rb:219:in `match'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/parsers/baseparser.rb:426:in `pull_event'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/parsers/baseparser.rb:184:in `pull'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/parsers/treeparser.rb:22:in `parse'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/document.rb:287:in `build'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/rexml/document.rb:44:in `initialize'
C:/ProgramData/PuppetLabs/puppet/cache/lib/puppet/provider/windowsfeature/default.rb:31:in `new'
C:/ProgramData/PuppetLabs/puppet/cache/lib/puppet/provider/windowsfeature/default.rb:31:in `instances'
C:/ProgramData/PuppetLabs/puppet/cache/lib/puppet/provider/windowsfeature/default.rb:54:in `prefetch'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/transaction.rb:323:in `prefetch'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/transaction.rb:223:in `prefetch_if_necessary'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/transaction.rb:107:in `block in evaluate'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/graph/relationship_graph.rb:116:in `call'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/graph/relationship_graph.rb:116:in `traverse'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/transaction.rb:154:in `evaluate'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:222:in `block in apply'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util/log.rb:155:in `with_destination'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/transaction/report.rb:142:in `as_logging_destination'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:221:in `apply'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/configurer.rb:171:in `block in apply_catalog'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util.rb:224:in `block in benchmark'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/2.1.0/benchmark.rb:294:in `realtime'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util.rb:223:in `benchmark'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/configurer.rb:170:in `apply_catalog'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/configurer.rb:343:in `run_internal'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/configurer.rb:221:in `block in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/context.rb:65:in `override'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet.rb:306:in `override'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/configurer.rb:195:in `run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:45:in `block (4 levels) in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent/locker.rb:21:in `lock'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:45:in `block (3 levels) in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:98:in `with_client'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:42:in `block (2 levels) in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:65:in `run_in_fork'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:41:in `block in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application.rb:179:in `call'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application.rb:179:in `controlled_run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/agent.rb:39:in `run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application/agent.rb:353:in `onetime'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application/agent.rb:331:in `run_command'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application.rb:358:in `block in run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util.rb:542:in `exit_on_fail'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/application.rb:358:in `run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util/command_line.rb:132:in `run'
C:/ProgramData/PuppetLabs/sys/ruby/lib/ruby/vendor_ruby/puppet/util/command_line.rb:72:in `execute'
C:/ProgramData/PuppetLabs/puppet/bin/puppet:4:in `<main>'
...
Exception parsing
Line: 6
Position: 866
Last 80 unconsumed characters:
O Acesso Remoto oferece conectividade direta por meio de DirectAccess, VPN e Prox

Any thougths?

BertrandJO commented 7 years ago

Which client version do you have on your Windows 2016 ? Installing Telnet-Client feature works for me with 2.1.0 module and 3.8.7 64 bits client.

Do you have a facter command result to give ?

wyardley commented 7 years ago

It sounds like it works, so I'm suggesting that we update the metadata in the next minor release, and see if that works for folks. @TraGicCode

TraGicCode commented 7 years ago

@wyardley Before i do this let me reverify this works on my windows-2016 machine using beaker. If so i'll create a pr to update the metadata.json and readme about supporting 2016

TraGicCode commented 7 years ago

This works fine on 2016 keeping in mind some of the feature names have changed between O/S. Closing this and creating an issue to update metadata.json.

image