]> us-delaporte.pagekite.me Git - dotfiles.git/blobdiff - files/ts/tasks.py
Update dashboard
[dotfiles.git] / files / ts / tasks.py
index 7818213a6c8c2f5fd25282819889f5aa3a0aed4c..d51d8ed98ed404c31cc463f6b2a8a535b8d4520b 100644 (file)
@@ -14,7 +14,8 @@ YEAR = dt.now().strftime('%Y')
 JOURNAL = f"{HOME}/Journal/{YEAR}"
 
 SECDEV_LIMITED=os.environ.get('SECDEV_LIMITED')
-
+SECDEV_MESSAGE_TEMPLATES=os.environ.get('SECDEV_MESSAGE_TEMPLATES')
+BOX_EPICS=os.environ.get('BOX_EPICS')
 
 # Helper functions for a consistent experience
 
@@ -24,11 +25,11 @@ def journal(c):
 
 
 def browse(c, url):
-    c.run(f"firefox {url}")
+    c.run(f"firefox {url}", asynchronous=True)
 
 
 def code(c, path):
-    c.run(f"codium {path}")
+    c.run(f"codium {path}", asynchronous=True)
 
 
 def folder(c, path):
@@ -42,10 +43,19 @@ def debug(c):
     print(result.ok)
 
 
+@task()
+def dash(c):
+    c.run('wtfutil')
+
+@task
+def calendar_week(c):
+    browse(c, "https://outlook.office.com/calendar/view/week")
+
+
 @task
 def vasl(c):
     '''Submit time off'''
-    c.run(f"firefox https://my.techservices.illinois.edu/vacation/submitdays.asp")
+    browse(c, "https://my.techservices.illinois.edu/vacation/submitdays.asp")
     browse(c, "https://outlook.office.com/calendar/view/week")
 
 
@@ -61,11 +71,20 @@ def daily(c):
     code(c, f'{JOURNAL}/{MONTH}-daily.md')
 
 
-@task(daily)
+
+@task()
+def in_progress(c):
+    '''Show in progress items on the Kan-Ban board'''
+    browse(c, 'https://github.com/orgs/techservicesillinois/projects/10/views/11')
+
+
+@task(daily, in_progress)
 def status(c):
     '''Check on status of priorities'''
+    browse(c, BOX_EPICS)
+    dash(c)
+    pass
 
-    browse(c, 'https://github.com/orgs/techservicesillinois/projects/10/views/11')
 
 
 @task
@@ -88,13 +107,50 @@ def retro(c):
     browse(c, 'https://github.com/orgs/techservicesillinois/projects/10/views/5')
 
     # Shared folder for archiving Retro notes
-    browse(c, f'{SECDEV_LIMITED}')
-
+    browse(c, SECDEV_LIMITED)
 
 
 @task(journal)
+def engagements_ods(c):
+    '''For recording engagements'''
+    c.run(f'soffice {JOURNAL}/Data/engagements.ods', asynchronous=True)
+    # TODO: Launch Jupyter container on this folder as well
+
+@task
+def gather_data(c):
+    raise NotImplementedError()
+    # TODO: Add GH command to gather latest data files.
+
+
+@task(engagements_ods)
 def wins(c):
     '''For recording team wins'''
     code(c, f'{JOURNAL}/{YEAR}-Wins.md')
 
+@task
+def co_authors(c):
+    browse(c, 'https://github.com/orgs/techservicesillinois/projects/10?pane=info')
+
+@task
+def limited(c):
+    browse(c, SECDEV_LIMITED)
+
+@task(engagements_ods, calendar_week)
+def engage(c):
+    # Cybersecrity Development Message Templates
+    browse(c, SECDEV_MESSAGE_TEMPLATES)
+
+
+@task
+def juice_shop(c):
+    '''Run a copy of intentionally vulnerable OWASP Juice Shop web app, for demonstrations'''
+    c.run('podman run -d -p 3000:3000 bkimminich/juice-shop', asynchronous=True)
+    print('Visit localhost:3000 for juice shop.')
+
+
+@task
+def bookmarks(c):
+    code(c, f'{JOURNAL}/bookmarks.md')
+
+