Skip to content

Commit 9a6d109

Browse files
author
Ravipudi Sai Rajendra Prasad
authored
Merge pull request #92 from deep-compute/update_travis_via_gitkanban
updated the code and travis file with black formatter
2 parents 2583fc3 + 4400f00 commit 9a6d109

6 files changed

Lines changed: 186 additions & 155 deletions

File tree

.travis.yml

Lines changed: 28 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,3 @@
1-
language: python
2-
python:
3-
- '2.7'
4-
install:
5-
- pip install .
6-
- pip install unittest2
7-
script:
8-
- echo "No tests"
91
before_deploy:
102
- wget https://github.com/jgm/pandoc/releases/download/1.19.1/pandoc-1.19.1-1-amd64.deb
113
-O $TRAVIS_BUILD_DIR/pandoc.deb
@@ -18,37 +10,44 @@ deploy:
1810
api_key:
1911
secure: siQVd277FRApq4RSiq3149zA+2OcPVu7wmh0Qv/U5AUBTJRv4sKP9VV8lKLjgKmmFUsq2lxxe+ENPk66jD0OSp4ZBHTdVAI2k3W9xeuUO/b8ol+peXt78uOnuNIdNyrJPuQYcPVhzKaeUh5lBmLGQrOCJi10foPJK6r2zkvMAB6jvvYhczE/KWCpBKLmC1YI2fwlqUWPeO6agLDnZ3XhHxJaKkTwcBAmQ50qWaUaMf/E8TMfz7L+cGedVBaR1ml6+Te1NN5uw09y/RaEb9UVYREz4zgYz5dhevmXiX8OG9pSxwJApIsejF47LYI2xoIjhaeysf1RpsYurbz3BFUHT9cVaP3BkBNiDRenPrhhyAPe+U/Xv5N9CWn9t7rKB/0gncBx+GyVgAKu5EkyHuGWhOA5knMWaUAB057w5hKBBKReYclrtNlPUWYjAE/s3vTaUSuUej1bCRr9y1noIiMxwGeYTwGfc3TFoMJVFVM6SBN7E22l5PHISqcjBch2/dtCsaHHdxi5PIxb61UPSREQ6c6hzIfu2gWrKpLuDFs8z78xxGUrG4peIRr3jZ6MUhi0Fw1LFFkKSvtXe3HQ2sdzMy7G91gj5hajtPXJ+ZWV6xvS5FU/Vh2bZroJvhnOJM9OV+qjI596OZ19E6XfA3BwHwS+cFG7jLD2+e8fFSe/Hz0=
2012
file:
21-
- LICENSE
22-
- README.md
23-
- setup.py
24-
- basescript/basescript.py
25-
- basescript/__init__.py
26-
- basescript/log.py
27-
- basescript/utils.py
28-
- examples/adder.py
29-
- examples/helloworld.py
13+
- LICENSE
14+
- README.md
15+
- setup.py
16+
- basescript/basescript.py
17+
- basescript/__init__.py
18+
- basescript/log.py
19+
- basescript/utils.py
20+
- examples/adder.py
21+
- examples/helloworld.py
3022
name: basescript-0.3.1
3123
tag_name: 0.3.1
32-
on:
24+
true:
3325
repo: deep-compute/basescript
3426
- provider: pypi
35-
distributions: "sdist bdist_wheel"
27+
distributions: sdist bdist_wheel
3628
server: https://test.pypi.org/legacy/
3729
skip_cleanup: true
38-
user: "deepcompute"
30+
user: deepcompute
3931
password:
40-
secure: "fkHbFReSrTMDhMP1T26rlk0jVwmWyz8AkJqjThLWd0JBzxpAzLpeDCweCFuJk9hk1bnVnbJN/SgRBcRyYDkGCrarEtu3WkesGnIaqFKbMnu5Zwytex3ghPDK4ZK6+GVYSyljbYJUYXDZLMRoumiMOm7IHGVZ8soA02XNy7lBe36o5Dj3QfpRGUZLb2/nbMWIBvltecuhMk66yWKkSlwy0RjsOTn9XwjtTr5hGC6XD9kdC6NUeK6eSmdU/pa6DyOVSoKXEBims100g4gfOck5P8gXq8ssGVnWDkU9pvTKz085ayeepVDMygI5xug1U2zM3dTvTsRnsjr3B4FsAewfc9uh/sfFpr3v2oOIdUARf2sphJEja+0Z606s9DfxFMWHopouG9JDmzPwZBJNhJRIVW93VfODsUPejKtWJd259SfNRioj+ORP4b7wVQVfjvZM5CifDKrlMTBp1adt4bE8C/DepcezwgKLjRiGU0N0ndg7oJ9XcxUppzOwtEAPx0rLymWCz03O2gCXbr5NrtFZ/kbzPpMhDW1cnSW8zTzSQpzpXrqj5la+KIBynIp+EQZdxvM3NOyHFkpswOr1bsaFSmJ96ejrohIUq95FamQI6l8yo8iJiqROTLw6YUbcLa+F8qEP8ZdthPv98uV0ZAddduO9nysWzu2Hit3bXT4dQ3U="
41-
on:
32+
secure: fkHbFReSrTMDhMP1T26rlk0jVwmWyz8AkJqjThLWd0JBzxpAzLpeDCweCFuJk9hk1bnVnbJN/SgRBcRyYDkGCrarEtu3WkesGnIaqFKbMnu5Zwytex3ghPDK4ZK6+GVYSyljbYJUYXDZLMRoumiMOm7IHGVZ8soA02XNy7lBe36o5Dj3QfpRGUZLb2/nbMWIBvltecuhMk66yWKkSlwy0RjsOTn9XwjtTr5hGC6XD9kdC6NUeK6eSmdU/pa6DyOVSoKXEBims100g4gfOck5P8gXq8ssGVnWDkU9pvTKz085ayeepVDMygI5xug1U2zM3dTvTsRnsjr3B4FsAewfc9uh/sfFpr3v2oOIdUARf2sphJEja+0Z606s9DfxFMWHopouG9JDmzPwZBJNhJRIVW93VfODsUPejKtWJd259SfNRioj+ORP4b7wVQVfjvZM5CifDKrlMTBp1adt4bE8C/DepcezwgKLjRiGU0N0ndg7oJ9XcxUppzOwtEAPx0rLymWCz03O2gCXbr5NrtFZ/kbzPpMhDW1cnSW8zTzSQpzpXrqj5la+KIBynIp+EQZdxvM3NOyHFkpswOr1bsaFSmJ96ejrohIUq95FamQI6l8yo8iJiqROTLw6YUbcLa+F8qEP8ZdthPv98uV0ZAddduO9nysWzu2Hit3bXT4dQ3U=
33+
true:
4234
branch: master
4335
tags: false
44-
# pypi
4536
- provider: pypi
46-
distributions: "sdist bdist_wheel"
37+
distributions: sdist bdist_wheel
4738
skip_cleanup: true
48-
user: "deepcompute"
49-
password:
50-
secure: "fkHbFReSrTMDhMP1T26rlk0jVwmWyz8AkJqjThLWd0JBzxpAzLpeDCweCFuJk9hk1bnVnbJN/SgRBcRyYDkGCrarEtu3WkesGnIaqFKbMnu5Zwytex3ghPDK4ZK6+GVYSyljbYJUYXDZLMRoumiMOm7IHGVZ8soA02XNy7lBe36o5Dj3QfpRGUZLb2/nbMWIBvltecuhMk66yWKkSlwy0RjsOTn9XwjtTr5hGC6XD9kdC6NUeK6eSmdU/pa6DyOVSoKXEBims100g4gfOck5P8gXq8ssGVnWDkU9pvTKz085ayeepVDMygI5xug1U2zM3dTvTsRnsjr3B4FsAewfc9uh/sfFpr3v2oOIdUARf2sphJEja+0Z606s9DfxFMWHopouG9JDmzPwZBJNhJRIVW93VfODsUPejKtWJd259SfNRioj+ORP4b7wVQVfjvZM5CifDKrlMTBp1adt4bE8C/DepcezwgKLjRiGU0N0ndg7oJ9XcxUppzOwtEAPx0rLymWCz03O2gCXbr5NrtFZ/kbzPpMhDW1cnSW8zTzSQpzpXrqj5la+KIBynIp+EQZdxvM3NOyHFkpswOr1bsaFSmJ96ejrohIUq95FamQI6l8yo8iJiqROTLw6YUbcLa+F8qEP8ZdthPv98uV0ZAddduO9nysWzu2Hit3bXT4dQ3U="
51-
on:
39+
user: deepcompute
40+
password:
41+
secure: fkHbFReSrTMDhMP1T26rlk0jVwmWyz8AkJqjThLWd0JBzxpAzLpeDCweCFuJk9hk1bnVnbJN/SgRBcRyYDkGCrarEtu3WkesGnIaqFKbMnu5Zwytex3ghPDK4ZK6+GVYSyljbYJUYXDZLMRoumiMOm7IHGVZ8soA02XNy7lBe36o5Dj3QfpRGUZLb2/nbMWIBvltecuhMk66yWKkSlwy0RjsOTn9XwjtTr5hGC6XD9kdC6NUeK6eSmdU/pa6DyOVSoKXEBims100g4gfOck5P8gXq8ssGVnWDkU9pvTKz085ayeepVDMygI5xug1U2zM3dTvTsRnsjr3B4FsAewfc9uh/sfFpr3v2oOIdUARf2sphJEja+0Z606s9DfxFMWHopouG9JDmzPwZBJNhJRIVW93VfODsUPejKtWJd259SfNRioj+ORP4b7wVQVfjvZM5CifDKrlMTBp1adt4bE8C/DepcezwgKLjRiGU0N0ndg7oJ9XcxUppzOwtEAPx0rLymWCz03O2gCXbr5NrtFZ/kbzPpMhDW1cnSW8zTzSQpzpXrqj5la+KIBynIp+EQZdxvM3NOyHFkpswOr1bsaFSmJ96ejrohIUq95FamQI6l8yo8iJiqROTLw6YUbcLa+F8qEP8ZdthPv98uV0ZAddduO9nysWzu2Hit3bXT4dQ3U=
42+
true:
5243
branch: master
53-
# only when there is a release it will update pypi
5444
tags: true
45+
install:
46+
- pip install .
47+
- pip install unittest2
48+
language: python
49+
python:
50+
- '2.7'
51+
script:
52+
- docker run -v $(pwd):/app deepcompute/black:python-black-latest --check .
53+
- echo "No tests"

basescript/basescript.py

Lines changed: 57 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,21 @@
77
from .log import init_logger
88
from deeputil import Dummy
99

10+
1011
class BaseScript(object):
11-
DESC = 'Base script abstraction'
12+
DESC = "Base script abstraction"
1213
METRIC_GROUPING_INTERVAL = 1
1314

1415
def __init__(self, args=None):
1516
# argparse parser obj
1617
self.parser = argparse.ArgumentParser(description=self.DESC)
1718
self.define_baseargs(self.parser)
1819

19-
self.subcommands = self.parser.add_subparsers(title='commands')
20-
self.subcommands.dest = 'commands'
20+
self.subcommands = self.parser.add_subparsers(title="commands")
21+
self.subcommands.dest = "commands"
2122
self.subcommands.required = True
2223
self.define_subcommands(self.subcommands)
23-
self.subcommand_run = self.subcommands.add_parser('run')
24+
self.subcommand_run = self.subcommands.add_parser("run")
2425
self.subcommand_run.set_defaults(func=self.run)
2526

2627
self.define_args(self.subcommand_run)
@@ -34,12 +35,12 @@ def __init__(self, args=None):
3435

3536
if self.args.debug:
3637
if self.args.log_level is None:
37-
self.args.log_level = 'debug'
38+
self.args.log_level = "debug"
3839
if self.args.metric_grouping_interval is None:
3940
self.args.metric_grouping_interval = 0
4041

4142
if not self.args.log_level:
42-
self.args.log_level = 'info'
43+
self.args.log_level = "info"
4344
self.args.metric_grouping_interval = self.METRIC_GROUPING_INTERVAL
4445

4546
if self.args.metric_grouping_interval is None:
@@ -52,22 +53,22 @@ def __init__(self, args=None):
5253
fpath=self.args.log_file,
5354
pre_hooks=self.define_log_pre_format_hooks(),
5455
post_hooks=self.define_log_post_format_hooks(),
55-
metric_grouping_interval=self.args.metric_grouping_interval
56+
metric_grouping_interval=self.args.metric_grouping_interval,
5657
)
5758

5859
self._flush_metrics_q = log._force_flush_q
5960
self.log = log.bind(name=self.args.name)
6061

6162
self.stats = Dummy()
6263

63-
args = { n: getattr(self.args, n) for n in vars(self.args) }
64-
args['func'] = self.args.func.__name__
64+
args = {n: getattr(self.args, n) for n in vars(self.args)}
65+
args["func"] = self.args.func.__name__
6566
self.log.debug("basescript init", **args)
6667

6768
def start(self):
68-
'''
69+
"""
6970
Starts execution of the script
70-
'''
71+
"""
7172
# invoke the appropriate sub-command as requested from command-line
7273
try:
7374
self.args.func()
@@ -88,7 +89,7 @@ def start(self):
8889

8990
@property
9091
def name(self):
91-
return '.'.join([x for x in (sys.argv[0].split('.')[0], self.args.name) if x])
92+
return ".".join([x for x in (sys.argv[0].split(".")[0], self.args.name) if x])
9293

9394
def define_log_pre_format_hooks(self):
9495
"""
@@ -110,48 +111,67 @@ def define_log_post_format_hooks(self):
110111
return []
111112

112113
def define_subcommands(self, subcommands):
113-
'''
114+
"""
114115
Define subcommands (as defined at https://docs.python.org/2/library/argparse.html#sub-commands)
115116
116117
eg: adding a sub-command called "blah" that invokes a function fn_blah
117118
118119
blah_command = subcommands.add_parser('blah')
119120
blah_command.set_defaults(func=fn_blah)
120-
'''
121+
"""
121122
pass
122123

123124
def define_baseargs(self, parser):
124-
'''
125+
"""
125126
Define basic command-line arguments required by the script.
126127
@parser is a parser object created using the `argparse` module.
127128
returns: None
128-
'''
129-
parser.add_argument('--name', default=sys.argv[0],
130-
help='Name to identify this instance')
131-
parser.add_argument('--log-level', default=None,
132-
help='Logging level as picked from the logging module')
133-
parser.add_argument('--log-format', default=None,
129+
"""
130+
parser.add_argument(
131+
"--name", default=sys.argv[0], help="Name to identify this instance"
132+
)
133+
parser.add_argument(
134+
"--log-level",
135+
default=None,
136+
help="Logging level as picked from the logging module",
137+
)
138+
parser.add_argument(
139+
"--log-format",
140+
default=None,
134141
# TODO add more formats
135-
choices=("json", "pretty",),
136-
help=("Force the format of the logs. By default, if the "
137-
"command is from a terminal, print colorful logs. "
138-
"Otherwise print json."),
142+
choices=("json", "pretty"),
143+
help=(
144+
"Force the format of the logs. By default, if the "
145+
"command is from a terminal, print colorful logs. "
146+
"Otherwise print json."
147+
),
139148
)
140-
parser.add_argument('--log-file', default=None,
141-
help='Writes logs to log file if specified, default: %(default)s',
149+
parser.add_argument(
150+
"--log-file",
151+
default=None,
152+
help="Writes logs to log file if specified, default: %(default)s",
142153
)
143-
parser.add_argument('--quiet', default=False, action="store_true",
144-
help='if true, does not print logs to stderr, default: %(default)s',
154+
parser.add_argument(
155+
"--quiet",
156+
default=False,
157+
action="store_true",
158+
help="if true, does not print logs to stderr, default: %(default)s",
145159
)
146-
parser.add_argument('--metric-grouping-interval', default=None, type=int,
147-
help='To group metrics based on time interval ex:10 i.e;(10 sec)',
160+
parser.add_argument(
161+
"--metric-grouping-interval",
162+
default=None,
163+
type=int,
164+
help="To group metrics based on time interval ex:10 i.e;(10 sec)",
148165
)
149-
parser.add_argument('--debug', default=False, action="store_true",
150-
help='To run the code in debug mode',
166+
parser.add_argument(
167+
"--debug",
168+
default=False,
169+
action="store_true",
170+
help="To run the code in debug mode",
151171
)
152172

153173
def define_args(self, parser):
154-
'''
174+
"""
155175
Define script specific command-line arguments.
156176
@parser is a parser object created using the `argparse` module.
157177
@@ -160,12 +180,11 @@ def define_args(self, parser):
160180
module.
161181
162182
returns: None
163-
'''
183+
"""
164184
pass
165185

166186
def run(self):
167-
'''
187+
"""
168188
Override this method to define logic for `run` sub-command
169-
'''
189+
"""
170190
pass
171-

0 commit comments

Comments
 (0)