github.com/minio/console@v1.4.1/web-app/tests/scripts/permissions.sh (about)

     1  # This file is part of MinIO Console Server
     2  # Copyright (c) 2022 MinIO, Inc.
     3  # # This program is free software: you can redistribute it and/or modify
     4  # it under the terms of the GNU Affero General Public License as published by
     5  # the Free Software Foundation, either version 3 of the License, or
     6  # (at your option) any later version.
     7  # # This program is distributed in the hope that it will be useful,
     8  # but WITHOUT ANY WARRANTY; without even the implied warranty of
     9  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    10  # GNU Affero General Public License for more details.
    11  # # You should have received a copy of the GNU Affero General Public License
    12  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
    13  
    14  SCRIPT_DIR=$(dirname "$0")
    15  export SCRIPT_DIR
    16  source "${SCRIPT_DIR}/common.sh"
    17  
    18  remove_users() {
    19    mc admin user remove minio bucketassignpolicy-"$TIMESTAMP"
    20    mc admin user remove minio bucketread-"$TIMESTAMP"
    21    mc admin user remove minio bucketwrite-"$TIMESTAMP"
    22    mc admin user remove minio dashboard-"$TIMESTAMP"
    23    mc admin user remove minio diagnostics-"$TIMESTAMP"
    24    mc admin user remove minio groups-"$TIMESTAMP"
    25    mc admin user remove minio heal-"$TIMESTAMP"
    26    mc admin user remove minio iampolicies-"$TIMESTAMP"
    27    mc admin user remove minio logs-"$TIMESTAMP"
    28    mc admin user remove minio notificationendpoints-"$TIMESTAMP"
    29    mc admin user remove minio settings-"$TIMESTAMP"
    30    mc admin user remove minio tiers-"$TIMESTAMP"
    31    mc admin user remove minio trace-"$TIMESTAMP"
    32    mc admin user remove minio users-"$TIMESTAMP"
    33    mc admin user remove minio watch-"$TIMESTAMP"
    34    mc admin user remove minio bucketwriteprefixonlypolicy-"$TIMESTAMP"
    35    mc admin user remove minio inspect-allowed-"$TIMESTAMP"
    36    mc admin user remove minio inspect-not-allowed-"$TIMESTAMP"
    37    mc admin user remove minio prefix-policy-ui-crash-"$TIMESTAMP"
    38    mc admin user remove minio delete-object-with-prefix-"$TIMESTAMP"
    39    mc admin user remove minio conditions-"$TIMESTAMP"
    40    mc admin user remove minio conditions-2-"$TIMESTAMP"
    41    mc admin user remove minio conditions-3-"$TIMESTAMP"
    42    mc admin user remove minio conditions-4-"$TIMESTAMP"
    43  }
    44  
    45  remove_policies() {
    46    mc admin policy remove minio bucketassignpolicy-"$TIMESTAMP"
    47    mc admin policy remove minio bucketread-"$TIMESTAMP"
    48    mc admin policy remove minio bucketwrite-"$TIMESTAMP"
    49    mc admin policy remove minio dashboard-"$TIMESTAMP"
    50    mc admin policy remove minio diagnostics-"$TIMESTAMP"
    51    mc admin policy remove minio groups-"$TIMESTAMP"
    52    mc admin policy remove minio heal-"$TIMESTAMP"
    53    mc admin policy remove minio iampolicies-"$TIMESTAMP"
    54    mc admin policy remove minio logs-"$TIMESTAMP"
    55    mc admin policy remove minio notificationendpoints-"$TIMESTAMP"
    56    mc admin policy remove minio settings-"$TIMESTAMP"
    57    mc admin policy remove minio tiers-"$TIMESTAMP"
    58    mc admin policy remove minio trace-"$TIMESTAMP"
    59    mc admin policy remove minio users-"$TIMESTAMP"
    60    mc admin policy remove minio watch-"$TIMESTAMP"
    61    mc admin policy remove minio bucketwriteprefixonlypolicy-"$TIMESTAMP"
    62    mc admin policy remove minio inspect-allowed-"$TIMESTAMP"
    63    mc admin policy remove minio inspect-not-allowed-"$TIMESTAMP"
    64    mc admin policy remove minio fix-prefix-policy-ui-crash-"$TIMESTAMP"
    65    mc admin policy remove minio delete-object-with-prefix-"$TIMESTAMP"
    66    mc admin policy remove conditions-policy-"$TIMESTAMP"
    67    mc admin policy remove conditions-policy-2-"$TIMESTAMP"
    68    mc admin policy remove conditions-policy-3-"$TIMESTAMP"
    69    mc admin policy remove conditions-policy-4-"$TIMESTAMP"
    70  }
    71  
    72  remove_buckets() {
    73    mc rm minio/testcafe/write/test.txt && mc rm minio/testcafe
    74    mc rm minio/test/test.txt && mc rm minio/test/digitalinsights/xref_cust_guid_actd-v1.txt && mc rm minio/test/digitalinsights/test.txt && mc rm minio/test
    75    mc rm minio/testcondition/test.txt && mc rm minio/testcondition/firstlevel/xref_cust_guid_actd-v1.txt && mc rm minio/testcondition/firstlevel/test.txt && mc rm minio/testcondition/firstlevel/secondlevel/test.txt && mc rm minio/testcondition/firstlevel/secondlevel/thirdlevel/test.txt && mc rm minio/testcondition
    76  }
    77  
    78  cleanup() {
    79    remove_users
    80    remove_policies
    81    remove_buckets
    82  }
    83  
    84  __init__() {
    85    TIMESTAMP=$(date "+%s")
    86    echo "$TIMESTAMP" >web-app/tests/constants/timestamp.txt
    87    export GOPATH=/tmp/gopath
    88    export PATH=${PATH}:${GOPATH}/bin
    89  
    90    go install github.com/minio/mc@latest
    91  
    92    add_alias
    93  
    94    create_policies
    95    create_users
    96    assign_policies
    97    create_buckets
    98  }
    99  
   100  main() {
   101    (yarn start &>/dev/null) &
   102    (./console server &>/dev/null) &
   103    (testcafe "chrome:headless" "$1" -q --skip-js-errors -c 3)
   104    cleanup
   105  }
   106  
   107  (__init__ "$@" && main "$@")