Use Environment.portofolio and portfolio_id properties instead of accessing them through application

This commit is contained in:
leigh-mil 2020-02-25 15:01:05 -05:00
parent 3544896d32
commit 2a2fafe7ea
9 changed files with 14 additions and 17 deletions

View File

@ -111,9 +111,7 @@ class EnvironmentRoles(object):
environment_role = EnvironmentRoles.get_by_id(environment_role_id)
if environment_role.cloud_id and not environment_role.environment.cloud_id:
tenant_id = environment_role.environment.application.portfolio.csp_data.get(
"tenant_id"
)
tenant_id = environment_role.environment.portfolio.csp_data.get("tenant_id")
app.csp.cloud.disable_user(tenant_id, environment_role.csp_user_id)
environment_role.status = EnvironmentRole.Status.DISABLED

View File

@ -135,7 +135,7 @@ def do_create_environment(csp: CloudProviderInterface, environment_id=None):
if environment.cloud_id is not None:
return
csp_details = environment.application.portfolio.csp_data
csp_details = environment.portfolio.csp_data
parent_id = environment.application.cloud_id
tenant_id = csp_details.get("tenant_id")
payload = EnvironmentCSPPayload(
@ -156,7 +156,7 @@ def do_create_environment_role(csp: CloudProviderInterface, environment_role_id=
return
env = env_role.environment
csp_details = env.application.portfolio.csp_data
csp_details = env.portfolio.csp_data
app_role = env_role.application_role
role = None

View File

@ -70,7 +70,7 @@ class Environment(
self.name,
self.num_users,
self.application.name,
self.application.portfolio.name,
self.portfolio.name,
self.id,
)

View File

@ -58,7 +58,7 @@ class EnvironmentRole(
@property
def portfolio_id(self):
return self.environment.application.portfolio_id
return self.environment.portfolio_id
@property
def application_id(self):
@ -86,8 +86,8 @@ class EnvironmentRole(
"environment_id": str(self.environment_id),
"application": self.environment.application.name,
"application_id": str(self.environment.application_id),
"portfolio": self.environment.application.portfolio.name,
"portfolio_id": str(self.environment.application.portfolio.id),
"portfolio": self.environment.portfolio.name,
"portfolio_id": str(self.environment.portfolio.id),
}

View File

@ -530,7 +530,7 @@ def resend_invite(application_id, application_role_id):
def build_subscription_payload(environment) -> SubscriptionCreationCSPPayload:
csp_data = environment.application.portfolio.csp_data
csp_data = environment.portfolio.csp_data
parent_group_id = environment.cloud_id
invoice_section_name = csp_data["billing_profile_properties"]["invoice_sections"][
0

View File

@ -23,10 +23,10 @@ def mock_csp():
def test_create_environment(mock_csp: MockCloudProvider):
environment = EnvironmentFactory.create()
environment.application.cloud_id = "parent_id"
environment.application.portfolio.csp_data = {"tenant_id": "fake"}
environment.portfolio.csp_data = {"tenant_id": "fake"}
payload = EnvironmentCSPPayload(
**dict(
tenant_id=environment.application.portfolio.csp_data.get("tenant_id"),
tenant_id=environment.portfolio.csp_data.get("tenant_id"),
display_name=environment.name,
parent_id=environment.application.cloud_id,
)

View File

@ -111,7 +111,7 @@ def test_disable_checks_env_provisioning_status(session):
def test_disable_checks_env_role_provisioning_status():
environment = EnvironmentFactory.create(cloud_id="cloud-id")
environment.application.portfolio.csp_data = {"tenant_id": uuid4().hex}
environment.portfolio.csp_data = {"tenant_id": uuid4().hex}
env_role1 = EnvironmentRoleFactory.create(environment=environment)
assert not env_role1.cloud_id
env_role1 = EnvironmentRoles.disable(env_role1.id)

View File

@ -786,10 +786,9 @@ def test_create_subscription_success(
client, user_session, mock_azure: AzureCloudProvider
):
environment = EnvironmentFactory.create()
user_session(environment.portfolio.owner)
environment.cloud_id = "management/group/id"
environment.application.portfolio.csp_data = {
environment.portfolio.csp_data = {
"billing_account_name": "xxxx-xxxx-xxx-xxx",
"billing_profile_name": "xxxxxxxxxxx:xxxxxxxxxxxxx_xxxxxx",
"tenant_id": "xxxxxxxxxxx-xxxxxxxxxx-xxxxxxx-xxxxx",
@ -832,7 +831,7 @@ def test_create_subscription_failure(client, user_session, monkeypatch):
user_session(environment.portfolio.owner)
environment.cloud_id = "management/group/id"
environment.application.portfolio.csp_data = {
environment.portfolio.csp_data = {
"billing_account_name": "xxxx-xxxx-xxx-xxx",
"billing_profile_name": "xxxxxxxxxxx:xxxxxxxxxxxxx_xxxxxx",
"tenant_id": "xxxxxxxxxxx-xxxxxxxxxx-xxxxxxx-xxxxx",

View File

@ -104,7 +104,7 @@ tomorrow = now.add(days=1)
def test_create_environment_job(session, csp):
environment = EnvironmentFactory.create()
environment.application.cloud_id = "parentId"
environment.application.portfolio.csp_data = {"tenant_id": "fake"}
environment.portfolio.csp_data = {"tenant_id": "fake"}
session.add(environment)
session.commit()
do_create_environment(csp, environment.id)