diff --git a/script/remove_sample_data.py b/script/remove_sample_data.py index ca52c83e..becde60a 100644 --- a/script/remove_sample_data.py +++ b/script/remove_sample_data.py @@ -1,4 +1,4 @@ -# Add root project dir to the python path +# Add root application dir to the python path import os import sys @@ -15,14 +15,14 @@ from atst.app import make_config, make_app from atst.models.audit_event import AuditEvent from atst.models.environment import Environment from atst.models.environment_role import EnvironmentRole -from atst.models.project import Project +from atst.models.application import Application from atst.models.request import Request from atst.models.request_revision import RequestRevision from atst.models.request_status_event import RequestStatus, RequestStatusEvent from atst.models.role import Role from atst.models.user import User -from atst.models.workspace_role import WorkspaceRole -from atst.models.workspace import Workspace +from atst.models.portfolio_role import PortfolioRole +from atst.models.portfolio import Portfolio from atst.models.mixins import AuditableMixin from atst.domain.environments import Environments @@ -30,7 +30,7 @@ from atst.domain.exceptions import NotFoundError from atst.domain.csp.reports import MockReportingProvider from atst.domain.requests import Requests from atst.domain.users import Users -from atst.domain.workspaces import Workspaces +from atst.domain.portfolios import portfolios from tests.factories import RequestFactory, LegacyTaskOrderFactory @@ -48,29 +48,29 @@ dod_ids = [ ] -def create_demo_workspace(name, data): +def create_demo_portfolio(name, data): try: - workspace_owner = Users.get_by_dod_id("678678678") # Other + portfolio_owner = Users.get_by_dod_id("678678678") # Other auditor = Users.get_by_dod_id("3453453453") # Sally except NotFoundError: - print("Could not find demo users; will not create demo workspace {}".format(name)) + print("Could not find demo users; will not create demo portfolio {}".format(name)) return - request = RequestFactory.build(creator=workspace_owner) + request = RequestFactory.build(creator=portfolio_owner) request.legacy_task_order = LegacyTaskOrderFactory.build() request = Requests.update( request.id, {"financial_verification": RequestFactory.mock_financial_data()} ) approved_request = Requests.set_status(request, RequestStatus.APPROVED) - workspace = Requests.approve_and_create_workspace(request) - Workspaces.update(workspace, { "name": name }) + portfolio = Requests.approve_and_create_portfolio(request) + portfolios.update(portfolio, { "name": name }) - for mock_project in data["projects"]: - project = Project(workspace=workspace, name=mock_project.name, description='') - env_names = [env.name for env in mock_project.environments] - envs = Environments.create_many(project, env_names) - db.session.add(project) + for mock_application in data["applications"]: + application = application(portfolio=portfolio, name=mock_application.name, description='') + env_names = [env.name for env in mock_application.environments] + envs = Environments.create_many(application, env_names) + db.session.add(application) db.session.commit() @@ -103,18 +103,18 @@ def remove_sample_data(all_users=False): ) events = [ev for r in requests for ev in r.status_events] revisions = [rev for r in requests for rev in r.revisions] - workspaces = [r.workspace for r in requests if r.workspace] + portfolios = [r.portfolio for r in requests if r.portfolio] ws_audit = ( db.session.query(AuditEvent) - .filter(AuditEvent.workspace_id.in_([w.id for w in workspaces])) + .filter(AuditEvent.portfolio_id.in_([w.id for w in portfolios])) .all() ) - workspace_roles = [role for workspace in workspaces for role in workspace.roles] - invites = [invite for role in workspace_roles for invite in role.invitations] - projects = [p for workspace in workspaces for p in workspace.projects] + portfolio_roles = [role for portfolio in portfolios for role in portfolio.roles] + invites = [invite for role in portfolio_roles for invite in role.invitations] + applications = [p for portfolio in portfolios for p in portfolio.applications] environments = ( db.session.query(Environment) - .filter(Environment.project_id.in_([p.id for p in projects])) + .filter(Environment.application_id.in_([p.id for p in applications])) .all() ) roles = [role for env in environments for role in env.roles] @@ -122,9 +122,9 @@ def remove_sample_data(all_users=False): for set_of_things in [ roles, environments, - projects, + applications, invites, - workspace_roles, + portfolio_roles, ws_audit, events, revisions, @@ -135,9 +135,9 @@ def remove_sample_data(all_users=False): db.session.commit() - query = "DELETE FROM workspaces WHERE workspaces.id = ANY(:ids);" + query = "DELETE FROM portfolios WHERE portfolios.id = ANY(:ids);" db.session.connection().execute( - sqlalchemy.text(query), ids=[w.id for w in workspaces] + sqlalchemy.text(query), ids=[w.id for w in portfolios] ) query = "DELETE FROM requests WHERE requests.id = ANY(:ids);" @@ -153,5 +153,5 @@ if __name__ == "__main__": app = make_app(config) with app.app_context(): remove_sample_data() - create_demo_workspace('Aardvark', MockReportingProvider.REPORT_FIXTURE_MAP["Aardvark"]) - create_demo_workspace('Beluga', MockReportingProvider.REPORT_FIXTURE_MAP["Beluga"]) + create_demo_portfolio('Aardvark', MockReportingProvider.REPORT_FIXTURE_MAP["Aardvark"]) + create_demo_portfolio('Beluga', MockReportingProvider.REPORT_FIXTURE_MAP["Beluga"]) diff --git a/script/seed_sample.py b/script/seed_sample.py index 84ef41f4..6ebb6284 100644 --- a/script/seed_sample.py +++ b/script/seed_sample.py @@ -1,4 +1,4 @@ -# Add root project dir to the python path +# Add root application dir to the python path import os import sys @@ -9,44 +9,44 @@ from atst.database import db from atst.app import make_config, make_app from atst.domain.users import Users from atst.domain.requests import Requests -from atst.domain.workspaces import Workspaces +from atst.domain.portfolios import Portfolios from atst.domain.applications import Applications -from atst.domain.workspace_roles import WorkspaceRoles +from atst.domain.portfolio_roles import PortfolioRoles from atst.models.invitation import Status as InvitationStatus from atst.domain.exceptions import AlreadyExistsError from tests.factories import RequestFactory, LegacyTaskOrderFactory, InvitationFactory from atst.routes.dev import _DEV_USERS as DEV_USERS -WORKSPACE_USERS = [ +portfolio_USERS = [ { "first_name": "Danny", "last_name": "Knight", "email": "knight@mil.gov", - "workspace_role": "developer", + "portfolio_role": "developer", "dod_id": "0000000001", }, { "first_name": "Mario", "last_name": "Hudson", "email": "hudson@mil.gov", - "workspace_role": "billing_auditor", + "portfolio_role": "billing_auditor", "dod_id": "0000000002", }, { "first_name": "Louise", "last_name": "Greer", "email": "greer@mil.gov", - "workspace_role": "admin", + "portfolio_role": "admin", "dod_id": "0000000003", }, ] -WORKSPACE_INVITED_USERS = [ +portfolio_INVITED_USERS = [ { "first_name": "Frederick", "last_name": "Fitzgerald", "email": "frederick@mil.gov", - "workspace_role": "developer", + "portfolio_role": "developer", "dod_id": "0000000004", "status": InvitationStatus.REJECTED_WRONG_USER }, @@ -54,7 +54,7 @@ WORKSPACE_INVITED_USERS = [ "first_name": "Gina", "last_name": "Guzman", "email": "gina@mil.gov", - "workspace_role": "developer", + "portfolio_role": "developer", "dod_id": "0000000005", "status": InvitationStatus.REJECTED_EXPIRED }, @@ -62,7 +62,7 @@ WORKSPACE_INVITED_USERS = [ "first_name": "Hector", "last_name": "Harper", "email": "hector@mil.gov", - "workspace_role": "developer", + "portfolio_role": "developer", "dod_id": "0000000006", "status": InvitationStatus.REVOKED }, @@ -70,7 +70,7 @@ WORKSPACE_INVITED_USERS = [ "first_name": "Isabella", "last_name": "Ingram", "email": "isabella@mil.gov", - "workspace_role": "developer", + "portfolio_role": "developer", "dod_id": "0000000007", "status": InvitationStatus.PENDING }, @@ -107,26 +107,26 @@ def seed_db(): request.id, {"financial_verification": RequestFactory.mock_financial_data()} ) - workspace = Workspaces.create( - user, name="{}'s workspace".format(user.first_name) + portfolio = Portfolios.create( + user, name="{}'s portfolio".format(user.first_name) ) - for workspace_role in WORKSPACE_USERS: - ws_role = Workspaces.create_member(user, workspace, workspace_role) + for portfolio_role in portfolio_USERS: + ws_role = Portfolios.create_member(user, portfolio, portfolio_role) db.session.refresh(ws_role) - WorkspaceRoles.enable(ws_role) + PortfolioRoles.enable(ws_role) - for workspace_role in WORKSPACE_INVITED_USERS: - ws_role = Workspaces.create_member(user, workspace, workspace_role) - invitation = InvitationFactory.build(workspace_role=ws_role, status=workspace_role["status"]) + for portfolio_role in portfolio_INVITED_USERS: + ws_role = Portfolios.create_member(user, portfolio, portfolio_role) + invitation = InvitationFactory.build(portfolio_role=ws_role, status=portfolio_role["status"]) db.session.add(invitation) db.session.commit() Applications.create( user, - workspace=workspace, - name="First Project", - description="This is our first project.", + portfolio=portfolio, + name="First Application", + description="This is our first application.", environment_names=["dev", "staging", "prod"], )