aboutsummaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/roles/moon/files/get_deb_depends.py
diff options
context:
space:
mode:
Diffstat (limited to 'deploy/adapters/ansible/roles/moon/files/get_deb_depends.py')
-rw-r--r--deploy/adapters/ansible/roles/moon/files/get_deb_depends.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/deploy/adapters/ansible/roles/moon/files/get_deb_depends.py b/deploy/adapters/ansible/roles/moon/files/get_deb_depends.py
new file mode 100644
index 00000000..d510bcf4
--- /dev/null
+++ b/deploy/adapters/ansible/roles/moon/files/get_deb_depends.py
@@ -0,0 +1,27 @@
+#!/usr/bin/env python3
+
+import sys
+import subprocess
+
+pkts = []
+
+for arg in sys.argv[1:]:
+ proc = subprocess.Popen(["dpkg-deb",
+ "--info",
+ arg],
+ stdin=None,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ out = proc.stdout.read()
+ err = proc.stderr.read()
+ if err:
+ print("An error occurred with {} ({})".format(arg, err))
+ continue
+ for line in out.splitlines():
+ line = line.decode('utf-8')
+ if " Depends:" in line:
+ line = line.replace(" Depends:", "")
+ for _dep in line.split(','):
+ pkts.append(_dep.split()[0])
+
+print(" ".join(pkts))