Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from argparse import ArgumentParser
from argparse import Namespace

from utils.services import find_matching_service
from devservices.utils.services import find_matching_service


def add_parser(subparsers: _SubParsersAction[ArgumentParser]) -> None:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
from argparse import ArgumentParser
from argparse import Namespace

from utils.devenv import get_coderoot
from utils.services import get_local_services
from devservices.utils.devenv import get_coderoot
from devservices.utils.services import get_local_services


def add_parser(subparsers: _SubParsersAction[ArgumentParser]) -> None:
Expand Down
10 changes: 5 additions & 5 deletions src/commands/logs.py → devservices/commands/logs.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
from argparse import ArgumentParser
from argparse import Namespace

from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME
from exceptions import DockerComposeError
from utils.docker_compose import run_docker_compose_command
from utils.services import find_matching_service
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from devservices.exceptions import DockerComposeError
from devservices.utils.docker_compose import run_docker_compose_command
from devservices.utils.services import find_matching_service


def add_parser(subparsers: _SubParsersAction[ArgumentParser]) -> None:
Expand Down
12 changes: 6 additions & 6 deletions src/commands/start.py → devservices/commands/start.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
from argparse import ArgumentParser
from argparse import Namespace

from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME
from exceptions import DockerComposeError
from utils.console import Status
from utils.docker_compose import run_docker_compose_command
from utils.services import find_matching_service
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from devservices.exceptions import DockerComposeError
from devservices.utils.console import Status
from devservices.utils.docker_compose import run_docker_compose_command
from devservices.utils.services import find_matching_service


def add_parser(subparsers: _SubParsersAction[ArgumentParser]) -> None:
Expand Down
13 changes: 6 additions & 7 deletions src/commands/status.py → devservices/commands/status.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
from argparse import ArgumentParser
from argparse import Namespace

from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME
from exceptions import DockerComposeError
from utils.docker_compose import run_docker_compose_command
from utils.services import find_matching_service
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from devservices.exceptions import DockerComposeError
from devservices.utils.docker_compose import run_docker_compose_command
from devservices.utils.services import find_matching_service

LINE_LENGTH = 40

Expand Down Expand Up @@ -70,11 +70,10 @@ def status(args: Namespace) -> None:
modes = service.config.modes
# TODO: allow custom modes to be used
mode_to_view = "default"
mode_dependencies = modes[mode_to_view]
mode_dependencies = " ".join(modes[mode_to_view])
service_config_file_path = os.path.join(
service.repo_path, DEVSERVICES_DIR_NAME, DOCKER_COMPOSE_FILE_NAME
)
mode_dependencies = " ".join(modes[mode_to_view])
try:
status_json = run_docker_compose_command(
f"-f {service_config_file_path} ps {mode_dependencies} --format json"
Expand Down
12 changes: 6 additions & 6 deletions src/commands/stop.py → devservices/commands/stop.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
from argparse import ArgumentParser
from argparse import Namespace

from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME
from exceptions import DockerComposeError
from utils.console import Status
from utils.docker_compose import run_docker_compose_command
from utils.services import find_matching_service
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from devservices.exceptions import DockerComposeError
from devservices.utils.console import Status
from devservices.utils.docker_compose import run_docker_compose_command
from devservices.utils.services import find_matching_service


def add_parser(subparsers: _SubParsersAction[ArgumentParser]) -> None:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
from dataclasses import dataclass

import yaml
from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME
from exceptions import ConfigNotFoundError
from exceptions import ConfigParseError
from exceptions import ConfigValidationError

from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from devservices.exceptions import ConfigNotFoundError
from devservices.exceptions import ConfigParseError
from devservices.exceptions import ConfigValidationError

VALID_VERSIONS = [0.1]

Expand Down
File renamed without changes.
File renamed without changes.
13 changes: 7 additions & 6 deletions src/main.py → devservices/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,15 @@
import atexit

import sentry_sdk
from commands import list_dependencies
from commands import list_services
from commands import logs
from commands import start
from commands import status
from commands import stop
from sentry_sdk.integrations.argv import ArgvIntegration

from devservices.commands import list_dependencies
from devservices.commands import list_services
from devservices.commands import logs
from devservices.commands import start
from devservices.commands import status
from devservices.commands import stop

sentry_sdk.init(
dsn="https://[email protected]/4507946704961536",
traces_sample_rate=1.0,
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import subprocess

from exceptions import DockerComposeError
from devservices.exceptions import DockerComposeError


def run_docker_compose_command(command: str) -> subprocess.CompletedProcess[str]:
Expand Down
16 changes: 8 additions & 8 deletions src/utils/services.py → devservices/utils/services.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
import os
from dataclasses import dataclass

from configs.service_config import ServiceConfig
from exceptions import ConfigNotFoundError
from exceptions import ConfigParseError
from exceptions import ConfigValidationError
from exceptions import ServiceNotFoundError
from utils.devenv import get_coderoot
from devservices.configs.service_config import ServiceConfig
from devservices.exceptions import ConfigNotFoundError
from devservices.exceptions import ConfigParseError
from devservices.exceptions import ConfigValidationError
from devservices.exceptions import ServiceNotFoundError
from devservices.utils.devenv import get_coderoot


@dataclass
Expand All @@ -20,7 +20,7 @@ class Service:

def get_local_services(coderoot: str) -> list[Service]:
"""Get a list of services in the coderoot."""
from configs.service_config import load_service_config_from_file
from devservices.configs.service_config import load_service_config_from_file

services = []
for repo in os.listdir(coderoot):
Expand All @@ -43,7 +43,7 @@ def get_local_services(coderoot: str) -> list[Service]:
def find_matching_service(service_name: str | None = None) -> Service:
"""Find a service with the given name."""
if service_name is None:
from configs.service_config import load_service_config_from_file
from devservices.configs.service_config import load_service_config_from_file

repo_path = os.getcwd()
service_config = load_service_config_from_file(repo_path)
Expand Down
9 changes: 4 additions & 5 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,11 @@ dev = [
]

[project.scripts]
devservices = "main:main"
devservices = "devservices.main:main"

[tool.setuptools.packages]
find = {}

[tool.setuptools]
package-dir = {"" = "src"}
packages = {find = {where = ["src"]}}
include-package-data = true

[tool.mypy]
python_version = "3.12"
Expand Down
10 changes: 5 additions & 5 deletions tests/commands/test_start.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
from unittest import mock

import pytest
from commands.start import start
from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME

from devservices.commands.start import start
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from tests.testutils import create_config_file


@mock.patch("utils.docker_compose.subprocess.run")
@mock.patch("devservices.utils.docker_compose.subprocess.run")
def test_start_simple(mock_run: mock.Mock, tmp_path: Path) -> None:
config = {
"x-sentry-service-config": {
Expand Down Expand Up @@ -56,7 +56,7 @@ def test_start_simple(mock_run: mock.Mock, tmp_path: Path) -> None:
)


@mock.patch("utils.docker_compose.subprocess.run")
@mock.patch("devservices.utils.docker_compose.subprocess.run")
def test_start_error(
mock_run: mock.Mock, capsys: pytest.CaptureFixture[str], tmp_path: Path
) -> None:
Expand Down
10 changes: 5 additions & 5 deletions tests/commands/test_stop.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
from unittest import mock

import pytest
from commands.stop import stop
from constants import DEVSERVICES_DIR_NAME
from constants import DOCKER_COMPOSE_FILE_NAME

from devservices.commands.stop import stop
from devservices.constants import DEVSERVICES_DIR_NAME
from devservices.constants import DOCKER_COMPOSE_FILE_NAME
from tests.testutils import create_config_file


@mock.patch("utils.docker_compose.subprocess.run")
@mock.patch("devservices.utils.docker_compose.subprocess.run")
def test_stop_simple(mock_run: mock.Mock, tmp_path: Path) -> None:
config = {
"x-sentry-service-config": {
Expand Down Expand Up @@ -56,7 +56,7 @@ def test_stop_simple(mock_run: mock.Mock, tmp_path: Path) -> None:
)


@mock.patch("utils.docker_compose.subprocess.run")
@mock.patch("devservices.utils.docker_compose.subprocess.run")
def test_stop_error(
mock_run: mock.Mock, capsys: pytest.CaptureFixture[str], tmp_path: Path
) -> None:
Expand Down
Loading