def get(self, account): """ list all scopes for an account. .. :quickref: Scopes; List scope for account. :param account: The account identifier. :resheader Content-Type: application/x-json-stream :status 200: OK. :status 401: Invalid auth token. :status 404: Account not found. :status 404: Scope not found. :statsu 406: Not Acceptable :returns: A list containing all scope names for an account. """ try: scopes = get_scopes(account, vo=request.environ.get('vo')) except AccountNotFound as error: return generate_http_error_flask(404, error) if not len(scopes): return generate_http_error_flask( 404, ScopeNotFound.__name__, f"no scopes found for account ID '{account}'") return jsonify(scopes)
def get(self, account): """ list all scopes for an account. .. :quickref: Scopes; List scope for account. :param account: The account identifier. :resheader Content-Type: application/x-json-stream :status 200: OK. :status 401: Invalid auth token. :status 404: Account not found. :status 404: Scope not found. :statsu 406: Not Acceptable :status 500: Database exception. :returns: A list containing all scope names for an account. """ try: scopes = get_scopes(account, vo=request.environ.get('vo')) except AccountNotFound as error: return generate_http_error_flask(404, 'AccountNotFound', error.args[0]) except RucioException as error: return generate_http_error_flask(500, error.__class__.__name__, error.args[0]) except Exception as error: print(format_exc()) return str(error), 500 if not len(scopes): return generate_http_error_flask(404, 'ScopeNotFound', 'no scopes found for account ID \'%s\'' % account) return jsonify(scopes)
def GET(self, account): """ list all scopes for an account. HTTP Success: 200 OK HTTP Error: 401 Unauthorized 404 Not Found 406 Not Acceptable 500 InternalError :param Rucio-Account: Account identifier. :param Rucio-Auth-Token: as an 32 character hex string. :returns: A list containing all scope names for an account. """ header('Content-Type', 'application/json') try: scopes = get_scopes(account, vo=ctx.env.get('vo')) except AccountNotFound as error: raise generate_http_error(404, 'AccountNotFound', error.args[0]) except RucioException as error: raise generate_http_error(500, error.__class__.__name__, error.args[0]) except Exception as error: print(format_exc()) raise InternalError(error) if not len(scopes): raise generate_http_error( 404, 'ScopeNotFound', 'no scopes found for account ID \'%s\'' % account) return dumps(scopes)
def get(self, account): """List account scopes. .. :quickref: Scopes; Get scopes for account. :resheader Content-Type: application/json :status 200: Scopes found :status 404: Account not found :status 404: No scopes for this account :status 406: Not Acceptable :returns: A list containing all scope names for an account. """ try: scopes = get_scopes(account, vo=request.environ.get('vo')) except AccountNotFound as error: return generate_http_error_flask(404, 'AccountNotFound', error.args[0]) except Exception as error: print(format_exc()) return str(error), 500 if not len(scopes): return generate_http_error_flask( 404, 'ScopeNotFound', 'no scopes found for account ID \'%s\'' % account) return jsonify(scopes)
def test_api_scope(self): """ SCOPE (API): Test external representation of scopes """ out = list_scopes() assert self.scope_name in out if self.multi_vo: assert self.scope.internal not in out out = get_scopes(self.account_name, **self.vo) assert self.scope_name in out if self.multi_vo: assert self.scope.internal not in out
def get(self, account): """ --- summary: List scopes description: List all scopse for an account. tags: - Account parameters: - name: account in: path description: The account identifier. schema: type: string style: simple responses: 200: description: OK content: application/x-json-stream: schema: description: All scopes for the account. type: array items: description: A scope type: string 401: description: Invalid Auth Token 404: description: No account or scope found for the given id. 406: description: Not acceptable """ try: scopes = get_scopes(account, vo=request.environ.get('vo')) except AccountNotFound as error: return generate_http_error_flask(404, error) if not len(scopes): return generate_http_error_flask( 404, ScopeNotFound.__name__, f"no scopes found for account ID '{account}'") return jsonify(scopes)
def GET(self, account): """ list all scopes for an account. HTTP Success: 200 OK HTTP Error: 401 Unauthorized 404 Not Found 500 InternalError :param Rucio-Account: Account identifier. :param Rucio-Auth-Token: as an 32 character hex string. :returns: A list containing all scope names for an account. """ header('Content-Type', 'application/json') try: scopes = get_scopes(account) except AccountNotFound, e: raise generate_http_error(404, 'AccountNotFound', e.args[0][0])
def get(self, account): """List account scopes. .. :quickref: Scopes; Get scopes for account. :resheader Content-Type: application/json :status 200: Scopes found :status 404: Account not found :status 404: No scopes for this account :status 406: Not Acceptable :returns: A list containing all scope names for an account. """ try: scopes = get_scopes(account, vo=request.environ.get('vo')) except AccountNotFound as error: return generate_http_error_flask(404, error) if not len(scopes): return generate_http_error_flask( 404, ScopeNotFound.__name__, f"no scopes found for account '{account}'") return jsonify(scopes)