# salt.modules.keystoneng

Keystone module for interacting with OpenStack Keystone

Added in version 2018.3.0.

:depends:shade

Example configuration

    keystone:
      cloud: default

    keystone:
      auth:
        username: admin
        password: password123
        user_domain_name: mydomain
        project_name: myproject
        project_domain_name: myproject
        auth_url: https://example.org:5000/v3
      identity_api_version: 3

salt.modules.keystoneng.compare_changes(obj, **kwargs)

  Compare two dicts returning only keys that exist in the first dict and are different in the second one

salt.modules.keystoneng.domain_create(auth=None, **kwargs)

  Create a domain

  CLI Example:

      salt '*' keystoneng.domain_create name=domain1

salt.modules.keystoneng.domain_delete(auth=None, **kwargs)

  Delete a domain

  CLI Example:

      salt '*' keystoneng.domain_delete name=domain1
      salt '*' keystoneng.domain_delete name=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.domain_get(auth=None, **kwargs)

  Get a single domain

  CLI Example:

      salt '*' keystoneng.domain_get name=domain1
      salt '*' keystoneng.domain_get name=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.domain_list(auth=None, **kwargs)

  List domains

  CLI Example:

      salt '*' keystoneng.domain_list

salt.modules.keystoneng.domain_search(auth=None, **kwargs)

  Search domains

  CLI Example:

      salt '*' keystoneng.domain_search
      salt '*' keystoneng.domain_search name=domain1

salt.modules.keystoneng.domain_update(auth=None, **kwargs)

  Update a domain

  CLI Example:

      salt '*' keystoneng.domain_update name=domain1 new_name=newdomain
      salt '*' keystoneng.domain_update name=domain1 enabled=True description='new description'

salt.modules.keystoneng.endpoint_create(auth=None, **kwargs)

  Create an endpoint

  CLI Example:

      salt '*' keystoneng.endpoint_create interface=admin service=glance url=https://example.org:9292
      salt '*' keystoneng.endpoint_create interface=public service=glance region=RegionOne url=https://example.org:9292
      salt '*' keystoneng.endpoint_create interface=admin service=glance url=https://example.org:9292 enabled=True

salt.modules.keystoneng.endpoint_delete(auth=None, **kwargs)

  Delete an endpoint

  CLI Example:

      salt '*' keystoneng.endpoint_delete id=3bee4bd8c2b040ee966adfda1f0bfca9

salt.modules.keystoneng.endpoint_get(auth=None, **kwargs)

  Get a single endpoint

  CLI Example:

      salt '*' keystoneng.endpoint_get id=02cffaa173b2460f98e40eda3748dae5

salt.modules.keystoneng.endpoint_list(auth=None, **kwargs)

  List endpoints

  CLI Example:

      salt '*' keystoneng.endpoint_list

salt.modules.keystoneng.endpoint_search(auth=None, **kwargs)

  Search endpoints

  CLI Example:

      salt '*' keystoneng.endpoint_search
      salt '*' keystoneng.endpoint_search id=02cffaa173b2460f98e40eda3748dae5

salt.modules.keystoneng.endpoint_update(auth=None, **kwargs)

  Update an endpoint

  CLI Example:

      salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 interface=public enabled=False
      salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 region=newregion
      salt '*' keystoneng.endpoint_update endpoint_id=4f961ad09d2d48948896bbe7c6a79717 service_name_or_id=glance url=https://example.org:9292

salt.modules.keystoneng.get_entity(ent_type, **kwargs)

  Attempt to query Keystone for more information about an entity

salt.modules.keystoneng.get_openstack_cloud(auth=None)

  Return an openstack_cloud

salt.modules.keystoneng.get_operator_cloud(auth=None)

  Return an operator_cloud

salt.modules.keystoneng.group_create(auth=None, **kwargs)

  Create a group

  CLI Example:

      salt '*' keystoneng.group_create name=group1
      salt '*' keystoneng.group_create name=group2 domain=domain1 description='my group2'

salt.modules.keystoneng.group_delete(auth=None, **kwargs)

  Delete a group

  CLI Example:

      salt '*' keystoneng.group_delete name=group1
      salt '*' keystoneng.group_delete name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.group_delete name=0e4febc2a5ab4f2c8f374b054162506d

salt.modules.keystoneng.group_get(auth=None, **kwargs)

  Get a single group

  CLI Example:

      salt '*' keystoneng.group_get name=group1
      salt '*' keystoneng.group_get name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.group_get name=0e4febc2a5ab4f2c8f374b054162506d

salt.modules.keystoneng.group_list(auth=None, **kwargs)

  List groups

  CLI Example:

      salt '*' keystoneng.group_list
      salt '*' keystoneng.group_list domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.group_search(auth=None, **kwargs)

  Search for groups

  CLI Example:

      salt '*' keystoneng.group_search name=group1
      salt '*' keystoneng.group_search domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.group_update(auth=None, **kwargs)

  Update a group

  CLI Example:

      salt '*' keystoneng.group_update name=group1 description='new description'
      salt '*' keystoneng.group_create name=group2 domain_id=b62e76fbeeff4e8fb77073f591cf211e new_name=newgroupname
      salt '*' keystoneng.group_create name=0e4febc2a5ab4f2c8f374b054162506d new_name=newgroupname

salt.modules.keystoneng.project_create(auth=None, **kwargs)

  Create a project

  CLI Example:

      salt '*' keystoneng.project_create name=project1
      salt '*' keystoneng.project_create name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.project_create name=project3 enabled=False description='my project3'

salt.modules.keystoneng.project_delete(auth=None, **kwargs)

  Delete a project

  CLI Example:

      salt '*' keystoneng.project_delete name=project1
      salt '*' keystoneng.project_delete name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.project_delete name=f315afcf12f24ad88c92b936c38f2d5a

salt.modules.keystoneng.project_get(auth=None, **kwargs)

  Get a single project

  CLI Example:

      salt '*' keystoneng.project_get name=project1
      salt '*' keystoneng.project_get name=project2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.project_get name=f315afcf12f24ad88c92b936c38f2d5a

salt.modules.keystoneng.project_list(auth=None, **kwargs)

  List projects

  CLI Example:

      salt '*' keystoneng.project_list
      salt '*' keystoneng.project_list domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.project_search(auth=None, **kwargs)

  Search projects

  CLI Example:

      salt '*' keystoneng.project_search
      salt '*' keystoneng.project_search name=project1
      salt '*' keystoneng.project_search domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.project_update(auth=None, **kwargs)

  Update a project

  CLI Example:

      salt '*' keystoneng.project_update name=project1 new_name=newproject
      salt '*' keystoneng.project_update name=project2 enabled=False description='new description'

salt.modules.keystoneng.role_assignment_list(auth=None, **kwargs)

  List role assignments

  CLI Example:

      salt '*' keystoneng.role_assignment_list

salt.modules.keystoneng.role_create(auth=None, **kwargs)

  Create a role

  CLI Example:

      salt '*' keystoneng.role_create name=role1
      salt '*' keystoneng.role_create name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.role_delete(auth=None, **kwargs)

  Delete a role

  CLI Example:

      salt '*' keystoneng.role_delete name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.role_delete name=1eb6edd5525e4ac39af571adee673559

salt.modules.keystoneng.role_get(auth=None, **kwargs)

  Get a single role

  CLI Example:

      salt '*' keystoneng.role_get name=role1
      salt '*' keystoneng.role_get name=role1 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.role_get name=1eb6edd5525e4ac39af571adee673559

salt.modules.keystoneng.role_grant(auth=None, **kwargs)

  Grant a role in a project/domain to a user/group

  CLI Example:

      salt '*' keystoneng.role_grant name=role1 user=user1 project=project1
      salt '*' keystoneng.role_grant name=ddbe3e0ed74e4c7f8027bad4af03339d group=user1 project=project1 domain=domain1
      salt '*' keystoneng.role_grant name=ddbe3e0ed74e4c7f8027bad4af03339d group=19573afd5e4241d8b65c42215bae9704 project=1dcac318a83b4610b7a7f7ba01465548

salt.modules.keystoneng.role_list(auth=None, **kwargs)

  List roles

  CLI Example:

      salt '*' keystoneng.role_list
      salt '*' keystoneng.role_list domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.role_revoke(auth=None, **kwargs)

  Grant a role in a project/domain to a user/group

  CLI Example:

      salt '*' keystoneng.role_revoke name=role1 user=user1 project=project1
      salt '*' keystoneng.role_revoke name=ddbe3e0ed74e4c7f8027bad4af03339d group=user1 project=project1 domain=domain1
      salt '*' keystoneng.role_revoke name=ddbe3e0ed74e4c7f8027bad4af03339d group=19573afd5e4241d8b65c42215bae9704 project=1dcac318a83b4610b7a7f7ba01465548

salt.modules.keystoneng.role_search(auth=None, **kwargs)

  Search roles

  CLI Example:

      salt '*' keystoneng.role_search
      salt '*' keystoneng.role_search name=role1
      salt '*' keystoneng.role_search domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.role_update(auth=None, **kwargs)

  Update a role

  CLI Example:

      salt '*' keystoneng.role_update name=role1 new_name=newrole
      salt '*' keystoneng.role_update name=1eb6edd5525e4ac39af571adee673559 new_name=newrole

salt.modules.keystoneng.service_create(auth=None, **kwargs)

  Create a service

  CLI Example:

      salt '*' keystoneng.service_create name=glance type=image
      salt '*' keystoneng.service_create name=glance type=image description="Image"

salt.modules.keystoneng.service_delete(auth=None, **kwargs)

  Delete a service

  CLI Example:

      salt '*' keystoneng.service_delete name=glance
      salt '*' keystoneng.service_delete name=39cc1327cdf744ab815331554430e8ec

salt.modules.keystoneng.service_get(auth=None, **kwargs)

  Get a single service

  CLI Example:

      salt '*' keystoneng.service_get name=glance
      salt '*' keystoneng.service_get name=75a5804638944b3ab54f7fbfcec2305a

salt.modules.keystoneng.service_list(auth=None, **kwargs)

  List services

  CLI Example:

      salt '*' keystoneng.service_list

salt.modules.keystoneng.service_search(auth=None, **kwargs)

  Search services

  CLI Example:

      salt '*' keystoneng.service_search
      salt '*' keystoneng.service_search name=glance
      salt '*' keystoneng.service_search name=135f0403f8e544dc9008c6739ecda860

salt.modules.keystoneng.service_update(auth=None, **kwargs)

  Update a service

  CLI Example:

      salt '*' keystoneng.service_update name=cinder type=volumev2
      salt '*' keystoneng.service_update name=cinder description='new description'
      salt '*' keystoneng.service_update name=ab4d35e269f147b3ae2d849f77f5c88f enabled=False

salt.modules.keystoneng.setup_clouds(auth=None)

  Call functions to create Shade cloud objects in __context__ to take advantage of Shade's in-memory caching across several states

salt.modules.keystoneng.user_create(auth=None, **kwargs)

  Create a user

  CLI Example:

      salt '*' keystoneng.user_create name=user1
      salt '*' keystoneng.user_create name=user2 password=1234 enabled=False
      salt '*' keystoneng.user_create name=user3 domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.user_delete(auth=None, **kwargs)

  Delete a user

  CLI Example:

      salt '*' keystoneng.user_delete name=user1
      salt '*' keystoneng.user_delete name=user2 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.user_delete name=a42cbbfa1e894e839fd0f584d22e321f

salt.modules.keystoneng.user_get(auth=None, **kwargs)

  Get a single user

  CLI Example:

      salt '*' keystoneng.user_get name=user1
      salt '*' keystoneng.user_get name=user1 domain_id=b62e76fbeeff4e8fb77073f591cf211e
      salt '*' keystoneng.user_get name=02cffaa173b2460f98e40eda3748dae5

salt.modules.keystoneng.user_list(auth=None, **kwargs)

  List users

  CLI Example:

      salt '*' keystoneng.user_list
      salt '*' keystoneng.user_list domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.user_search(auth=None, **kwargs)

  List users

  CLI Example:

      salt '*' keystoneng.user_list
      salt '*' keystoneng.user_list domain_id=b62e76fbeeff4e8fb77073f591cf211e

salt.modules.keystoneng.user_update(auth=None, **kwargs)

  Update a user

  CLI Example:

      salt '*' keystoneng.user_update name=user1 enabled=False description='new description'
      salt '*' keystoneng.user_update name=user1 new_name=newuser