Skip to content
This repository was archived by the owner on Aug 11, 2020. It is now read-only.

Commit 75644bc

Browse files
committed
Merge remote-tracking branch 'origin/development' into PS-9877-upload-workspace
# Conflicts: # paperspace/commands/experiments.py # paperspace/commands/machines.py # setup.py
2 parents 04295c1 + e640ebe commit 75644bc

File tree

16 files changed

+131
-109
lines changed

16 files changed

+131
-109
lines changed

Pipfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ six = "*"
1515
gradient-statsd = "*"
1616
click = "*"
1717
terminaltables = "*"
18+
click-didyoumean = "*"
19+
click-help-colors = "*"
1820

1921

2022
[dev-packages]

Pipfile.lock

Lines changed: 22 additions & 60 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

paperspace/cli/cli.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import click
55

66
from paperspace import constants, client, config
7+
from paperspace.cli import common
78
from paperspace.cli.common import api_key_option, del_if_value_is_none
89
from paperspace.cli.jobs import jobs_group
910
from paperspace.cli.models import models_group
@@ -21,22 +22,22 @@
2122
)
2223

2324

24-
@click.group()
25+
@click.group(cls=common.ClickGroup, **config.HELP_COLORS_DICT)
2526
def cli():
2627
pass
2728

2829

29-
@cli.group("experiments", help="Manage experiments")
30+
@cli.group("experiments", help="Manage experiments", cls=common.ClickGroup)
3031
def experiments():
3132
pass
3233

3334

34-
@experiments.group("create", help="Create new experiment")
35+
@experiments.group("create", help="Create new experiment", cls=common.ClickGroup)
3536
def create_experiment():
3637
pass
3738

3839

39-
@experiments.group(name="createAndStart", help="Create and start new experiment")
40+
@experiments.group(name="createAndStart", help="Create and start new experiment", cls=common.ClickGroup)
4041
def create_and_start_experiment():
4142
pass
4243

@@ -339,7 +340,7 @@ def get_experiment_details(experiment_handle, api_key):
339340
)
340341

341342

342-
@cli.group("deployments", help="Manage deployments")
343+
@cli.group("deployments", help="Manage deployments", cls=common.ClickGroup)
343344
def deployments():
344345
pass
345346

@@ -508,7 +509,7 @@ def delete_deployment(id_, api_key=None):
508509
)
509510

510511

511-
@cli.group("machines", help="Manage machines")
512+
@cli.group("machines", help="Manage machines", cls=common.ClickGroup)
512513
def machines_group():
513514
pass
514515

@@ -1077,3 +1078,6 @@ def version():
10771078
cli.add_command(jobs_group)
10781079
cli.add_command(projects_group)
10791080
cli.add_command(models_group)
1081+
1082+
if __name__ == '__main__':
1083+
cli()

paperspace/cli/common.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
import click
2+
from click_didyoumean import DYMMixin
3+
from click_help_colors import HelpColorsGroup
24

35
api_key_option = click.option(
46
"--apiKey",
@@ -11,4 +13,8 @@ def del_if_value_is_none(dict_):
1113
"""Remove all elements with value == None"""
1214
for key, val in list(dict_.items()):
1315
if val is None:
14-
del dict_[key]
16+
del dict_[key]
17+
18+
19+
class ClickGroup(DYMMixin, HelpColorsGroup):
20+
pass

paperspace/cli/jobs.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from paperspace.commands import jobs as jobs_commands
66

77

8-
@click.group("jobs", help="Manage gradient jobs")
8+
@click.group("jobs", help="Manage gradient jobs", cls=common.ClickGroup)
99
def jobs_group():
1010
pass
1111

paperspace/cli/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from paperspace.commands import models as models_commands
66

77

8-
@click.group("models", help="Manage models")
8+
@click.group("models", help="Manage models", cls=common.ClickGroup)
99
def models_group():
1010
pass
1111

paperspace/cli/projects.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
from . import common
66

77

8-
@click.group("projects", help="Manage projects")
8+
@click.group("projects", help="Manage projects", cls=common.ClickGroup)
99
def projects_group():
1010
pass
1111

paperspace/commands/deployments.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def _log_message(self, response, success_msg_template, error_msg):
1919
j = response.json()
2020
handle = j["deployment"]
2121
except (ValueError, KeyError):
22-
self.logger.log(success_msg_template)
22+
self.logger.error(success_msg_template)
2323
else:
2424
msg = success_msg_template.format(**handle)
2525
self.logger.log(msg)
@@ -28,7 +28,7 @@ def _log_message(self, response, success_msg_template, error_msg):
2828
data = response.json()
2929
self.logger.log_error_response(data)
3030
except ValueError:
31-
self.logger.log(error_msg)
31+
self.logger.error(error_msg)
3232

3333

3434
class CreateDeploymentCommand(_DeploymentCommandBase):
@@ -51,7 +51,7 @@ def execute(self, filters=None):
5151
return
5252
deployments = self._get_deployments_list(response)
5353
except (ValueError, KeyError) as e:
54-
self.logger.log("Error while parsing response data: {}".format(e))
54+
self.logger.error("Error while parsing response data: {}".format(e))
5555
else:
5656
self._log_deployments_list(deployments)
5757

@@ -74,7 +74,7 @@ def _get_deployments_list(response):
7474

7575
def _log_deployments_list(self, deployments):
7676
if not deployments:
77-
self.logger.log("No deployments found")
77+
self.logger.warning("No deployments found")
7878
else:
7979
table_str = self._make_deployments_list_table(deployments)
8080
if len(table_str.splitlines()) > get_terminal_lines():

paperspace/commands/experiments.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ def _log_create_experiment(self, response, success_msg_template, error_msg):
3333
data = response.json()
3434
self.logger.log_error_response(data)
3535
except ValueError:
36-
self.logger.log(error_msg)
36+
self.logger.error(error_msg)
3737

3838

3939
class CreateExperimentCommand(ExperimentCommand):
@@ -186,7 +186,7 @@ def execute(self, project_handles=None):
186186
try:
187187
experiments = self._get_experiments_list(response, bool(project_handles))
188188
except (ValueError, KeyError) as e:
189-
self.logger.log("Error while parsing response data: {}".format(e))
189+
self.logger.error("Error while parsing response data: {}".format(e))
190190
else:
191191
self._log_experiments_list(experiments)
192192

@@ -229,7 +229,7 @@ def _get_experiments_list(response, filtered=False):
229229

230230
def _log_experiments_list(self, experiments):
231231
if not experiments:
232-
self.logger.log("No experiments found")
232+
self.logger.warning("No experiments found")
233233
else:
234234
table_str = self._make_experiments_list_table(experiments)
235235
if len(table_str.splitlines()) > get_terminal_lines():
@@ -298,7 +298,6 @@ def get_experiment_details(experiment_handle, api=experiments_api):
298298
experiment = response.json()["data"]
299299
details = _make_details_table(experiment)
300300
except (ValueError, KeyError) as e:
301-
logger.log("Error parsing response data")
302-
logger.debug(e)
301+
logger.error("Error parsing response data")
303302

304303
log_response(response, details, "Unknown error while retrieving details of the experiment")

paperspace/commands/jobs.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ def _log_message(self, response, success_msg_template, error_msg):
2121
data = response.json()
2222
self.logger.log_error_response(data)
2323
except ValueError:
24-
self.logger.log(error_msg)
24+
self.logger.error(error_msg)
2525

2626

2727
class DeleteJobCommand(JobsCommandBase):
@@ -53,13 +53,13 @@ def execute(self, filters=None):
5353
self.logger.log_error_response(data)
5454
return
5555
except (ValueError, KeyError) as e:
56-
self.logger.log("Error while parsing response data: {}".format(e))
56+
self.logger.error("Error while parsing response data: {}".format(e))
5757
else:
5858
self._log_jobs_list(data)
5959

6060
def _log_jobs_list(self, data):
6161
if not data:
62-
self.logger.log("No jobs found")
62+
self.logger.warning("No jobs found")
6363
else:
6464
table_str = self._make_table(data)
6565
if len(table_str.splitlines()) > get_terminal_lines():

0 commit comments

Comments
 (0)