Sample heat templates for keystone resources

Adds sample hot templates for keystone resources
role, project, group and user.

Implements: blueprint keystone-resources
Change-Id: I7b8b09436685ed84cd2e53b8348d03d460ebb867
This commit is contained in:
Kanagaraj Manickam 2015-03-05 16:12:48 +05:30
parent fa19627e0a
commit 7526347946
6 changed files with 289 additions and 0 deletions

View File

@ -0,0 +1,57 @@
heat_template_version: 2013-05-23
description: Sample Keystone template
resources:
test_role_a:
type: OS::Keystone::Role
properties:
name: test_role_a
test_project_a:
type: OS::Keystone::Project
properties:
name: test_project_a
domain: default
description: Test project
enabled: true
test_group_a:
type: OS::Keystone::Group
properties:
name: test_group_a
domain: default
description: Test group
roles:
- role: {get_resource: test_role_a}
domain: default
- role: {get_resource: test_role_a}
project: {get_resource: test_project_a}
test_user_a:
type: OS::Keystone::User
properties:
name: test_user_a
domain: default
description: Test user
enabled: true
email: abc@xyz.com
password: password
default_project: {get_resource: test_project_a}
groups:
- {get_resource: test_group_a}
roles:
- role: {get_resource: test_role_a}
domain: default
- role: {get_resource: test_role_a}
project: {get_resource: test_project_a}
outputs:
test_user_a_id:
value: {get_resource: test_user_a}
test_group_a_id:
value: {get_resource: test_group_a}
test_project_a_id:
value: {get_resource: test_project_a}
test_role_a_id:
value: {get_resource: test_role_a}

View File

@ -0,0 +1,41 @@
heat_template_version: 2013-05-23
description: Sample Keystone Group template
parameters:
group_name:
type: string
description: Keystone group name
group_description:
type: string
description: Keystone group description
group_domain:
type: string
description: Keystone group domain name
group_role:
type: string
description: role
group_role_domain:
type: string
description: group role domain
group_role_project:
type: string
description: group role project
resources:
admin_group:
type: OS::Keystone::Group
properties:
name: {get_param: group_name}
domain: {get_param: group_domain}
description: {get_param: group_description}
roles:
- role: {get_param: group_role}
domain: {get_param: group_role_domain}
- role: {get_param: group_role}
project: {get_param: group_role_project}
outputs:
admin_group_id:
value: {get_resource: admin_group}

View File

@ -0,0 +1,30 @@
heat_template_version: 2013-05-23
description: Sample Keystone Project template
parameters:
project_name:
type: string
description: Keystone project name
project_description:
type: string
description: Keystone project description
project_enabled:
type: boolean
description: Keystone project is enabled or disabled
project_domain:
type: string
description: Keystone project domain name
resources:
admin_project:
type: OS::Keystone::Project
properties:
name: {get_param: project_name}
domain: {get_param: project_domain}
description: {get_param: project_description}
enabled: {get_param: project_enabled}
outputs:
admin_project_id:
value: {get_resource: admin_project}

View File

@ -0,0 +1,19 @@
heat_template_version: 2013-05-23
description: Sample Keystone Role template
parameters:
role_name:
type: string
description: Keystone role name
resources:
sample_role:
type: OS::Keystone::Role
properties:
name: {get_param: role_name}
outputs:
sample_role_id:
value: {get_resource: sample_role}
description: Sample keystone role identifier

View File

@ -0,0 +1,83 @@
heat_template_version: 2013-05-23
description: Sample Keystone template updated all resources except domain field
resources:
test_role_a:
type: OS::Keystone::Role
properties:
name: test_role_a_updated
test_role_b:
type: OS::Keystone::Role
properties:
name: test_role_b
test_project_a:
type: OS::Keystone::Project
properties:
name: test_project_a_updated
domain: default
description: Test project updated
enabled: false
test_project_b:
type: OS::Keystone::Project
properties:
name: test_project_b
domain: default
description: Test project updated
enabled: false
test_group_a:
type: OS::Keystone::Group
properties:
name: test_group_a_updated
domain: default
description: Test group updated
roles:
- role: {get_resource: test_role_b}
domain: default
- role: {get_resource: test_role_b}
project: {get_resource: test_project_a}
test_group_b:
type: OS::Keystone::Group
properties:
name: test_group_b
domain: default
description: Test group
test_user_a:
type: OS::Keystone::User
properties:
name: test_user_a_updated
domain: default
description: Test user updated
enabled: false
email: xyz@abc.com
password: passWORD
default_project: {get_resource: test_project_b}
groups:
- {get_resource: test_group_b}
roles:
- role: {get_resource: test_role_b}
domain: default
- role: {get_resource: test_role_b}
project: {get_resource: test_project_a}
outputs:
test_user_a_id:
value: {get_resource: test_user_a}
test_group_a_id:
value: {get_resource: test_group_a}
test_group_b_id:
value: {get_resource: test_group_b}
test_project_a_id:
value: {get_resource: test_project_a}
test_project_b_id:
value: {get_resource: test_project_b}
test_role_a_id:
value: {get_resource: test_role_a}
test_role_b_id:
value: {get_resource: test_role_b}

View File

@ -0,0 +1,59 @@
heat_template_version: 2013-05-23
description: Sample Keystone User template
parameters:
user_name:
type: string
description: Keystone user name
user_description:
type: string
description: Keystone user description
user_enabled:
type: boolean
description: Keystone user is enabled or disabled
user_domain:
type: string
description: Keystone user domain name
user_email:
type: string
description: Keystone user email
user_password:
type: string
description: Keystone user password
user_default_project:
type: string
description: Keystone user default project id
user_groups:
type: comma_delimited_list
description: Keystone groups, where this user is part of
group_role:
type: string
description: role
group_role_domain:
type: string
description: group role domain
group_role_project:
type: string
description: group role project
resources:
admin_user:
type: OS::Keystone::User
properties:
name: {get_param: user_name}
domain: {get_param: user_domain}
description: {get_param: user_description}
enabled: {get_param: user_enabled}
email: {get_param: user_email}
password: {get_param: user_password}
default_project: {get_param: user_default_project}
groups: {get_param: user_groups}
roles:
- role: {get_param: group_role}
domain: {get_param: group_role_domain}
- role: {get_param: group_role}
project: {get_param: group_role_project}
outputs:
admin_user_id:
value: {get_resource: admin_user}