|
@@ -1,3 +1,4 @@
|
|
|
+from datetime import datetime
|
|
|
from invoke import task
|
|
|
|
|
|
@task
|
|
@@ -17,3 +18,15 @@ def run(c, port=8080, host='127.0.0.1'):
|
|
|
def install(c):
|
|
|
'''Install the listed dependencies into a virtualenv'''
|
|
|
c.run('poetry install')
|
|
|
+
|
|
|
+@task
|
|
|
+def fmt(c):
|
|
|
+ status = c.run('git status --porcelain', hide='stdout')
|
|
|
+ is_clean = status.stdout.strip() == ''
|
|
|
+ c.run("poetry run black $(find . -name '*.py')")
|
|
|
+
|
|
|
+ if is_clean:
|
|
|
+ date = datetime.now.isoformat()
|
|
|
+ c.run(f"git commit -a -m 'Automatic formatting commit: {date}'")
|
|
|
+ else:
|
|
|
+ print('Uncommitted change exist; skipping commit')
|