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

Allow running puppet commands via AWS Session Manager on Windows Server 2019



    • Improvement
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • PUP 6.10.1, PUP 6.16.0
    • PUP 6.18.0
    • None
    • Monolithic
    • RHEL 7 (x86_64)
    • PE 2019.2.2, PE 2019.8
    • Night's Watch
    • 2
    • NW - 2020-08-18
    • 38695,39979
    • 2
    • Known Issue
    • customers trying to install puppet agent on EC2 Windows Server 2019 who access the instance via AWS Session Manager will hit an error due to a conflict between the ssm-user created to access the instance and the win32-dir gem
    • Needs Assessment


      Customers who are accessing EC2 Windows Server 2019 instances via AWS Session Manager are seeing the following error when trying to run the install script or puppet commands.

      C:/Program Files/Puppet Labs/Puppet/puppet/lib/ruby/gems/2.5.0/gems/win32-dir-0.4.9/lib/win32/dir.rb:105:in `<class:Dir>': uninitialized constant Dir::PERSONAL (Name Error)

      From my understanding the issue is with the win32-dir gem, which is owned by Chef. In particular, the ssm-user, which the AWS SSM Agent creates to connect to the instance, does not have a unique user profile and instead is using C:\Windows\system32\config\systemprofile.

      As a result the gem is unable to resolve the PERSONAL variable, which is looking for Documents/My Documents folder and the ssm-user does not have those folders as its using the system profile.

      Current workaround is adding the install script to EC2 user-data and initiating manual puppet runs from the console.


        Issue Links



              luchian.nemes Luchian Nemes
              corey.benefrayim Corey Benefrayim
              0 Vote for this issue
              6 Start watching this issue



                Zendesk Support