kreeuwijk / vmtools_win Goto Github PK
View Code? Open in Web Editor NEWPuppet module that installs or upgrades the VMware Tools on Windows
Puppet module that installs or upgrades the VMware Tools on Windows
With most basic "include vmtools_win" usage on Windows 2016 server if $facts['vmtools_win_version'] is not defined the init.pp logic still runs this the install_needed function:
if vmtools_win::install_needed($download_from_vmware, $minimum_version_level, $selfprovided_install_version)
which when interpolated using default hiera values becomes:
if vmtools_win::install_needed(true, 3, 'None')
Somehow the compare_version function is invoked for deployments on windows servers without any previous VMWare tools such that:
$comparison = vmtools_win::compare_version($facts['vmtools_win_version'], $selfprovided_install_version)
is set to:
$comparison = vmtools_win::compare_version(undef, 'None')
Catalog compilation borks when comparison is attempted of the undefined $facts['vmtools_win_version'] to 'None'. When the vmtools_win_version.rb facter script is run there will be nothing listed matching "VMWare Tools" under HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. :
C:\WINDOWS\system32>puppet agent -t
Notice: Local environment: 'production' doesn't match server specified node environment 'gino', switching agent to 'gino'.
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Retrieving locales
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: The value '' cannot be converted to Numeric. (file: /etc/puppetlabs/code/environments/gino/modules/vmtools_win/functions/compare_version.pp, line: 40, column: 14) on node puppnode-dev-t1.dev
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
VMWare have done something wonderful with their latest version, as per https://packages.vmware.com/tools/releases/latest/windows/x64 the version number contains a - for some reason.
This is causing the math in compare_version.pp to break.
Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: The value '10-6082533' cannot be converted to Numeric. at /etc/puppetlabs/code/environments/development/modules/vmtools_win/functions/compare_version.pp:36:47 on node SERVVER.DOMAIN
The puppet forge documentation references the class name as 'vmwaretools', while that is incorrect. The documentation should reference the class name 'vmtools_win'.
As of today, 1/14/2020, WS 2008 R2 support has ended. In the next version support should be deprecated and in the next major version, removed. This isn't urgent but could tie in with the next release for #10
Issue:
When using r10k to copy the module from the Forge into Puppet Open Source the module is copied onto the system with only root having access to the files. This prevents the Foreman user from being able to use the files.
Testing:
Misc:
Im pretty green when it comes to Puppet, Foreman, Linux etc. so am entirely stumped by this issue.
But as I can only replicate it with this module and only via Forge I can only assume its an issue with the Forge uploaded copy.
Any further troubleshooting I can do to assist in tracking down the issue let me know.
While trying to debug why this is failing to work, I found this line:
windows
directory... best I can tell, it looks like this should switch to pulling from Chocolatey a la choco install vmware-tools
Hi,
I am new to puppet and was testing vmtools installation on my pilot environment, I was using this VMtools module quite some time and succesfully able to install/upgrade, however all of sudden i am started seeing the comparision version issue on the module, i downloaded the module 1.1.0 version. Looks like the desired version cannot convert to Numeric, can you help me on this.
Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: The value '' cannot be converted to Numeric. (file: /etc/puppetlabs/code/environments/production/modules/vmtools_win/functions/compare_version.pp, line: 40, column: 47)
As best I can tell, WS 2019 support is practically the same as WS 2016, and possibly only metadata.json
needs updated. However, I do not currently have 2019 available to test with, though my company is looking at using it soon, hence this issue. Please let me know how I can help.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.