creds.plan

create_plan([existing_users, …]) Determine what changes are required.
creds.plan.create_plan(existing_users=None, proposed_users=None, purge_undefined=None, protected_users=None, allow_non_unique_id=None, manage_home=True, manage_keys=True)[source]

Determine what changes are required.

Parameters:
  • existing_users (Users) – List of discovered users
  • proposed_users (Users) – List of proposed users
  • purge_undefined (bool) – Remove discovered users that have not been defined in proposed users list
  • protected_users (list) – List of users’ names that should not be evaluated as part of the plan creation process
  • allow_non_unique_id (bool) – Allow more than one user to have the same uid
  • manage_home (bool) – Create/remove users’ home directories
  • manage_keys (bool) – Add/update/remove users’ keys (manage_home must also be true)
Returns:

Differences between discovered and proposed users with a

list of operations that will achieve the desired state.

Return type:

list

creds.plan.execute_plan(plan=None)[source]

Create, Modify or Delete, depending on plan item.