Skip to content

Commit 1bef0da

Browse files
authored
import_db: set dependency.is_in_repo to false (#10504)
1 parent 284d83f commit 1bef0da

File tree

3 files changed

+20
-4
lines changed

3 files changed

+20
-4
lines changed

dvc/dependency/db.py

+6-2
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ def __init__(self, stage: "Stage", info: dict[str, Any], *args, **kwargs):
4444
self.def_path = None # type: ignore[assignment]
4545
self.info = info or {}
4646

47+
@property
48+
def is_in_repo(self):
49+
return False
50+
4751

4852
class DbDependency(AbstractDependency):
4953
PARAM_CONNECTION = "connection"
@@ -70,8 +74,8 @@ def sql(self) -> Optional[str]:
7074
return self.db_info.get(self.PARAM_QUERY) or self.db_info.get(self.PARAM_TABLE)
7175

7276
def __repr__(self):
73-
return "{}:{}".format(
74-
self.__class__.__name__, "".join(f"{k}=={v}" for k, v in self.info.items())
77+
return "{}: {}".format(
78+
self.__class__.__name__, "".join(f"{k}={v}" for k, v in self.info.items())
7579
)
7680

7781
def __str__(self):

dvc/repo/experiments/serialize.py

+10-2
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,12 @@ def from_repo(
5050
Params, metrics, deps, outs are filled via repo fs/index, all other fields
5151
should be passed via kwargs.
5252
"""
53-
from dvc.dependency import ParamsDependency, RepoDependency
53+
from dvc.dependency import (
54+
DatasetDependency,
55+
DbDependency,
56+
ParamsDependency,
57+
RepoDependency,
58+
)
5459

5560
rev = rev or repo.get_rev()
5661
assert rev
@@ -68,7 +73,10 @@ def from_repo(
6873
nfiles=dep.meta.nfiles if dep.meta else None,
6974
)
7075
for dep in repo.index.deps
71-
if not isinstance(dep, (ParamsDependency, RepoDependency))
76+
if not isinstance(
77+
dep,
78+
(ParamsDependency, RepoDependency, DatasetDependency, DbDependency),
79+
)
7280
},
7381
outs={
7482
relpath(out.fs_path, repo.root_dir): ExpOut(

dvc/stage/run.py

+4
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,11 @@ def cmd_run(stage, dry=False, run_env=None):
154154

155155

156156
def _pull_missing_deps(stage):
157+
from dvc.dependency import DatasetDependency, DbDependency
158+
157159
for dep in stage.deps:
160+
if isinstance(dep, (DatasetDependency, DbDependency)):
161+
continue
158162
if not dep.exists:
159163
stage.repo.pull(dep.def_path)
160164

0 commit comments

Comments
 (0)