summaryrefslogtreecommitdiff
path: root/apply/status_cmd.py
diff options
context:
space:
mode:
Diffstat (limited to 'apply/status_cmd.py')
-rw-r--r--apply/status_cmd.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/apply/status_cmd.py b/apply/status_cmd.py
new file mode 100644
index 0000000..514252b
--- /dev/null
+++ b/apply/status_cmd.py
@@ -0,0 +1,24 @@
+import argparse
+from .state import StateFile, FileState
+from pathlib import Path
+from tabulate import tabulate
+
+
+def cmd_args(_: argparse.ArgumentParser):
+ pass
+
+
+def cmd_func(args, config):
+ state = StateFile(args.apply_dir)
+ rows = []
+ for link in state.links:
+ st = FileState.check_location(Path(link))
+ rows.append((link, st.check_string(Path.cwd())))
+
+ print(tabulate(rows, headers=["Link", "Status"]), "\n")
+
+ rows = state.dirs.items()
+ print(tabulate(rows, headers=["Directory", "Owned by"]))
+
+
+cmd_help = "Check status on owned links"