| ... | ... |
@@ -797,38 +797,70 @@ function policy_add {
|
| 797 | 797 |
mv ${tmpfile} ${policy_file}
|
| 798 | 798 |
} |
| 799 | 799 |
|
| 800 |
+# Gets or creates a domain |
|
| 801 |
+# Usage: get_or_create_domain <name> <description> |
|
| 802 |
+function get_or_create_domain {
|
|
| 803 |
+ local os_url="$KEYSTONE_SERVICE_URI/v3" |
|
| 804 |
+ # Gets domain id |
|
| 805 |
+ local domain_id=$( |
|
| 806 |
+ # Gets domain id |
|
| 807 |
+ openstack --os-token=$OS_TOKEN --os-url=$os_url \ |
|
| 808 |
+ --os-identity-api-version=3 domain show $1 \ |
|
| 809 |
+ -f value -c id 2>/dev/null || |
|
| 810 |
+ # Creates new domain |
|
| 811 |
+ openstack --os-token=$OS_TOKEN --os-url=$os_url \ |
|
| 812 |
+ --os-identity-api-version=3 domain create $1 \ |
|
| 813 |
+ --description "$2" \ |
|
| 814 |
+ -f value -c id |
|
| 815 |
+ ) |
|
| 816 |
+ echo $domain_id |
|
| 817 |
+} |
|
| 818 |
+ |
|
| 800 | 819 |
# Gets or creates user |
| 801 |
-# Usage: get_or_create_user <username> <password> <project> [<email>] |
|
| 820 |
+# Usage: get_or_create_user <username> <password> <project> [<email> [<domain>]] |
|
| 802 | 821 |
function get_or_create_user {
|
| 803 | 822 |
if [[ ! -z "$4" ]]; then |
| 804 | 823 |
local email="--email=$4" |
| 805 | 824 |
else |
| 806 | 825 |
local email="" |
| 807 | 826 |
fi |
| 827 |
+ local os_cmd="openstack" |
|
| 828 |
+ local domain="" |
|
| 829 |
+ if [[ ! -z "$5" ]]; then |
|
| 830 |
+ domain="--domain=$5" |
|
| 831 |
+ os_cmd="$os_cmd --os-url=$KEYSTONE_SERVICE_URI/v3 --os-identity-api-version=3" |
|
| 832 |
+ fi |
|
| 808 | 833 |
# Gets user id |
| 809 | 834 |
local user_id=$( |
| 810 | 835 |
# Gets user id |
| 811 |
- openstack user show $1 -f value -c id 2>/dev/null || |
|
| 836 |
+ $os_cmd user show $1 $domain -f value -c id 2>/dev/null || |
|
| 812 | 837 |
# Creates new user |
| 813 |
- openstack user create \ |
|
| 838 |
+ $os_cmd user create \ |
|
| 814 | 839 |
$1 \ |
| 815 | 840 |
--password "$2" \ |
| 816 | 841 |
--project $3 \ |
| 817 | 842 |
$email \ |
| 843 |
+ $domain \ |
|
| 818 | 844 |
-f value -c id |
| 819 | 845 |
) |
| 820 | 846 |
echo $user_id |
| 821 | 847 |
} |
| 822 | 848 |
|
| 823 | 849 |
# Gets or creates project |
| 824 |
-# Usage: get_or_create_project <name> |
|
| 850 |
+# Usage: get_or_create_project <name> [<domain>] |
|
| 825 | 851 |
function get_or_create_project {
|
| 826 | 852 |
# Gets project id |
| 853 |
+ local os_cmd="openstack" |
|
| 854 |
+ local domain="" |
|
| 855 |
+ if [[ ! -z "$2" ]]; then |
|
| 856 |
+ domain="--domain=$2" |
|
| 857 |
+ os_cmd="$os_cmd --os-url=$KEYSTONE_SERVICE_URI/v3 --os-identity-api-version=3" |
|
| 858 |
+ fi |
|
| 827 | 859 |
local project_id=$( |
| 828 | 860 |
# Gets project id |
| 829 |
- openstack project show $1 -f value -c id 2>/dev/null || |
|
| 861 |
+ $os_cmd project show $1 $domain -f value -c id 2>/dev/null || |
|
| 830 | 862 |
# Creates new project if not exists |
| 831 |
- openstack project create $1 -f value -c id |
|
| 863 |
+ $os_cmd project create $1 $domain -f value -c id |
|
| 832 | 864 |
) |
| 833 | 865 |
echo $project_id |
| 834 | 866 |
} |
| ... | ... |
@@ -468,12 +468,21 @@ EOF |
| 468 | 468 |
iniset ${testfile} func_test username3 swiftusertest3
|
| 469 | 469 |
iniset ${testfile} func_test account2 swifttenanttest2
|
| 470 | 470 |
iniset ${testfile} func_test username2 swiftusertest2
|
| 471 |
+ iniset ${testfile} func_test account4 swifttenanttest4
|
|
| 472 |
+ iniset ${testfile} func_test username4 swiftusertest4
|
|
| 473 |
+ iniset ${testfile} func_test password4 testing4
|
|
| 474 |
+ iniset ${testfile} func_test domain4 swift_test
|
|
| 471 | 475 |
|
| 472 | 476 |
if is_service_enabled key;then |
| 473 | 477 |
iniuncomment ${testfile} func_test auth_version
|
| 478 |
+ local auth_vers=$(iniget ${testfile} func_test auth_version)
|
|
| 474 | 479 |
iniset ${testfile} func_test auth_host ${KEYSTONE_SERVICE_HOST}
|
| 475 | 480 |
iniset ${testfile} func_test auth_port ${KEYSTONE_AUTH_PORT}
|
| 476 |
- iniset ${testfile} func_test auth_prefix /v2.0/
|
|
| 481 |
+ if [[ $auth_vers == "3" ]]; then |
|
| 482 |
+ iniset ${testfile} func_test auth_prefix /v3/
|
|
| 483 |
+ else |
|
| 484 |
+ iniset ${testfile} func_test auth_prefix /v2.0/
|
|
| 485 |
+ fi |
|
| 477 | 486 |
fi |
| 478 | 487 |
|
| 479 | 488 |
local swift_log_dir=${SWIFT_DATA_DIR}/logs
|
| ... | ... |
@@ -548,12 +557,13 @@ function create_swift_disk {
|
| 548 | 548 |
# since we want to make it compatible with tempauth which use |
| 549 | 549 |
# underscores for separators. |
| 550 | 550 |
|
| 551 |
-# Tenant User Roles |
|
| 551 |
+# Tenant User Roles Domain |
|
| 552 | 552 |
# ------------------------------------------------------------------ |
| 553 |
-# service swift service |
|
| 554 |
-# swifttenanttest1 swiftusertest1 admin |
|
| 555 |
-# swifttenanttest1 swiftusertest3 anotherrole |
|
| 556 |
-# swifttenanttest2 swiftusertest2 admin |
|
| 553 |
+# service swift service default |
|
| 554 |
+# swifttenanttest1 swiftusertest1 admin default |
|
| 555 |
+# swifttenanttest1 swiftusertest3 anotherrole default |
|
| 556 |
+# swifttenanttest2 swiftusertest2 admin default |
|
| 557 |
+# swifttenanttest4 swiftusertest4 admin swift_test |
|
| 557 | 558 |
|
| 558 | 559 |
function create_swift_accounts {
|
| 559 | 560 |
# Defines specific passwords used by tools/create_userrc.sh |
| ... | ... |
@@ -562,6 +572,7 @@ function create_swift_accounts {
|
| 562 | 562 |
export swiftusertest1_password=testing |
| 563 | 563 |
export swiftusertest2_password=testing2 |
| 564 | 564 |
export swiftusertest3_password=testing3 |
| 565 |
+ export swiftusertest4_password=testing4 |
|
| 565 | 566 |
|
| 566 | 567 |
KEYSTONE_CATALOG_BACKEND=${KEYSTONE_CATALOG_BACKEND:-sql}
|
| 567 | 568 |
|
| ... | ... |
@@ -603,6 +614,16 @@ function create_swift_accounts {
|
| 603 | 603 |
"$swift_tenant_test2" "test2@example.com") |
| 604 | 604 |
die_if_not_set $LINENO swift_user_test2 "Failure creating swift_user_test2" |
| 605 | 605 |
get_or_add_user_role $admin_role $swift_user_test2 $swift_tenant_test2 |
| 606 |
+ |
|
| 607 |
+ local swift_domain=$(get_or_create_domain swift_test 'Used for swift functional testing') |
|
| 608 |
+ die_if_not_set $LINENO swift_domain "Failure creating swift_test domain" |
|
| 609 |
+ |
|
| 610 |
+ local swift_tenant_test4=$(get_or_create_project swifttenanttest4 $swift_domain) |
|
| 611 |
+ die_if_not_set $LINENO swift_tenant_test4 "Failure creating swift_tenant_test4" |
|
| 612 |
+ local swift_user_test4=$(get_or_create_user swiftusertest4 $swiftusertest4_password \ |
|
| 613 |
+ $swift_tenant_test4 "test4@example.com" $swift_domain) |
|
| 614 |
+ die_if_not_set $LINENO swift_user_test4 "Failure creating swift_user_test4" |
|
| 615 |
+ get_or_add_user_role $admin_role $swift_user_test4 $swift_tenant_test4 |
|
| 606 | 616 |
} |
| 607 | 617 |
|
| 608 | 618 |
# init_swift() - Initialize rings |