247 lines
6.7 KiB
YAML
247 lines
6.7 KiB
YAML
---
|
|
fixtures:
|
|
- SecureRBACPolicyFixture
|
|
|
|
vars:
|
|
- &project_id $ENVIRON['PROJECT_ID']
|
|
- &system_admin_headers
|
|
x-auth-token: user
|
|
x-roles: admin,member,reader
|
|
accept: application/json
|
|
content-type: application/json
|
|
openstack-api-version: placement latest
|
|
openstack-system-scope: all
|
|
- &system_reader_headers
|
|
x-auth-token: user
|
|
x-roles: reader
|
|
accept: application/json
|
|
content-type: application/json
|
|
openstack-api-version: placement latest
|
|
openstack-system-scope: all
|
|
- &project_admin_headers
|
|
x-auth-token: user
|
|
x-roles: admin,member,reader
|
|
x-project-id: *project_id
|
|
accept: application/json
|
|
content-type: application/json
|
|
openstack-api-version: placement latest
|
|
- &project_member_headers
|
|
x-auth-token: user
|
|
x-roles: member,reader
|
|
x-project-id: *project_id
|
|
accept: application/json
|
|
content-type: application/json
|
|
openstack-api-version: placement latest
|
|
- &project_reader_headers
|
|
x-auth-token: user
|
|
x-roles: reader
|
|
x-project-id: *project_id
|
|
accept: application/json
|
|
content-type: application/json
|
|
openstack-api-version: placement latest
|
|
|
|
tests:
|
|
|
|
- name: project admin cannot list traits
|
|
GET: /traits
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot list traits
|
|
GET: /traits
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot list traits
|
|
GET: /traits
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader can list traits
|
|
GET: /traits
|
|
request_headers: *system_reader_headers
|
|
status: 200
|
|
|
|
- name: system admin can list traits
|
|
GET: /traits
|
|
request_headers: *system_admin_headers
|
|
status: 200
|
|
|
|
- name: project admin cannot create trait
|
|
PUT: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot create trait
|
|
PUT: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot create trait
|
|
PUT: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader cannot create trait
|
|
PUT: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_reader_headers
|
|
status: 403
|
|
|
|
- name: system admin can create trait
|
|
PUT: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_admin_headers
|
|
status: 201
|
|
|
|
- name: project admin cannot show trait
|
|
GET: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot show trait
|
|
GET: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot show trait
|
|
GET: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader can show trait
|
|
GET: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_reader_headers
|
|
status: 204
|
|
|
|
- name: system admin can show trait
|
|
GET: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_admin_headers
|
|
status: 204
|
|
|
|
- name: system admin can create resource provider
|
|
POST: /resource_providers
|
|
request_headers: *system_admin_headers
|
|
data:
|
|
name: $ENVIRON['RP_NAME']
|
|
uuid: $ENVIRON['RP_UUID']
|
|
status: 200
|
|
|
|
- name: project admin cannot list resource provider traits
|
|
GET: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot list resource provider traits
|
|
GET: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot list resource provider traits
|
|
GET: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader can list resource provider traits
|
|
GET: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_reader_headers
|
|
status: 200
|
|
|
|
- name: system admin can list resource provider traits
|
|
GET: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_admin_headers
|
|
status: 200
|
|
|
|
- name: project admin cannot update resource provider traits
|
|
PUT: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
data:
|
|
traits:
|
|
- CUSTOM_TRAIT_X
|
|
resource_provider_generation: 0
|
|
|
|
- name: project member cannot update resource provider traits
|
|
PUT: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
data:
|
|
traits:
|
|
- CUSTOM_TRAIT_X
|
|
resource_provider_generation: 0
|
|
|
|
- name: project reader cannot update resource provider traits
|
|
PUT: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
data:
|
|
traits:
|
|
- CUSTOM_TRAIT_X
|
|
resource_provider_generation: 0
|
|
|
|
- name: system reader cannot update resource provider traits
|
|
PUT: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_reader_headers
|
|
status: 403
|
|
data:
|
|
traits:
|
|
- CUSTOM_TRAIT_X
|
|
resource_provider_generation: 0
|
|
|
|
- name: system admin can update resource provider traits
|
|
PUT: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_admin_headers
|
|
status: 200
|
|
data:
|
|
traits:
|
|
- CUSTOM_TRAIT_X
|
|
resource_provider_generation: 0
|
|
|
|
- name: project admin cannot delete resource provider traits
|
|
DELETE: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot delete resource provider traits
|
|
DELETE: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot delete resource provider traits
|
|
DELETE: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader cannot delete resource provider traits
|
|
DELETE: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_reader_headers
|
|
status: 403
|
|
|
|
- name: system admin can delete resource provider traits
|
|
DELETE: /resource_providers/$ENVIRON['RP_UUID']/traits
|
|
request_headers: *system_admin_headers
|
|
status: 204
|
|
|
|
- name: project admin cannot delete trait
|
|
DELETE: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_admin_headers
|
|
status: 403
|
|
|
|
- name: project member cannot delete trait
|
|
DELETE: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_member_headers
|
|
status: 403
|
|
|
|
- name: project reader cannot delete trait
|
|
DELETE: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *project_reader_headers
|
|
status: 403
|
|
|
|
- name: system reader cannot delete trait
|
|
DELETE: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_reader_headers
|
|
status: 403
|
|
|
|
- name: system admin cannot delete trait
|
|
DELETE: /traits/CUSTOM_TRAIT_X
|
|
request_headers: *system_admin_headers
|
|
status: 204
|