Skip to content

Commit

Permalink
move reputation to the main module
Browse files Browse the repository at this point in the history
  • Loading branch information
shadeofblue committed Mar 18, 2024
1 parent 3f9607b commit dc7dce7
Show file tree
Hide file tree
Showing 23 changed files with 23 additions and 55 deletions.
2 changes: 1 addition & 1 deletion ray_on_golem/main.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import click

from ray_on_golem.network_stats import main as network_stats
from ray_on_golem.reputation.cli import reputation_cli
from ray_on_golem.server import main as webserver
from ray_on_golem.server import start, status, stop
from ray_on_golem.server.services.reputation.cli import reputation_cli
from ray_on_golem.version import version


Expand Down
2 changes: 1 addition & 1 deletion ray_on_golem/network_stats/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
from ray_on_golem.cli import with_datadir
from ray_on_golem.network_stats.services import NetworkStatsService
from ray_on_golem.provider.node_provider import GolemNodeProvider
from ray_on_golem.reputation.service import ReputationService
from ray_on_golem.server.services import YagnaService
from ray_on_golem.server.services.reputation.service import ReputationService
from ray_on_golem.server.settings import YAGNA_PATH, get_logging_config


Expand Down
2 changes: 1 addition & 1 deletion ray_on_golem/network_stats/services/network_stats.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@
from golem.resources.proposal.exceptions import ProposalRejected
from ya_market import ApiException

from ray_on_golem.reputation.plugins import ProviderBlacklistPlugin
from ray_on_golem.server.models import NodeConfigData
from ray_on_golem.server.services.golem.golem import DEFAULT_DEMAND_LIFETIME
from ray_on_golem.server.services.golem.helpers.demand_config import DemandConfigHelper
from ray_on_golem.server.services.golem.helpers.manager_stack import ManagerStackNodeConfigHelper
from ray_on_golem.server.services.golem.manager_stack import ManagerStack
from ray_on_golem.server.services.reputation.plugins import ProviderBlacklistPlugin

logger = logging.getLogger(__name__)

Expand Down
3 changes: 3 additions & 0 deletions ray_on_golem/reputation/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from ray_on_golem.reputation.service import ReputationService

__all__ = ("ReputationService",)
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from aerich import Migrate

from ray_on_golem.cli import with_datadir
from ray_on_golem.server.services.reputation.service import ReputationService
from ray_on_golem.reputation.service import ReputationService


@click.group(help="Reputation subsystem admin.", context_settings={"show_default": True})
Expand All @@ -30,7 +30,6 @@ def migrate(datadir, name, empty):
return

async def _migrate():
migration_name = None
async with ReputationService(datadir, auto_apply_migrations=False) as service:
await service.migrations.init()
if empty:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
from tortoise.exceptions import DoesNotExist

from ray_on_golem.cli import with_datadir
from ray_on_golem.server.services.reputation import models as m
from ray_on_golem.server.services.reputation.service import ReputationService
from ray_on_golem.server.services.reputation.updater import ReputationUpdater
from ray_on_golem.reputation import models as m
from ray_on_golem.reputation.service import ReputationService
from ray_on_golem.reputation.updater import ReputationUpdater


@click.group(
Expand Down Expand Up @@ -157,20 +157,3 @@ async def _update():
)

asyncio.run(_update())


@reputation_cli.command()
@with_network
@with_datadir
def test(datadir, network):
async def _test():
async with ReputationService(datadir):
cnt_added, cnt_updated, cnt_ignored, cnt_total = await ReputationUpdater(
network
).update(partial(click.progressbar, label="Updating scores"))

print(
f"Reputation DB updated. Total scores={cnt_total} (added={cnt_added}, updated={cnt_updated}, ignored={cnt_ignored})."
)

asyncio.run(_testx())
File renamed without changes.
4 changes: 4 additions & 0 deletions ray_on_golem/reputation/plugins/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
from ray_on_golem.reputation.plugins.blacklist import ProviderBlacklistPlugin
from ray_on_golem.reputation.plugins.score import ReputationScorer

__all__ = ("ProviderBlacklistPlugin", "ReputationScorer")
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from golem.managers import ProposalManagerPlugin
from golem.resources import Proposal

from ray_on_golem.server.services.reputation import models as m
from ray_on_golem.reputation import models as m

logger = logging.getLogger(__name__)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from golem.utils.typing import MaybeAwaitable
from tortoise.exceptions import DoesNotExist

from ray_on_golem.server.services.reputation import models as m
from ray_on_golem.reputation import models as m

if TYPE_CHECKING:
from golem.resources import ProposalData
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

import aiohttp

from ray_on_golem.server.services.reputation import models as m
from ray_on_golem.reputation import models as m

REPUTATION_SYSTEM_URI = "https://reputation.dev-test.golem.network/v1/"
REPUTATION_SYSTEM_PROVIDER_SCORES = "providers/scores"
Expand Down
4 changes: 3 additions & 1 deletion ray_on_golem/server/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

from ray_on_golem.cli import with_datadir
from ray_on_golem.server.middlewares import error_middleware, trace_id_middleware
from ray_on_golem.server.services import GolemService, RayService, ReputationService, YagnaService
from ray_on_golem.server.services import GolemService, RayService, YagnaService
from ray_on_golem.server.settings import (
RAY_ON_GOLEM_SHUTDOWN_TIMEOUT,
WEBSOCAT_PATH,
Expand Down Expand Up @@ -74,6 +74,8 @@ def create_application(
registry_stats: bool,
datadir: Path,
) -> web.Application:
from ray_on_golem.reputation.service import ReputationService

app = web.Application(
middlewares=[
trace_id_middleware,
Expand Down
2 changes: 0 additions & 2 deletions ray_on_golem/server/services/__init__.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
from ray_on_golem.server.services.golem import GolemService, get_manifest
from ray_on_golem.server.services.ray import RayService
from ray_on_golem.server.services.reputation import ReputationService
from ray_on_golem.server.services.yagna import YagnaService

__all__ = (
"GolemService",
"RayService",
"ReputationService",
"YagnaService",
"get_manifest",
)
5 changes: 1 addition & 4 deletions ray_on_golem/server/services/golem/golem.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,11 @@
from golem.resources import Activity, Network, Proposal
from yarl import URL

from ray_on_golem.reputation.plugins import ProviderBlacklistPlugin, ReputationScorer
from ray_on_golem.server.models import NodeConfigData
from ray_on_golem.server.services.golem.helpers.demand_config import DemandConfigHelper
from ray_on_golem.server.services.golem.helpers.manager_stack import ManagerStackNodeConfigHelper
from ray_on_golem.server.services.golem.manager_stack import ManagerStack
from ray_on_golem.server.services.reputation.plugins import (
ProviderBlacklistPlugin,
ReputationScorer,
)
from ray_on_golem.server.services.utils import get_ssh_command

logger = logging.getLogger(__name__)
Expand Down
11 changes: 0 additions & 11 deletions ray_on_golem/server/services/golem/provider_data.py

This file was deleted.

3 changes: 0 additions & 3 deletions ray_on_golem/server/services/reputation/__init__.py

This file was deleted.

4 changes: 0 additions & 4 deletions ray_on_golem/server/services/reputation/plugins/__init__.py

This file was deleted.

4 changes: 2 additions & 2 deletions ray_on_golem/server/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,11 +162,11 @@ def get_logging_config(datadir: Optional[Path] = None):
def get_reputation_db_config(datadir: Optional[Path] = None):
db_dir = get_datadir(datadir) / "db"
db_dir.mkdir(parents=True, exist_ok=True)
migrations_dir = Path(__file__).parent / "services" / "reputation" / "migrations"
migrations_dir = Path(__file__).parent.parent / "reputation" / "migrations"

db_file = db_dir / "reputation.sqlite3"

models_path = "ray_on_golem.server.services.reputation.models"
models_path = "ray_on_golem.reputation.models"

tortoise_config = {
"connections": {
Expand Down

0 comments on commit dc7dce7

Please sign in to comment.