Merge pull request #1152 from dod-ccpo/env-processing-label-bugfix

Remove baseline_info column from environments table
This commit is contained in:
leigh-mil 2019-10-30 15:47:58 -04:00 committed by GitHub
commit 48a90b5177
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 36 additions and 36 deletions

View File

@ -0,0 +1,28 @@
"""remove baseline_info
Revision ID: 687fd43489d6
Revises: f328f1ea400c
Create Date: 2019-10-30 13:49:55.757825
"""
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql
# revision identifiers, used by Alembic.
revision = '687fd43489d6' # pragma: allowlist secret
down_revision = 'f328f1ea400c' # pragma: allowlist secret
branch_labels = None
depends_on = None
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column('environments', 'baseline_info')
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.add_column('environments', sa.Column('baseline_info', postgresql.JSONB(astext_type=sa.Text()), autoincrement=False, nullable=True))
# ### end Alembic commands ###

View File

@ -86,7 +86,6 @@ class EnvironmentRoles(object):
.join(Environment) .join(Environment)
.join(ApplicationRole) .join(ApplicationRole)
.filter(Environment.deleted == False) .filter(Environment.deleted == False)
.filter(Environment.baseline_info != None)
.filter(EnvironmentRole.status == EnvironmentRole.Status.PENDING) .filter(EnvironmentRole.status == EnvironmentRole.Status.PENDING)
.filter(ApplicationRole.status == ApplicationRoleStatus.ACTIVE) .filter(ApplicationRole.status == ApplicationRoleStatus.ACTIVE)
.all() .all()

View File

@ -27,7 +27,6 @@ class Environment(
cloud_id = Column(String) cloud_id = Column(String)
root_user_info = Column(JSONB(none_as_null=True)) root_user_info = Column(JSONB(none_as_null=True))
baseline_info = Column(JSONB(none_as_null=True))
claimed_until = Column(TIMESTAMP(timezone=True)) claimed_until = Column(TIMESTAMP(timezone=True))
@ -59,11 +58,7 @@ class Environment(
@property @property
def provisioning_status(self) -> ProvisioningStatus: def provisioning_status(self) -> ProvisioningStatus:
if ( if self.cloud_id is None or self.root_user_info is None:
self.cloud_id is None
or self.root_user_info is None
or self.baseline_info is None
):
return self.ProvisioningStatus.PENDING return self.ProvisioningStatus.PENDING
else: else:
return self.ProvisioningStatus.COMPLETED return self.ProvisioningStatus.COMPLETED

View File

@ -54,19 +54,15 @@ def test_audit_event_for_environment_deletion(session):
"env_data,expected_status", "env_data,expected_status",
[ [
[ [
{"cloud_id": None, "root_user_info": None, "baseline_info": None}, {"cloud_id": None, "root_user_info": None},
Environment.ProvisioningStatus.PENDING, Environment.ProvisioningStatus.PENDING,
], ],
[ [
{"cloud_id": 1, "root_user_info": None, "baseline_info": None}, {"cloud_id": 1, "root_user_info": None},
Environment.ProvisioningStatus.PENDING, Environment.ProvisioningStatus.PENDING,
], ],
[ [
{"cloud_id": 1, "root_user_info": {}, "baseline_info": None}, {"cloud_id": 1, "root_user_info": {}},
Environment.ProvisioningStatus.PENDING,
],
[
{"cloud_id": 1, "root_user_info": {}, "baseline_info": {}},
Environment.ProvisioningStatus.COMPLETED, Environment.ProvisioningStatus.COMPLETED,
], ],
], ],

View File

@ -156,15 +156,7 @@ def test_dispatch_create_atat_admin_user(session, monkeypatch):
def test_create_environment_no_dupes(session, celery_app, celery_worker): def test_create_environment_no_dupes(session, celery_app, celery_worker):
portfolio = PortfolioFactory.create( portfolio = PortfolioFactory.create(
applications=[ applications=[
{ {"environments": [{"cloud_id": uuid4().hex, "root_user_info": {}}]}
"environments": [
{
"cloud_id": uuid4().hex,
"root_user_info": {},
"baseline_info": None,
}
]
}
], ],
task_orders=[ task_orders=[
{ {
@ -198,15 +190,7 @@ def test_create_environment_no_dupes(session, celery_app, celery_worker):
def test_claim_for_update(session): def test_claim_for_update(session):
portfolio = PortfolioFactory.create( portfolio = PortfolioFactory.create(
applications=[ applications=[
{ {"environments": [{"cloud_id": uuid4().hex, "root_user_info": {}}]}
"environments": [
{
"cloud_id": uuid4().hex,
"root_user_info": {},
"baseline_info": None,
}
]
}
], ],
task_orders=[ task_orders=[
{ {
@ -270,7 +254,7 @@ def test_dispatch_provision_user(csp, session, celery_app, celery_worker, monkey
# (C) one of which is pending, has a provisioned environment but an inactive application role # (C) one of which is pending, has a provisioned environment but an inactive application role
# (D) one of which is pending, has a provisioned environment and has an active application role # (D) one of which is pending, has a provisioned environment and has an active application role
provisioned_environment = EnvironmentFactory.create( provisioned_environment = EnvironmentFactory.create(
cloud_id="cloud_id", root_user_info={}, baseline_info={} cloud_id="cloud_id", root_user_info={}
) )
unprovisioned_environment = EnvironmentFactory.create() unprovisioned_environment = EnvironmentFactory.create()
_er_a = EnvironmentRoleFactory.create( _er_a = EnvironmentRoleFactory.create(
@ -304,9 +288,7 @@ def test_do_provision_user(csp, session):
# Given that I have an EnvironmentRole with a provisioned environment # Given that I have an EnvironmentRole with a provisioned environment
credentials = MockCloudProvider(())._auth_credentials credentials = MockCloudProvider(())._auth_credentials
provisioned_environment = EnvironmentFactory.create( provisioned_environment = EnvironmentFactory.create(
cloud_id="cloud_id", cloud_id="cloud_id", root_user_info={"credentials": credentials}
root_user_info={"credentials": credentials},
baseline_info={},
) )
environment_role = EnvironmentRoleFactory.create( environment_role = EnvironmentRoleFactory.create(
environment=provisioned_environment, environment=provisioned_environment,