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

AIX user resource fails with new service packs

    XMLWordPrintable

    Details

    • Template:
      PUP Bug Template
    • Acceptance Criteria:
      Hide

      The user resource can successfully set the password for a user.

      Show
      The user resource can successfully set the password for a user.
    • Team:
      Platform OS
    • Sprint:
      Platform OS Kanban
    • Method Found:
      Customer Feedback
    • CS Priority:
      Major
    • CS Frequency:
      2 - 5-25% of Customers
    • CS Severity:
      4 - Major
    • CS Business Value:
      5 - $$$$$$
    • CS Impact:
      The user resource no longer works after AIX Service Packs. As AIX is a PE only platform it's important that we keep it working with new OS updates.
    • Zendesk Ticket IDs:
      33340,34953
    • Zendesk Ticket Count:
      2
    • Release Notes:
      Bug Fix
    • Release Notes Summary:
      Puppet on AIX can correctly manage users on the latest AIX service packs.

      Description

      New versions of AIX have changed the behavior of the chpasswd command to report errors when the command syntax is incorrect. See the links below.

      http://www-01.ibm.com/support/docview.wss?uid=isg1IV95055
      http://www-01.ibm.com/support/docview.wss?uid=isg1IJ04629

      The change to behavior went into 7100-05-01-1731 and 7200-02-01-1731, so setting the password in these AIX versions will fail. This will also cause new user creations to fail on these SPs.

      The issue is that in https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/user/aix.rb#L279 we use chpasswd -e -c username, where as the username is not a valid option to the command. Since the behavior change, customers have seen failures in the user resources on these new SPs.

      Errors

      Debug: Executing: '/usr/bin/mkuser shell=/usr/bin/ksh minage=0 maxage=0 groups=patrol patrol'
      Debug: Executing: '/bin/chpasswd -e -c patrol'
      Error: Could not set 'present' on ensure: undefined local variable or method `param' for User[patrol](provider=aix):Puppet::Type::User::ProviderAix at /root/newuser.pp:10
      Error: Could not set 'present' on ensure: undefined local variable or method `param' for User[patrol](provider=aix):Puppet::Type::User::ProviderAix at /root/newuser.pp:10
      Wrapped exception:
      undefined local variable or method `param' for User[patrol](provider=aix):Puppet::Type::User::ProviderAix
      Error: /Stage[main]/Main/User[patrol]/ensure: change from absent to present failed: Could not set 'present' on ensure: undefined local variable or method `param' for User[patrol](provider=aix):Puppet::Type::User::ProviderAix at /root/newuser.pp:10
      

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            jarret.lavallee Jarret Lavallee
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Zendesk Support