Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: TOSIT-IO/tdp-lib
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1f1d357a14e8d15ac16225de5609b05c1d31a2f2
Choose a base ref
..
head repository: TOSIT-IO/tdp-lib
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ff7d3eb7cc3b1494bab9845c89bfa65581256aa3
Choose a head ref
2 changes: 1 addition & 1 deletion tdp/cli/commands/browse.py
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

import click

from tdp.cli.queries import (
from tdp.queries import (
get_deployment,
get_deployments,
get_operation_records,
2 changes: 1 addition & 1 deletion tdp/cli/commands/deploy.py
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@

import click

from tdp.cli.queries import (
from tdp.queries import (
get_planned_deployment,
get_sch_status,
)
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/dag.py
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

import click

from tdp.cli.queries import get_planned_deployment
from tdp.queries import get_planned_deployment
from tdp.cli.session import get_session
from tdp.cli.utils import (
collections,
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/edit.py
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@

import click

from tdp.cli.queries import get_planned_deployment
from tdp.queries import get_planned_deployment
from tdp.cli.session import get_session
from tdp.cli.utils import collections, database_dsn, parse_file
from tdp.core.models.deployment_model import DeploymentModel
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/import_file.py
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@

import click

from tdp.cli.queries import get_planned_deployment
from tdp.queries import get_planned_deployment
from tdp.cli.session import get_session
from tdp.cli.utils import collections, database_dsn, parse_file
from tdp.core.models.deployment_model import DeploymentModel
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/ops.py
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

import click

from tdp.cli.queries import get_planned_deployment
from tdp.queries import get_planned_deployment
from tdp.cli.session import get_session
from tdp.cli.utils import (
collections,
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/reconfigure.py
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

import click

from tdp.cli.queries import get_planned_deployment, get_sch_status
from tdp.queries import get_planned_deployment, get_sch_status
from tdp.cli.session import get_session
from tdp.cli.utils import (
collections,
2 changes: 1 addition & 1 deletion tdp/cli/commands/plan/resume.py
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

import click

from tdp.cli.queries import (
from tdp.queries import (
get_deployment,
get_last_deployment,
get_planned_deployment,
2 changes: 1 addition & 1 deletion tdp/cli/commands/status/edit.py
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@
_common_status_options,
_print_sch_status_logs,
)
from tdp.cli.queries import get_sch_status
from tdp.queries import get_sch_status
from tdp.cli.session import get_session
from tdp.cli.utils import check_services_cleanliness, hosts
from tdp.core.cluster_status import ClusterStatus
2 changes: 1 addition & 1 deletion tdp/cli/commands/status/generate_stales.py
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@
_common_status_options,
_print_sch_status_logs,
)
from tdp.cli.queries import get_sch_status
from tdp.queries import get_sch_status
from tdp.cli.session import get_session
from tdp.cli.utils import check_services_cleanliness
from tdp.core.cluster_status import ClusterStatus
2 changes: 1 addition & 1 deletion tdp/cli/commands/status/show.py
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@
_common_status_options,
_print_sch_status_logs,
)
from tdp.cli.queries import get_sch_status
from tdp.queries import get_sch_status
from tdp.cli.session import get_session
from tdp.cli.utils import check_services_cleanliness, hosts
from tdp.core.cluster_status import ClusterStatus
2 changes: 1 addition & 1 deletion tdp/cli/commands/vars/edit.py
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@

import click

from tdp.cli.queries import get_sch_status
from tdp.queries import get_sch_status
from tdp.cli.session import get_session
from tdp.cli.utils import (
collections,
2 changes: 1 addition & 1 deletion tdp/cli/test_get_sch_status.py
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@

from sqlalchemy.orm import Session

from tdp.cli.queries import get_sch_status
from tdp.queries import get_sch_status
from tdp.core.models import (
SCHStatusLogModel,
SCHStatusLogSourceEnum,
50 changes: 34 additions & 16 deletions tdp/cli/queries.py → tdp/queries.py
Original file line number Diff line number Diff line change
@@ -405,7 +405,8 @@ def get_deployment(session: Session, deployment_id: int) -> DeploymentModel:
The deployment.
Raises:
NoResultFound: If the deployment does not exist."""
NoResultFound: If the deployment does not exist.
"""
try:
return session.query(DeploymentModel).filter_by(id=deployment_id).one()
except NoResultFound as e:
@@ -442,9 +443,15 @@ def get_planned_deployment(session: Session) -> Optional[DeploymentModel]:
session: The database session.
Returns:
The planned deployment or None if there is no planned deployment.
The planned deployment.
Raises:
NoResultFound: No planned deployment if none.
"""
return session.query(DeploymentModel).filter_by(state="PLANNED").one_or_none()
try:
return session.query(DeploymentModel).filter_by(state="PLANNED").one_or_none()
except NoResultFound as e:
raise Exception("No planned deployment.") from e


def get_running_deployment(session: Session) -> Optional[DeploymentModel]:
@@ -455,14 +462,20 @@ def get_running_deployment(session: Session) -> Optional[DeploymentModel]:
Returns:
The running deployment or NoResultFound if there is no running deployment.
Raises:
NoResultFound: If there is no running deployment.
"""
return (
session.query(DeploymentModel)
.where(DeploymentModel.state == "Running")
.order_by(DeploymentModel.id.desc())
.limit(1)
.one()
)
try:
return (
session.query(DeploymentModel)
.where(DeploymentModel.state == "Running")
.order_by(DeploymentModel.id.desc())
.limit(1)
.one()
)
except NoResultFound as e:
raise Exception("No running deployment.") from e


def get_operation_records(
@@ -507,10 +520,15 @@ def get_operation_order(
The matching operation record.
Raises:
NoResultFound: If the operation does not exist.
NoResultFound: If the operation order does not exist.
"""
return (
session.query(OperationModel)
.filter_by(deployment_id=deployment_id, operation_order=operation_order)
.one()
)
try:
return (
session.query(OperationModel)
.filter_by(deployment_id=deployment_id, operation_order=operation_order)
.one()
)
except NoResultFound as e:
raise Exception(
f"Operation {operation_order} does not exist in deployment {deployment_id}."
) from e