Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions actionlogger/actionlogger.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def __init__(self):

def log(self, user, action, item):
if action not in self._actions.keys():
raise ActionNotFound("Invalid action: '{}'".format(action))
raise ActionNotFound(f"Invalid action: '{action}'")

audit = Audit(user=user,
action=self._actions[action],
Expand All @@ -41,6 +41,4 @@ def log(self, user, action, item):
syslog.syslog(syslog.LOG_INFO, msg)

def _make_log_message(self, user, action, item):
return 'Usuario {} {} {}'.format(user,
self._actions[action],
str(item))
return f'Usuario {user} {self._actions[action]} {str(item)}'
2 changes: 1 addition & 1 deletion actionlogger/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ class Meta:
db_table = 'audit'

def __str__(self):
return "{} - {} - {} - {}".format(self.user, self.action, self.item, self.created_at)
return f"{self.user} - {self.action} - {self.item} - {self.created_at}"
2 changes: 1 addition & 1 deletion helpers/docker/keystone/create_db.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ def run():
print('Database server connected!')
except MySQLdb.MySQLError:
attempt += 1
print('Database server not connected. Trying again in {} seconds...'.format(INTERVAL))
print(f'Database server not connected. Trying again in {INTERVAL} seconds...')
sleep(INTERVAL)

if connected:
Expand Down
2 changes: 1 addition & 1 deletion helpers/docker/vault/create_db.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ def run():
print('Database server connected!')
except MySQLdb.MySQLError:
attempt += 1
print('Database server not connected. Trying again in {} seconds...'.format(INTERVAL))
print(f'Database server not connected. Trying again in {INTERVAL} seconds...')
sleep(INTERVAL)

if connected:
Expand Down
23 changes: 11 additions & 12 deletions identity/keystone.py
Original file line number Diff line number Diff line change
Expand Up @@ -227,13 +227,13 @@ def vault_project_create(self, project_name, group_id, description=None,
enabled=True,
**kwargs)
except exceptions.Conflict as err:
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Duplicated project name.'
}
except exceptions.Forbidden as err:
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Superuser required.'
Expand All @@ -245,22 +245,22 @@ def vault_project_create(self, project_name, group_id, description=None,
try:
admin_password = Keystone.create_password()
admin_user = self.user_create(
name='u_{}'.format(project_name),
name=f'u_{project_name}',
password=admin_password,
role_id=swiftop,
project_id=project.id
)
except exceptions.Forbidden as err:
self.project_delete(project.id)
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Admin User required'
}

# Creates internal user and add swiftoperator role
try:
user_name = 'u_vault_{}'.format(project_name)
user_name = f'u_vault_{project_name}'
internal_password = Keystone.create_password()
internal_user = self.user_create(
name=user_name,
Expand All @@ -274,7 +274,7 @@ def vault_project_create(self, project_name, group_id, description=None,
except exceptions.Forbidden as err:
self.user_delete(admin_user.id)
self.project_delete(project.id)
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Internal User required'
Expand All @@ -294,7 +294,7 @@ def vault_project_create(self, project_name, group_id, description=None,
self.user_delete(admin_user.id)
self.user_delete(internal_user.id)
self.project_delete(project.id)
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Project User required'
Expand All @@ -309,7 +309,7 @@ def vault_project_create(self, project_name, group_id, description=None,
self.user_delete(admin_user.id)
self.user_delete(internal_user.id)
self.project_delete(project.id)
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': 'Unable to assign project to group'
Expand Down Expand Up @@ -403,8 +403,7 @@ def vault_project_delete(self, project_name):

# Swift returns 404 if the project had never been used
if del_swift.status_code not in (204, 404):
reason = 'Unable to delete project from Swift (HTTP {})'.format(
del_swift.status_code)
reason = f'Unable to delete project from Swift (HTTP {del_swift.status_code})'

return {
'status': False,
Expand All @@ -431,7 +430,7 @@ def vault_project_delete(self, project_name):
try:
self.project_delete(project.id)
except Exception as err:
log.error('Error: {}'.format(err))
log.error(f'Error: {err}')
return {
'status': False,
'reason': err
Expand Down Expand Up @@ -461,7 +460,7 @@ def find_user_with_u_prefix(self, project_id, prefix):
users = self.user_list(project.id)

for user in users:
if user.name == '{}_{}'.format(prefix, project.name):
if user.name == f'{prefix}_{project.name}':
return user

return None
Expand Down
2 changes: 1 addition & 1 deletion identity/tests/fakes.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ class Meta:
# strategy = factory.BUILD_STRATEGY

# id = factory.Sequence(lambda n: n)
name = factory.Sequence(lambda n: "Group #{}".format(n))
name = factory.Sequence(lambda n: f"Group #{n}")


class UserFactory(factory.django.DjangoModelFactory):
Expand Down
8 changes: 4 additions & 4 deletions identity/tests/test_keystone.py
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ def test_vault_create_project(self, mock_gp_create,
mock_key_user,
mock_encrypt_password):

mock_key_user.return_value = FakeResource(n=self.project.id, name='u_{}'.format(self.project.name))
mock_key_user.return_value = FakeResource(n=self.project.id, name=f'u_{self.project.name}')
mock_key_pass.return_value = 'password'

mock_encrypt_password.return_value = b'123456'
Expand All @@ -168,7 +168,7 @@ def test_vault_create_project(self, mock_gp_create,
enabled=True)

# User creation
mock_key_user.assert_called_with(name='u_vault_{}'.format(self.project.name),
mock_key_user.assert_called_with(name=f'u_vault_{self.project.name}',
email='',
password='password',
enabled=True,
Expand All @@ -186,7 +186,7 @@ def test_vault_create_project(self, mock_gp_create,
def test_vault_create_project_forbidden_on_project_create(self, mock_key_user):

self.mock_project_create.side_effect = exceptions.Forbidden
mock_key_user.return_value = FakeResource(n=self.project.id, name='u_{}'.format(self.project.name))
mock_key_user.return_value = FakeResource(n=self.project.id, name=f'u_{self.project.name}')

keystone = Keystone(self.request, project_name='project_name')

Expand Down Expand Up @@ -231,7 +231,7 @@ def test_vault_create_project_fail_to_save_group_project_on_db(self, mock_gp_sav
mock_project_delete,
mock_encrypt_password):

fake_user = FakeResource(n=self.project.id, name='u_{}'.format(self.project.name))
fake_user = FakeResource(n=self.project.id, name=f'u_{self.project.name}')
mock_user_create.return_value = fake_user

# Excecao ao salvar no db
Expand Down
40 changes: 20 additions & 20 deletions identity/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ def dispatch(self, request, *args, **kwargs):
if self.keystone.conn is None:
msg = _("Authorization error")
messages.add_message(request, messages.ERROR, msg)
log.error("Keystone: {}".format(msg))
log.error(f"Keystone: {msn}")

return super(WithKeystoneMixin, self).dispatch(request, *args, **kwargs)

Expand All @@ -67,7 +67,7 @@ def get_context_data(self, **kwargs):
try:
users = self.keystone.user_list()
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(self.request, messages.ERROR, _("Unable to list users"))

sorted_users = sorted(users, key=lambda l: l.name.lower())
Expand Down Expand Up @@ -164,7 +164,7 @@ def post(self, request, *args, **kwargs):
actionlog.log(request.user.username, "create", user)

except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(request, messages.ERROR, _("Error when creating user"))

return self.form_valid(form)
Expand Down Expand Up @@ -205,7 +205,7 @@ def post(self, request, *args, **kwargs):
actionlog.log(request.user.username, "update", user)

except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(request, messages.ERROR, _("Error when updating user"))

context = self.get_context_data(form=form, request=request)
Expand All @@ -217,10 +217,10 @@ def get(self, request, *args, **kwargs):
try:
self.keystone.user_delete(kwargs.get("user_id"))
messages.add_message(request, messages.SUCCESS, _("Successfully deleted user"))
actionlog.log(request.user.username, "delete", "user_id: {}".format(kwargs.get("user_id")))
actionlog.log(request.user.username, "delete", f"user_id: {kwargs.get(('user_id'))}")

except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(request, messages.ERROR, _("Error when deleting user"))

project_name = request.session.get("project_name")
Expand Down Expand Up @@ -299,7 +299,7 @@ def get_context_data(self, **kwargs):
roles = self.keystone.role_list()
context["roles"] = sorted(roles, key=lambda l: l.name.lower())
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')

return context

Expand Down Expand Up @@ -332,7 +332,7 @@ def _get_data(self):
if prj.get("team_owner_id") is not None:
prj["team"] = Group.objects.filter(id=prj["team_owner_id"]).first()
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(self.request, messages.ERROR, _("Unable to list projects"))

return projects
Expand Down Expand Up @@ -393,7 +393,7 @@ def post(self, request, *args, **kwargs):

# Houve falha no cadastro
if not response.get("status"):
log.exception("Exception: {}".format(response.get("status")))
log.exception(f'Exception: {response.get("status")}')
messages.add_message(request, messages.ERROR, response.get("reason"))

return self.render_to_response(
Expand Down Expand Up @@ -505,7 +505,7 @@ def post(self, request, *args, **kwargs):

actionlog.log(request.user.username, "update", project)
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(request, messages.ERROR, _("Error when updating project"))

context = self.get_context_data(form=form, request=request)
Expand Down Expand Up @@ -563,7 +563,7 @@ def post(self, request, *args, **kwargs):
messages.add_message(request, messages.SUCCESS, _("Successfully deleted project."))

except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
messages.add_message(request, messages.ERROR, _("Error when deleting project"))

# Purge project from current projects
Expand Down Expand Up @@ -604,7 +604,7 @@ def get(self, request, *args, **kwargs):

except Exception as e:
context["msg"] = "Error listing users"
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')

return self.render_to_response(context, status=500)

Expand All @@ -623,19 +623,19 @@ def post(self, request, *args, **kwargs):
try:
self.keystone.add_user_role(project=project, role=role, user=user)

item = "project: {}, role: {}, user: {}".format(project, role, user)
item = f"project: {project}, role: {role}, user: {user}"
actionlog.log(request.user.username, "create", item)

return self.render_to_response(context)

except exceptions.Conflict as e:
context["msg"] = str(_("User already registered with this role"))
log.exception("{}{}".format(_("Conflict:"), e))
log.exception(f'{_("Conflict:")}{e}')
return self.render_to_response(context, status=500)

except Exception as e:
context["msg"] = str(_("Error adding user"))
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
return self.render_to_response(context, status=500)


Expand All @@ -650,14 +650,14 @@ def post(self, request, *args, **kwargs):
try:
self.keystone.remove_user_role(project=project, role=role, user=user)

item = "project: {}, role: {}, user: {}".format(project, role, user)
item = f"project: {project}, role: {role}, user: {user}"
actionlog.log(request.user.username, "delete", item)

return self.render_to_response(context)

except Exception as e:
context["msg"] = str(_("Error removing user"))
log.exception("Exception: {}".format(e))
log.exception(f"Exception: {e}")
return self.render_to_response(context, status=500)


Expand All @@ -676,7 +676,7 @@ def post(self, request, *args, **kwargs):

except Exception as e:
context = {"msg": str(_("Error updating password"))}
log.exception("Exception: {}".format(e))
log.exception(f"Exception: {e}")
status = 500

return self.render_to_response(context, status=status)
Expand Down Expand Up @@ -709,12 +709,12 @@ def generate_widget_info(self):
try:
users = self.keystone.user_list()
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
return {"error": "Unable to list users"}
try:
projects = self.keystone.project_list()
except Exception as e:
log.exception("{}{}".format(_("Exception:").encode("UTF-8"), e))
log.exception(f'{_("Exception:").encode("UTF-8")}{e}')
return {"error": "Unable to list projects"}

return [
Expand Down
3 changes: 1 addition & 2 deletions storage/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,4 @@ class Meta:
unique_together = ('container', 'project_id',)

def __unicode__(self):
return "Container: {}, Project: {}".format(self.container,
self.project_name)
return f"Container: {self.container}, Project: {self.project_name}"
12 changes: 5 additions & 7 deletions storage/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ def update_swift_account(user, password, project_name, headers):
client.post_account(storage_url,
keystone.conn.auth_token, headers, http_conn=http_conn)
except client.ClientException as err:
log.exception('Exception: {}'.format(err))
log.exception(f'Exception: {err}')
return False

return True
Expand All @@ -244,13 +244,13 @@ def delete_swift_account(storage_url, auth_token):
client.delete_container(storage_url, auth_token, 'dummy_container',
http_conn=http_conn)
except client.ClientException as err:
log.exception('Fail to create container "dummy_container": {0}'.format(err))
log.exception(f'Fail to create container "dummy_container": {err}')
return False

try:
# Deletar o account
url = urlparse(storage_url)
domain = '{}://{}'.format(url.scheme, url.netloc)
domain = f'{url.scheme}://{url.netloc}'
path = url.path

http_conn = client.HTTPConnection(domain, insecure=insecure)
Expand All @@ -259,13 +259,11 @@ def delete_swift_account(storage_url, auth_token):
resp = http_conn.request('DELETE', path, headers=headers)

if resp.status_code != 204:
log.exception('Fail to delete account {}: status code {}'.format(
storage_url, resp.status_code
))
log.exception(f'Fail to delete account {storage_url}: status code {resp.status_code}')
return False

except client.ClientException as err:
log.exception('Exception: {0}'.format(err))
log.exception(f'Exception: {err}')
return False

return True
Expand Down
Loading