From b2615548189d47bbef64e296957efa12d9ae0678 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Sat, 11 Aug 2018 01:01:15 +0300 Subject: [PATCH] dvc: remote: format "No Remote repository" error Fixes #988 Signed-off-by: Ruslan Kuprieiev --- dvc/data_cloud.py | 18 ++++++++++++------ dvc/project.py | 3 ++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/dvc/data_cloud.py b/dvc/data_cloud.py index ccf83de02..771c6a3e9 100644 --- a/dvc/data_cloud.py +++ b/dvc/data_cloud.py @@ -83,15 +83,18 @@ class DataCloud(object): cloud = cloud_type(self.project, cloud_config) return cloud - def _get_cloud(self, remote): + def _get_cloud(self, remote, cmd): if remote: return self._init_remote(remote) if self._cloud: return self._cloud - msg = "No remote repository specified. Setup default repository " \ - "with 'dvc config core.remote ' or use '-r '." + msg = "No remote repository specified. Setup default " \ + "repository with\n"\ + " dvc config core.remote \n" \ + "or use:\n" \ + " dvc {} -r ".format(cmd) raise ConfigError(msg) def push(self, targets, jobs=1, remote=None, show_checksums=False): @@ -100,7 +103,8 @@ class DataCloud(object): """ return self.project.cache.local.push(targets, jobs=jobs, - remote=self._get_cloud(remote), + remote=self._get_cloud(remote, + 'push'), show_checksums=show_checksums) def pull(self, targets, jobs=1, remote=None, show_checksums=False): @@ -109,14 +113,16 @@ class DataCloud(object): """ return self.project.cache.local.pull(targets, jobs=jobs, - remote=self._get_cloud(remote), + remote=self._get_cloud(remote, + 'pull'), show_checksums=show_checksums) def status(self, targets, jobs=1, remote=None, show_checksums=False): """ Check status of data items in a cloud-agnostic way. """ + cloud = self._get_cloud(remote, 'status') return self.project.cache.local.status(targets, jobs=jobs, - remote=self._get_cloud(remote), + remote=cloud, show_checksums=show_checksums) diff --git a/dvc/project.py b/dvc/project.py index 02d833df0..590f9a227 100644 --- a/dvc/project.py +++ b/dvc/project.py @@ -383,7 +383,8 @@ class Project(object): self._do_gc('azure', self.cache.azure.gc, clist) if cloud: - self._do_gc('remote', self.cloud._get_cloud(remote).gc, clist) + self._do_gc('remote', self.cloud._get_cloud(remote, + 'gc -c').gc, clist) def push(self, target=None,