From 59f00dd10be2bc21ec7a9231444ee64885f95502 Mon Sep 17 00:00:00 2001
From: Jarrod Johnson <jjohnson2@lenovo.com>
Date: Thu, 31 Jan 2019 15:59:49 -0500
Subject: [PATCH] Set password before access

In at least one scenario, we want the password to be squared away
before we start manipulating the user access level.
---
 .../confluent/plugins/hardwaremanagement/ipmi.py          | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py b/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py
index 19506ee5..10026b88 100644
--- a/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py
+++ b/confluent_server/confluent/plugins/hardwaremanagement/ipmi.py
@@ -745,14 +745,16 @@ class IpmiHandler(object):
                 if 'username' in user:
                     self.ipmicmd.set_user_name(uid=user['uid'],
                                                name=user['username'])
-                if 'privilege_level' in user:
-                    self.ipmicmd.set_user_access(uid=user['uid'],
-                                    privilege_level=user['privilege_level'])
+
                 if 'password' in user:
                     self.ipmicmd.set_user_password(uid=user['uid'],
                                                    password=user['password'])
                     self.ipmicmd.set_user_password(uid=user['uid'],
                                     mode='enable', password=user['password'])
+                    if 'privilege_level' in user:
+                        self.ipmicmd.set_user_access(uid=user['uid'],
+                                                     privilege_level=user[
+                                                         'privilege_level'])
                 if 'enabled' in user:
                     if user['enabled'] == 'yes':
                         mode = 'enable'