mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-04 10:21:14 -05:00
Add default permissions for existing services.
This commit is contained in:
44
migrations/versions/0028_add_default_permissions.py
Normal file
44
migrations/versions/0028_add_default_permissions.py
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
"""empty message
|
||||||
|
|
||||||
|
Revision ID: 0028_add_default_permissions
|
||||||
|
Revises: 0027_add_service_permission
|
||||||
|
Create Date: 2016-02-26 10:33:20.536362
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
# revision identifiers, used by Alembic.
|
||||||
|
revision = '0028_add_default_permissions'
|
||||||
|
down_revision = '0027_add_service_permission'
|
||||||
|
import uuid
|
||||||
|
from datetime import datetime
|
||||||
|
from alembic import op
|
||||||
|
import sqlalchemy as sa
|
||||||
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
|
def upgrade():
|
||||||
|
### commands auto generated by Alembic - please adjust! ###
|
||||||
|
conn = op.get_bind()
|
||||||
|
user_services = conn.execute("SELECT * FROM user_to_service").fetchall()
|
||||||
|
for entry in user_services:
|
||||||
|
id_ = uuid.uuid4()
|
||||||
|
created_at = datetime.now().isoformat().replace('T', ' ')
|
||||||
|
conn.execute((
|
||||||
|
"INSERT INTO permissions (id, user_id, service_id, permission, created_at)"
|
||||||
|
" VALUES ('{}', '{}', '{}', 'manage_service', '{}')").format(id_, entry[0], entry[1], created_at))
|
||||||
|
id_ = uuid.uuid4()
|
||||||
|
conn.execute((
|
||||||
|
"INSERT INTO permissions (id, user_id, service_id, permission, created_at)"
|
||||||
|
" VALUES ('{}', '{}', '{}', 'send_messages', '{}')").format(id_, entry[0], entry[1], created_at))
|
||||||
|
id_ = uuid.uuid4()
|
||||||
|
conn.execute((
|
||||||
|
"INSERT INTO permissions (id, user_id, service_id, permission, created_at)"
|
||||||
|
" VALUES ('{}', '{}', '{}', 'manage_api_keys', '{}')").format(id_, entry[0], entry[1], created_at))
|
||||||
|
### end Alembic commands ###
|
||||||
|
|
||||||
|
|
||||||
|
def downgrade():
|
||||||
|
### commands auto generated by Alembic - please adjust! ###
|
||||||
|
conn = op.get_bind()
|
||||||
|
conn.execute("DELETE FROM permissions")
|
||||||
|
|
||||||
|
### end Alembic commands ###
|
||||||
Reference in New Issue
Block a user