Compare commits
3 commits
master
...
robot-test
Author | SHA1 | Date | |
---|---|---|---|
|
157602ca06 | ||
|
dd19303442 | ||
|
e09498bc4e |
9 changed files with 76 additions and 136 deletions
21
.github/workflows/dco.yml
vendored
Normal file
21
.github/workflows/dco.yml
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
name: DCO check
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
commits_check_job:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Commits Check
|
||||||
|
steps:
|
||||||
|
- name: Get PR Commits
|
||||||
|
id: 'get-pr-commits'
|
||||||
|
uses: tim-actions/get-pr-commits@master
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
- name: DCO Check
|
||||||
|
uses: tim-actions/dco@master
|
||||||
|
with:
|
||||||
|
commits: ${{ steps.get-pr-commits.outputs.commits }}
|
|
@ -32,7 +32,7 @@ def put_storagegroup(wallet: str, cid: str, objects: list, bearer_token: str = "
|
||||||
cmd = (
|
cmd = (
|
||||||
f'{NEOFS_CLI_EXEC} --rpc-endpoint {NEOFS_ENDPOINT} '
|
f'{NEOFS_CLI_EXEC} --rpc-endpoint {NEOFS_ENDPOINT} '
|
||||||
f'--wallet {wallet} --config {wallet_config} '
|
f'--wallet {wallet} --config {wallet_config} '
|
||||||
f'storagegroup put --cid {cid} '
|
f'storagegroup put --cid {cid} --lifetime 5 '
|
||||||
f'--members {",".join(objects)} '
|
f'--members {",".join(objects)} '
|
||||||
f'{"--bearer " + bearer_token if bearer_token else ""}'
|
f'{"--bearer " + bearer_token if bearer_token else ""}'
|
||||||
)
|
)
|
||||||
|
|
|
@ -13,9 +13,6 @@ Resource payment_operations.robot
|
||||||
|
|
||||||
*** Variables ***
|
*** Variables ***
|
||||||
&{USER_HEADER} = key1=1 key2=abc
|
&{USER_HEADER} = key1=1 key2=abc
|
||||||
&{USER_HEADER_DEL} = key1=del key2=del
|
|
||||||
&{ANOTHER_HEADER} = key1=oth key2=oth
|
|
||||||
${OBJECT_PATH} = testfile
|
|
||||||
${EACL_ERR_MSG} = *
|
${EACL_ERR_MSG} = *
|
||||||
|
|
||||||
*** Keywords ***
|
*** Keywords ***
|
||||||
|
@ -26,13 +23,13 @@ Check eACL Deny and Allow All
|
||||||
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
||||||
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
||||||
${S_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
${S_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
||||||
${D_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER_DEL}
|
${D_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID}
|
||||||
@{S_OBJ_H} = Create List ${S_OID_USER}
|
@{S_OBJ_H} = Create List ${S_OID_USER}
|
||||||
|
|
||||||
Put object ${WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER}
|
Put object ${WALLET} ${FILE_S} ${CID}
|
||||||
|
|
||||||
Get object ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} local_file_eacl
|
Get object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Search object ${WALLET} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
Search object ${WALLET} ${CID} filters=${USER_HEADER} expected_objects_list=${S_OBJ_H}
|
||||||
Head object ${WALLET} ${CID} ${S_OID_USER}
|
Head object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
|
|
||||||
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
||||||
|
@ -47,9 +44,9 @@ Check eACL Deny and Allow All
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Put object ${WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
... Put object ${WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Get object ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} local_file_eacl
|
... Get object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Search object ${WALLET} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
... Search object ${WALLET} ${CID} filters=${USER_HEADER} expected_objects_list=${S_OBJ_H}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Head object ${WALLET} ${CID} ${S_OID_USER}
|
... Head object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
|
@ -64,9 +61,9 @@ Check eACL Deny and Allow All
|
||||||
# The current ACL cache lifetime is 30 sec
|
# The current ACL cache lifetime is 30 sec
|
||||||
Sleep ${NEOFS_CONTRACT_CACHE_TIMEOUT}
|
Sleep ${NEOFS_CONTRACT_CACHE_TIMEOUT}
|
||||||
|
|
||||||
Put object ${WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER}
|
Put object ${WALLET} ${FILE_S} ${CID}
|
||||||
Get object ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} local_file_eacl
|
Get object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Search object ${WALLET} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
Search object ${WALLET} ${CID} filters=${USER_HEADER} expected_objects_list=${S_OBJ_H}
|
||||||
Head object ${WALLET} ${CID} ${S_OID_USER}
|
Head object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
||||||
Get Range Hash ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
Get Range Hash ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
||||||
|
@ -100,12 +97,12 @@ Check eACL Filters with MatchType String Equal
|
||||||
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
||||||
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
||||||
|
|
||||||
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID}
|
||||||
${D_OID_USER} = Put object ${WALLET} ${FILE_S} ${CID}
|
${D_OID_USER} = Put object ${WALLET} ${FILE_S} ${CID}
|
||||||
@{S_OBJ_H} = Create List ${S_OID_USER}
|
@{S_OBJ_H} = Create List ${S_OID_USER}
|
||||||
|
|
||||||
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} local_file_eacl
|
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
Search Object ${WALLET_OTH} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
Search Object ${WALLET_OTH} ${CID} keys=--oid ${S_OID_USER} expected_objects_list=${S_OBJ_H}
|
||||||
&{HEADER} = Head Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
&{HEADER} = Head Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
Get Range ${WALLET_OTH} ${CID} ${S_OID_USER} 0:256
|
Get Range ${WALLET_OTH} ${CID} ${S_OID_USER} 0:256
|
||||||
Get Range Hash ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
Get Range Hash ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
||||||
|
@ -127,7 +124,7 @@ Check eACL Filters with MatchType String Equal
|
||||||
|
|
||||||
IF 'GET' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'GET' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
||||||
... Get object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
... Get object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
END
|
END
|
||||||
IF 'HEAD' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'HEAD' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect error ${EACL_ERR_MSG}
|
Run Keyword And Expect error ${EACL_ERR_MSG}
|
||||||
|
@ -139,7 +136,7 @@ Check eACL Filters with MatchType String Equal
|
||||||
END
|
END
|
||||||
IF 'SEARCH' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'SEARCH' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
||||||
... Search Object ${WALLET_OTH} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
... Search Object ${WALLET_OTH} ${CID} keys=--oid ${S_OID_USER} expected_objects_list=${S_OBJ_H}
|
||||||
END
|
END
|
||||||
IF 'RANGEHASH' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'RANGEHASH' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect error ${EACL_ERR_MSG}
|
Run Keyword And Expect error ${EACL_ERR_MSG}
|
||||||
|
@ -159,14 +156,14 @@ Check eACL Filters with MatchType String Not Equal
|
||||||
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
||||||
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
||||||
|
|
||||||
${S_OID_OTH} = Put Object ${WALLET_OTH} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER}
|
${S_OID_OTH} = Put Object ${WALLET_OTH} ${FILE_S} ${CID}
|
||||||
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID}
|
||||||
${D_OID_USER} = Put object ${WALLET} ${FILE_S} ${CID}
|
${D_OID_USER} = Put object ${WALLET} ${FILE_S} ${CID}
|
||||||
@{S_OBJ_H} = Create List ${S_OID_USER}
|
@{S_OBJ_H} = Create List ${S_OID_USER}
|
||||||
|
|
||||||
Get Object ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} local_file_eacl
|
Get Object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
Search Object ${WALLET} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
Search Object ${WALLET} ${CID} keys=--oid ${S_OID_USER} expected_objects_list=${S_OBJ_H}
|
||||||
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
Get Range ${WALLET} ${CID} ${S_OID_USER} 0:256
|
||||||
Get Range Hash ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
Get Range Hash ${WALLET} ${CID} ${S_OID_USER} ${EMPTY} 0:256
|
||||||
|
|
||||||
|
@ -186,8 +183,8 @@ Check eACL Filters with MatchType String Not Equal
|
||||||
|
|
||||||
IF 'GET' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'GET' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
Run Keyword And Expect Error ${EACL_ERR_MSG}
|
||||||
... Get object ${WALLET_OTH} ${CID} ${S_OID_OTH} ${EMPTY} ${OBJECT_PATH}
|
... Get object ${WALLET_OTH} ${CID} ${S_OID_OTH}
|
||||||
Get object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
Get object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
END
|
END
|
||||||
IF 'HEAD' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'HEAD' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect error ${EACL_ERR_MSG}
|
Run Keyword And Expect error ${EACL_ERR_MSG}
|
||||||
|
@ -196,8 +193,8 @@ Check eACL Filters with MatchType String Not Equal
|
||||||
END
|
END
|
||||||
IF 'SEARCH' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'SEARCH' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect error ${EACL_ERR_MSG}
|
Run Keyword And Expect error ${EACL_ERR_MSG}
|
||||||
... Search object ${WALLET_OTH} ${CID} ${EMPTY} ${EMPTY} ${ANOTHER_HEADER} ${S_OBJ_H}
|
... Search object ${WALLET_OTH} ${CID} keys=--oid ${S_OID_OTH} expected_objects_list=${S_OBJ_H}
|
||||||
Search object ${WALLET_OTH} ${CID} ${EMPTY} ${EMPTY} ${USER_HEADER} ${S_OBJ_H}
|
Search object ${WALLET_OTH} ${CID} keys=--oid ${S_OID_USER} expected_objects_list=${S_OBJ_H}
|
||||||
END
|
END
|
||||||
IF 'RANGE' in ${VERB_FILTER_DEP}[${FILTER}]
|
IF 'RANGE' in ${VERB_FILTER_DEP}[${FILTER}]
|
||||||
Run Keyword And Expect error ${EACL_ERR_MSG}
|
Run Keyword And Expect error ${EACL_ERR_MSG}
|
||||||
|
|
|
@ -76,21 +76,26 @@ Run Storage Group Operations On Other's Behalf In RO Container
|
||||||
|
|
||||||
|
|
||||||
Run Storage Group Operations On System's Behalf In RO Container
|
Run Storage Group Operations On System's Behalf In RO Container
|
||||||
[Arguments] ${CID} ${OBJECTS} ${OBJ_COMPLEXITY}
|
[Arguments] ${OWNER_WALLET} ${CID} ${OBJECTS} ${OBJ_COMPLEXITY}
|
||||||
[Documentation] ${CID}: ID of read-only container
|
[Documentation] ${OWNER_WALLET} wallet of container owner
|
||||||
|
... ${CID}: ID of read-only container
|
||||||
... ${OBJECTS}: list of Object IDs to include into the Storage Group
|
... ${OBJECTS}: list of Object IDs to include into the Storage Group
|
||||||
... ${OBJ_COMPLEXITY}: [Complex|Simple]
|
... ${OBJ_COMPLEXITY}: [Complex|Simple]
|
||||||
...
|
...
|
||||||
... In this keyword we create Storage Group on Inner Ring's key behalf
|
... We expect that System key is granted to make GET and LIST.
|
||||||
... and include an Object created on behalf of some user. We expect
|
|
||||||
... that System key is granted to make all operations except DELETE.
|
|
||||||
|
|
||||||
Transfer Mainnet Gas ${IR_WALLET_PATH} ${DEPOSIT + 1} wallet_password=${IR_WALLET_PASS}
|
Transfer Mainnet Gas ${IR_WALLET_PATH} ${DEPOSIT + 1} wallet_password=${IR_WALLET_PASS}
|
||||||
NeoFS Deposit ${IR_WALLET_PATH} ${DEPOSIT} wallet_password=${IR_WALLET_PASS}
|
NeoFS Deposit ${IR_WALLET_PATH} ${DEPOSIT} wallet_password=${IR_WALLET_PASS}
|
||||||
|
|
||||||
${SG} = Put Storagegroup ${IR_WALLET_PATH} ${CID} ${OBJECTS} wallet_config=${IR_WALLET_CONFIG}
|
${SG} = Put Storagegroup ${OWNER_WALLET} ${CID} ${OBJECTS}
|
||||||
|
|
||||||
|
${ERR} = Run Keyword And Expect Error *
|
||||||
|
... Put Storagegroup ${IR_WALLET_PATH} ${CID} ${OBJECTS} wallet_config=${IR_WALLET_CONFIG}
|
||||||
|
Should Contain ${ERR} ${PERMISSION_ERROR}
|
||||||
|
|
||||||
Verify List Storage Group ${IR_WALLET_PATH} ${CID} ${SG} WALLET_CFG=${IR_WALLET_CONFIG}
|
Verify List Storage Group ${IR_WALLET_PATH} ${CID} ${SG} WALLET_CFG=${IR_WALLET_CONFIG}
|
||||||
Verify Get Storage Group ${IR_WALLET_PATH} ${CID} ${SG} ${OBJECTS} ${OBJ_COMPLEXITY} WALLET_CFG=${IR_WALLET_CONFIG}
|
Verify Get Storage Group ${IR_WALLET_PATH} ${CID} ${SG} ${OBJECTS} ${OBJ_COMPLEXITY} WALLET_CFG=${IR_WALLET_CONFIG}
|
||||||
|
|
||||||
${ERR} = Run Keyword And Expect Error *
|
${ERR} = Run Keyword And Expect Error *
|
||||||
... Delete Storagegroup ${IR_WALLET_PATH} ${CID} ${SG} wallet_config=${IR_WALLET_CONFIG}
|
... Delete Storagegroup ${IR_WALLET_PATH} ${CID} ${SG} wallet_config=${IR_WALLET_CONFIG}
|
||||||
Should Contain ${ERR} ${PERMISSION_ERROR}
|
Should Contain ${ERR} ${PERMISSION_ERROR}
|
||||||
|
|
|
@ -10,17 +10,11 @@ Resource common_steps_acl_extended.robot
|
||||||
Resource payment_operations.robot
|
Resource payment_operations.robot
|
||||||
Resource eacl_tables.robot
|
Resource eacl_tables.robot
|
||||||
|
|
||||||
*** Variables ***
|
|
||||||
&{USER_HEADER} = key1=1 key2=abc
|
|
||||||
&{ANOTHER_HEADER} = key1=oth key2=oth
|
|
||||||
${ID_FILTER} = $Object:objectID
|
|
||||||
${CUSTOM_FILTER} = key1
|
|
||||||
|
|
||||||
*** Test cases ***
|
*** Test cases ***
|
||||||
Extended ACL Operations
|
Extended ACL Operations
|
||||||
[Documentation] Testcase to validate NeoFS operations with extended ACL.
|
[Documentation] Testcase to validate NeoFS operations with extended ACL.
|
||||||
[Tags] ACL eACL
|
[Tags] ACL eACL
|
||||||
[Timeout] 3 min
|
[Timeout] 5 min
|
||||||
|
|
||||||
|
|
||||||
Check Filters Simple
|
Check Filters Simple
|
||||||
|
@ -40,8 +34,6 @@ Check Filters
|
||||||
${WALLET_OTH} ${_} ${_} = Prepare Wallet And Deposit
|
${WALLET_OTH} ${_} ${_} = Prepare Wallet And Deposit
|
||||||
${FILE_S} ${_} = Generate File ${SIZE}
|
${FILE_S} ${_} = Generate File ${SIZE}
|
||||||
|
|
||||||
Check eACL MatchType String Equal Object ${WALLET} ${WALLET_OTH} ${FILE_S}
|
|
||||||
Check eACL MatchType String Not Equal Object ${WALLET} ${WALLET_OTH} ${FILE_S}
|
|
||||||
Check eACL MatchType String Equal Request Deny ${WALLET} ${WALLET_OTH} ${FILE_S}
|
Check eACL MatchType String Equal Request Deny ${WALLET} ${WALLET_OTH} ${FILE_S}
|
||||||
Check eACL MatchType String Equal Request Allow ${WALLET} ${WALLET_OTH} ${FILE_S}
|
Check eACL MatchType String Equal Request Allow ${WALLET} ${WALLET_OTH} ${FILE_S}
|
||||||
|
|
||||||
|
@ -49,7 +41,7 @@ Check Filters
|
||||||
Check eACL MatchType String Equal Request Deny
|
Check eACL MatchType String Equal Request Deny
|
||||||
[Arguments] ${USER_WALLET} ${OTHER_WALLET} ${FILE_S}
|
[Arguments] ${USER_WALLET} ${OTHER_WALLET} ${FILE_S}
|
||||||
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
||||||
${S_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
${S_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID}
|
||||||
Get object ${USER_WALLET} ${CID} ${S_OID_USER}
|
Get object ${USER_WALLET} ${CID} ${S_OID_USER}
|
||||||
|
|
||||||
Set eACL ${USER_WALLET} ${CID} ${EACL_XHEADER_DENY_ALL}
|
Set eACL ${USER_WALLET} ${CID} ${EACL_XHEADER_DENY_ALL}
|
||||||
|
@ -62,11 +54,11 @@ Check eACL MatchType String Equal Request Deny
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=256
|
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=256
|
||||||
|
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Put object ${OTHER_WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER} options=--xhdr a=2
|
... Put object ${OTHER_WALLET} ${FILE_S} ${CID} options=--xhdr a=2
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Search object ${OTHER_WALLET} ${CID} filters=${USER_HEADER} options=--xhdr a=2
|
... Search object ${OTHER_WALLET} ${CID} keys=--oid ${S_OID_USER} options=--xhdr a=2
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
... Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
|
@ -76,9 +68,9 @@ Check eACL MatchType String Equal Request Deny
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Delete object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
... Delete object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
|
|
||||||
Put object ${OTHER_WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER} options=--xhdr a=256
|
Put object ${OTHER_WALLET} ${FILE_S} ${CID} options=--xhdr a=256
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=*
|
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=*
|
||||||
Search object ${OTHER_WALLET} ${CID} filters=${USER_HEADER} options=--xhdr a=
|
Search object ${OTHER_WALLET} ${CID} keys=--oid ${S_OID_USER} options=--xhdr a=
|
||||||
Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=.*
|
Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=.*
|
||||||
Get Range ${OTHER_WALLET} ${CID} ${S_OID_USER} 0:256 options=--xhdr a="2 2"
|
Get Range ${OTHER_WALLET} ${CID} ${S_OID_USER} 0:256 options=--xhdr a="2 2"
|
||||||
Get Range Hash ${OTHER_WALLET} ${CID} ${S_OID_USER} bearer_token=${EMPTY} range_cut=0:256 options=--xhdr a=256
|
Get Range Hash ${OTHER_WALLET} ${CID} ${S_OID_USER} bearer_token=${EMPTY} range_cut=0:256 options=--xhdr a=256
|
||||||
|
@ -106,7 +98,7 @@ Check eACL MatchType String Equal Request Allow
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Search object ${OTHER_WALLET} ${CID} filters=${USER_HEADER}
|
... Search object ${OTHER_WALLET} ${CID} keys=--oid ${S_OID_USER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Head object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
... Head object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
|
@ -118,82 +110,8 @@ Check eACL MatchType String Equal Request Allow
|
||||||
|
|
||||||
Put object ${OTHER_WALLET} ${FILE_S} ${CID} options=--xhdr a=2
|
Put object ${OTHER_WALLET} ${FILE_S} ${CID} options=--xhdr a=2
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
Search object ${OTHER_WALLET} ${CID} filters=${USER_HEADER} options=--xhdr a=2
|
Search object ${OTHER_WALLET} ${CID} keys=--oid ${S_OID_USER} options=--xhdr a=2
|
||||||
Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
Head object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
Get Range ${OTHER_WALLET} ${CID} ${S_OID_USER} 0:256 options=--xhdr a=2
|
Get Range ${OTHER_WALLET} ${CID} ${S_OID_USER} 0:256 options=--xhdr a=2
|
||||||
Get Range Hash ${OTHER_WALLET} ${CID} ${S_OID_USER} bearer_token=${EMPTY} range_cut=0:256 options=--xhdr a=2
|
Get Range Hash ${OTHER_WALLET} ${CID} ${S_OID_USER} bearer_token=${EMPTY} range_cut=0:256 options=--xhdr a=2
|
||||||
Delete object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
Delete object ${OTHER_WALLET} ${CID} ${S_OID_USER} options=--xhdr a=2
|
||||||
|
|
||||||
|
|
||||||
Check eACL MatchType String Equal Object
|
|
||||||
[Arguments] ${USER_WALLET} ${OTHER_WALLET} ${FILE_S}
|
|
||||||
|
|
||||||
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
|
||||||
${S_OID_USER} = Put Object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${USER_HEADER}
|
|
||||||
Get Object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
|
|
||||||
Log Set eACL for Deny GET operation with StringEqual Object ID
|
|
||||||
|
|
||||||
&{HEADER_DICT} = Head Object ${USER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
${ID_value} = Get From dictionary ${HEADER_DICT} ${EACL_OBJ_FILTERS}[${ID_FILTER}]
|
|
||||||
|
|
||||||
${filters} = Set Variable obj:${ID_FILTER}=${ID_value}
|
|
||||||
${rule1} = Set Variable deny get ${filters} others
|
|
||||||
${eACL_gen} = Create List ${rule1}
|
|
||||||
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
|
||||||
Set eACL ${USER_WALLET} ${CID} ${EACL_CUSTOM}
|
|
||||||
Run Keyword And Expect Error *
|
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
|
|
||||||
Log Set eACL for Deny GET operation with StringEqual Object Extended User Header
|
|
||||||
|
|
||||||
${S_OID_USER_OTH} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER}
|
|
||||||
|
|
||||||
${filters} = Set Variable obj:${CUSTOM_FILTER}=1
|
|
||||||
${rule1} = Set Variable deny get ${filters} others
|
|
||||||
${eACL_gen} = Create List ${rule1}
|
|
||||||
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
|
||||||
|
|
||||||
Set eACL ${USER_WALLET} ${CID} ${EACL_CUSTOM}
|
|
||||||
Run Keyword And Expect Error *
|
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER_OTH}
|
|
||||||
|
|
||||||
|
|
||||||
Check eACL MatchType String Not Equal Object
|
|
||||||
[Arguments] ${USER_WALLET} ${OTHER_WALLET} ${FILE_S}
|
|
||||||
|
|
||||||
${CID} = Create Container ${USER_WALLET} basic_acl=eacl-public-read-write
|
|
||||||
|
|
||||||
${S_OID_USER} = Put object ${USER_WALLET} ${FILE_S} ${CID}
|
|
||||||
${S_OID_OTHER} = Put object ${OTHER_WALLET} ${FILE_S} ${CID}
|
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_OTHER}
|
|
||||||
|
|
||||||
Log Set eACL for Deny GET operation with StringNotEqual Object ID
|
|
||||||
|
|
||||||
&{HEADER_DICT} = Head object ${USER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
${ID_value} = Get From Dictionary ${HEADER_DICT} ${EACL_OBJ_FILTERS}[${ID_FILTER}]
|
|
||||||
|
|
||||||
${filters} = Set Variable obj:${ID_FILTER}!=${ID_value}
|
|
||||||
${rule1} = Set Variable deny get ${filters} others
|
|
||||||
${eACL_gen} = Create List ${rule1}
|
|
||||||
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
|
||||||
|
|
||||||
Set eACL ${USER_WALLET} ${CID} ${EACL_CUSTOM}
|
|
||||||
Run Keyword And Expect Error *
|
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_OTHER}
|
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
|
|
||||||
Log Set eACL for Deny GET operation with StringEqual Object Extended User Header
|
|
||||||
|
|
||||||
${S_OID_USER_OTH} = Put object ${USER_WALLET} ${FILE_S} ${CID} user_headers=${ANOTHER_HEADER}
|
|
||||||
${filters} = Set Variable obj:${CUSTOM_FILTER}!=1
|
|
||||||
${rule1} = Set Variable deny get ${filters} others
|
|
||||||
${eACL_gen} = Create List ${rule1}
|
|
||||||
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
|
||||||
|
|
||||||
Set eACL ${USER_WALLET} ${CID} ${EACL_CUSTOM}
|
|
||||||
Run Keyword And Expect Error *
|
|
||||||
... Get object ${OTHER_WALLET} ${CID} ${S_OID_USER_OTH}
|
|
||||||
Get object ${OTHER_WALLET} ${CID} ${S_OID_USER}
|
|
||||||
|
|
|
@ -10,7 +10,6 @@ Resource common_steps_acl_extended.robot
|
||||||
Resource payment_operations.robot
|
Resource payment_operations.robot
|
||||||
|
|
||||||
*** Variables ***
|
*** Variables ***
|
||||||
${OBJECT_PATH} = testfile
|
|
||||||
${EACL_ERR_MSG} = *
|
${EACL_ERR_MSG} = *
|
||||||
|
|
||||||
*** Test cases ***
|
*** Test cases ***
|
||||||
|
@ -46,9 +45,9 @@ Check eACL Filters with MatchType String Equal with two contradicting filters
|
||||||
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
||||||
${FILE_S_USER} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
${FILE_S_USER} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
||||||
|
|
||||||
${S_OID_USER} = Put Object ${WALLET} ${FILE_S_USER} ${CID} ${EMPTY}
|
${S_OID_USER} = Put Object ${WALLET} ${FILE_S_USER} ${CID}
|
||||||
|
|
||||||
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
|
|
||||||
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
${filter_value} = Get From Dictionary ${HEADER} ${EACL_OBJ_FILTERS}[${FILTER}]
|
${filter_value} = Get From Dictionary ${HEADER} ${EACL_OBJ_FILTERS}[${FILTER}]
|
||||||
|
@ -60,7 +59,7 @@ Check eACL Filters with MatchType String Equal with two contradicting filters
|
||||||
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
${EACL_CUSTOM} = Create eACL ${CID} ${eACL_gen}
|
||||||
|
|
||||||
Set eACL ${WALLET} ${CID} ${EACL_CUSTOM}
|
Set eACL ${WALLET} ${CID} ${EACL_CUSTOM}
|
||||||
Get object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
Get object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
|
|
||||||
|
|
||||||
Check eACL Filters, two matchTypes
|
Check eACL Filters, two matchTypes
|
||||||
|
@ -72,12 +71,12 @@ Check eACL Filters, two matchTypes
|
||||||
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
${CID} = Create Container ${WALLET} basic_acl=eacl-public-read-write
|
||||||
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
${FILE_S} ${_} = Generate file ${SIMPLE_OBJ_SIZE}
|
||||||
|
|
||||||
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID} ${EMPTY}
|
${S_OID_USER} = Put Object ${WALLET} ${FILE_S} ${CID}
|
||||||
${S_OID_OTHER} = Put Object ${WALLET_OTH} ${FILE_S} ${CID} ${EMPTY}
|
${S_OID_OTHER} = Put Object ${WALLET_OTH} ${FILE_S} ${CID}
|
||||||
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
&{HEADER} = Head Object ${WALLET} ${CID} ${S_OID_USER}
|
||||||
|
|
||||||
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
Get Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
Get Object ${WALLET_OTH} ${CID} ${S_OID_OTHER} ${EMPTY} ${OBJECT_PATH}
|
Get Object ${WALLET_OTH} ${CID} ${S_OID_OTHER}
|
||||||
|
|
||||||
${filter_value} = Get From Dictionary ${HEADER} ${EACL_OBJ_FILTERS}[${FILTER}]
|
${filter_value} = Get From Dictionary ${HEADER} ${EACL_OBJ_FILTERS}[${FILTER}]
|
||||||
${noneq_filters} = Set Variable obj:${FILTER}!=${filter_value}
|
${noneq_filters} = Set Variable obj:${FILTER}!=${filter_value}
|
||||||
|
@ -89,6 +88,6 @@ Check eACL Filters, two matchTypes
|
||||||
|
|
||||||
Set eACL ${WALLET} ${CID} ${EACL_CUSTOM}
|
Set eACL ${WALLET} ${CID} ${EACL_CUSTOM}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Get object ${WALLET_OTH} ${CID} ${S_OID_OTHER} ${EMPTY} ${OBJECT_PATH}
|
... Get object ${WALLET_OTH} ${CID} ${S_OID_OTHER}
|
||||||
Run Keyword And Expect Error *
|
Run Keyword And Expect Error *
|
||||||
... Get Object ${WALLET_OTH} ${CID} ${S_OID_USER} ${EMPTY} ${OBJECT_PATH}
|
... Get Object ${WALLET_OTH} ${CID} ${S_OID_USER}
|
||||||
|
|
|
@ -48,4 +48,4 @@ Check Private Container
|
||||||
# In private container, Inner Ring is allowed to read (Storage Group List and Get),
|
# In private container, Inner Ring is allowed to read (Storage Group List and Get),
|
||||||
# so using here keyword for read-only container.
|
# so using here keyword for read-only container.
|
||||||
Run Storage Group Operations On System's Behalf In RO Container
|
Run Storage Group Operations On System's Behalf In RO Container
|
||||||
... ${PRIV_CID} ${OBJECTS} ${COMPLEXITY}
|
... ${USER_WALLET} ${PRIV_CID} ${OBJECTS} ${COMPLEXITY}
|
||||||
|
|
|
@ -43,6 +43,6 @@ Check Public Container
|
||||||
Run Storage Group Operations And Expect Success
|
Run Storage Group Operations And Expect Success
|
||||||
... ${WALLET_OTH} ${PUBLIC_CID} ${OBJECTS} ${RUN_TYPE}
|
... ${WALLET_OTH} ${PUBLIC_CID} ${OBJECTS} ${RUN_TYPE}
|
||||||
|
|
||||||
# System isn't allowed to DELETE in Public Container
|
# System isn't allowed to PUT and DELETE in Public Container
|
||||||
Run Storage Group Operations On System's Behalf In RO Container
|
Run Storage Group Operations On System's Behalf In RO Container
|
||||||
... ${PUBLIC_CID} ${OBJECTS} ${RUN_TYPE}
|
... ${USER_WALLET} ${PUBLIC_CID} ${OBJECTS} ${RUN_TYPE}
|
||||||
|
|
|
@ -52,4 +52,4 @@ Check Read-Only Container
|
||||||
... ${USER_WALLET} ${READONLY_CID} ${OBJECTS} ${COMPLEXITY}
|
... ${USER_WALLET} ${READONLY_CID} ${OBJECTS} ${COMPLEXITY}
|
||||||
|
|
||||||
Run Storage Group Operations On System's Behalf in RO Container
|
Run Storage Group Operations On System's Behalf in RO Container
|
||||||
... ${READONLY_CID} ${OBJECTS} ${COMPLEXITY}
|
... ${USER_WALLET} ${READONLY_CID} ${OBJECTS} ${COMPLEXITY}
|
||||||
|
|
Loading…
Reference in a new issue