Jira (PUP-11695) Windows package uninstall uses msi provider when exe provider available
Title: Message Title GeorgesZ commented on PUP-11695 Re: Windows package uninstall uses msi provider when exe provider available A non-MSI installer like an executable, can use internally MSI installer to install things. When there is a choice between an MSI installer registry (SystemComponent=1) and a non-MSI installer registry, it seems that the choice should be given to the non-MSI installer registry, so that it has a change to run the MSI uninstaller before uninstalling itself. In the above case, uninstalling using the MSI registry does not remove the entry from the Apps & Features control panel. It only removes pieces of the components. In fact uninstalling using the MSI {{msiexec /uninstall " {F56405A6-5942-4EC9-A446-54167AA57752} "}} gives this warning: If you continue with this uninstall, 1 or more products may stop working properly. Do you want to continue with this uninstall anyway? Add Comment This message was sent by Atlassian Jira (v8.20.11#820011-sha1:0629dd8) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-bugs/JIRA.477888.167287293.744.1673643540022%40Atlassian.JIRA.
Jira (PUP-11695) Windows package uninstall uses msi provider when exe provider available
Title: Message Title GeorgesZ commented on PUP-11695 Re: Windows package uninstall uses msi provider when exe provider available The dotnet-sdk-2.1.802-win-x86.exe downloadable from https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-2.1.802-windows-x86-installer creates two entries in the Installer registry: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall{92a4ca67-9d75-4067-8522-e684fd033096}: Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{92a4ca67-9d75-4067-8522-e684fd033096}] "BundleAddonCode"=hex(7): "BundleCachePath"="C:\\ProgramData\\Package Cache\\{92a4ca67-9d75-4067-8522-e684fd033096}\\dotnet-sdk-2.1.802-win-x86.exe" "BundleDetectCode"=hex(7): "BundlePatchCode"=hex(7): "BundleProviderKey"="{92a4ca67-9d75-4067-8522-e684fd033096}" "BundleTag"="" "BundleUpgradeCode"=hex(7):7b,00,37,00,39,00,32,00,38,00,43,00,42,00,43,00,38,\ 00,2d,00,35,00,37,00,44,00,43,00,2d,00,37,00,30,00,31,00,32,00,2
Jira (PUP-11695) Windows package uninstall uses msi provider when exe provider available
Title: Message Title GeorgesZ commented on PUP-11695 Re: Windows package uninstall uses msi provider when exe provider available This is not a issue with that particular .net core sdk. Uninstall from the Add/Remove control panel works correctly and uninstalls things using the cached exe, not using the msiexec. Add Comment This message was sent by Atlassian Jira (v8.20.11#820011-sha1:0629dd8) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-bugs/JIRA.477888.167287293.71850.1673448840065%40Atlassian.JIRA.
Jira (PUP-11695) Windows package uninstall uses msi provider when exe provider available
Title: Message Title GeorgesZ updated an issue Puppet / PUP-11695 Windows package uninstall uses msi provider when exe provider available Change By: GeorgesZ *Puppet Version:* 7.20.0{*}Puppet Server Version:{*} ** 7.20.0*OS Name/Version:* Windows 10Using the package resource, version 2.1.802 of Microsoft .NET SDK x86 cannot be uninstalled like the x64 architecture or other versions (eg: 2.1.403, 5.0.102, 5.0.401).Installers for Microsoft .NET SDK can be downloaded using a url like this [https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-${version}-windows-x86-installer|https://dotnet.microsoft.com/en-us/download/dotnet] and can be installed/uninstalled using something like this:{code: java puppet }package { "Microsoft .NET ${optional_core}SDK ${version} (x86)": ensure => $ensure, source => "${download_folder}/dotnet-sdk-${version}-win-x86.exe", install_options => ['/install', '/passive', '/norestart'], uninstall_options => ['/uninstall', '/passive', '/norestart'],}package { "Microsoft .NET ${optional_core}SDK ${version} (x64)": ensure => $ensure, source => "${download_folder}/dotnet-sdk-${version}-win-x86.exe", install_options => ['/install', '/passive', '/norestart'], uninstall_options => ['/uninstall', '/passive', '/norestart'],}{code}except for version 2.1.802 that MUST be installed/uninstalled using something like this:{code: java puppet } if $ensure == absent {exec { '"C:\\ProgramData\\Package Cache\\{92a4ca67-9d75-4067-8522-e684fd033096}\\dotnet-sdk-2.1.802-win-x86.exe" /uninstall /passive /norestart':_onlyif_ => 'C:\\Windows\\System32\\reg.exe query HKLM\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{92a4ca67-9d75-4067-8522-e684fd033096}', }} else { package { 'Microsoft .NET Core SDK 2.1.802 (x86)': ensure => absent present , source => "${download_folder}/dotnet-sdk-2.1.802-win-x86.exe", install_options => ['/install', '/passive', '/norestart'], uninstall_options => undef, } }package { 'Microsoft .NET Core SDK 2.1.802 (x64)': ensure => absent $ensure , source => "${download_folder}/dotnet-sdk-2.1.802-win-x64.exe", install_options => ['/install', '/passive', '/norestart'], uninstall_options => ['/uninstall', '/passive', '/norestart'],}{code}The cause seems to be that the package resource uninstalls Microsoft .NET SDK version 2.1.802 x86 using the msi provider:{noformat}msiexec.exe /qn /norestart /x {F56405A6-5942-4EC9-A446-54167AA57752} $uninstall_options{noformat}when it could use the exe provider:{noformat}"C:\ProgramData\Package Cache\{92a4ca67-9d75-4067-8522-e684fd033096}\dotnet-sdk-2.1.802-win-x86.exe" /uninstall $uninstall_options{noformat}I am wondering if the root cause could be [this|https://github.com/puppetlabs/puppet/blob/main/lib/puppet/provider/package/windows/package.rb#L28] where the MSI provider may be used before the EXE provider. It seems that in this case, the Microsoft .NET SDK EXE installer uses inte
Jira (PUP-11695) Windows package uninstall uses msi provider when exe provider available
Title: Message Title GeorgesZ created an issue Puppet / PUP-11695 Windows package uninstall uses msi provider when exe provider available Issue Type: Bug Affects Versions: PUP 7.20.0 Assignee: Unassigned Components: Windows Created: 2023/01/04 2:55 PM Priority: Normal Reporter: GeorgesZ Puppet Version: 7.20.0 Puppet Server Version: ** 7.20.0 OS Name/Version: Windows 10 Using the package resource, version 2.1.802 of Microsoft .NET SDK x86 cannot be uninstalled like the x64 architecture or other versions (eg: 2.1.403, 5.0.102, 5.0.401). Installers for Microsoft .NET SDK can be downloaded using a url like this https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-${version}-windows-x86-installer and can be installed/uninstalled using something like this: package { "Microsoft .NET ${optional_core}SDK ${version} (x86)": ensure => $ensure, source => "${download_folder}/dotnet-sdk-${version}-win-x86.exe",
Jira (PUP-8257) Puppet::FileSystem::Windows should support LFN
Title: Message Title GeorgesZ commented on PUP-8257 Re: Puppet::FileSystem::Windows should support LFN It should also work if long path have been enabled. See [Enable Long Paths in Windows 10, Version 1607, and Later https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd#enable-long-paths-in-windows-10-version-1607-and-later]. For example, the purge attribute of the file resource fails when it tries to remove entries with a path longer than 260 characters with an error like this Err: No such file or directory @ - C:/ Add Comment This message was sent by Atlassian Jira (v8.13.2#813002-sha1:c495a97)
Jira (PUP-10813) Unit test error with file resource content using find_template()
Title: Message Title GeorgesZ commented on PUP-10813 Re: Unit test error with file resource content using find_template() Hi Nick Walker. I simplified the code reproducing the error and showing that find_template() does indeed work as expected during a Puppet apply. Just run Test.cmd in the attached FindTemplateBug2.zip. It contains the full content of the folder after running Test.cmd. Add Comment This message was sent by Atlassian Jira (v8.5.2#805002-sha1:a66f935) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-bugs/JIRA.380125.1607383066000.99248.1608069003334%40Atlassian.JIRA.
Jira (PUP-10813) Unit test error with file resource content using find_template()
Title: Message Title GeorgesZ updated an issue Puppet / PUP-10813 Unit test error with file resource content using find_template() Change By: GeorgesZ Attachment: FindTemplateBug2.zip Add Comment This message was sent by Atlassian Jira (v8.5.2#805002-sha1:a66f935) -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-bugs/JIRA.380125.1607383066000.99244.1608068940035%40Atlassian.JIRA.
Jira (PUP-10813) Unit test error with file resource content using find_template()
Title: Message Title GeorgesZ updated an issue Puppet / PUP-10813 Unit test error with file resource content using find_template() Change By: GeorgesZ *Puppet Version: 6.17.0* *Puppet Server Version: N/A* *OS Name/Version: Windows 10, Linux*Running unit test on puppet code that uses find_template gives error during compilation of the unit test. Describe steps to reproduce: * {noformat} pdk new module ...{noformat} * {noformat} pdk new class ...{noformat} * Add to new class a file resource with content using find_template(). * {noformat} pdk test unit{noformat}*Desired Behavior:*The unit test should pass.*Actual Behavior:*When running the unit tests using for example `pdk test unit`, a file resource like this{code:java} file { "${rootFolder}/content_find_template.file":ensure => file,content => find_template($template).file, }{code}gives an error like this:{code:java} 1) my_test::test_class on centos-7-x86_64 is expected to compile into a catalogue without dependency cycles Failure/Error: it { is_expected.to compile } error during compilation: Evaluation Error: Error while evaluating a Method call, Could not find any files from F: / Tools/Puppet/TestFindTemplateBug/ my_test/spec/fixtures/modules/my_test/templates/template.erb (file: F: / Tools/Puppet/TestFindTemplateBug/ my_test/spec/fixtures/modules/my_test/manifests/test_class.pp, line: 23, column: 40) on node naussma9xzrhk2 . ra-int.com # . /spec/classes/test_class_spec.rb:10:in `block (4 levels) in '{code}See attached zip file that reproduces the error from scratch using the latest PDK.A similar error seen on Linux in our CI using a GitLab runner. The error is something like: {code:java} error during compilation: Evaluation Error: Error while evaluating a Method call, Could not find any files from /mnt/tmpfs/site-modules//spec/fixtures/modules//templates/.erb{code} Add Comment
Jira (PUP-10813) Unit test error with file resource content using find_template()
Title: Message Title GeorgesZ created an issue Puppet / PUP-10813 Unit test error with file resource content using find_template() Issue Type: Bug Affects Versions: PUP 6.17.0 Assignee: Unassigned Attachments: FindTemplateBug.zip Created: 2020/12/07 3:17 PM Environment: Windows and Linux. Priority: Normal Reporter: GeorgesZ Puppet Version: 6.17.0 Puppet Server Version: N/A OS Name/Version: Windows 10, Linux Running unit test on puppet code that uses find_template gives error during compilation of the unit test. Describe steps to reproduce: pdk new module ...