Skip to content

Commit 94aacb1

Browse files
committed
Collect dpkg and rpm source information
This commit adds scripts in base.yml to collect source package names and versions for dpkg and rpm package managers. Resolves #1083 Signed-off-by: Rose Judge <[email protected]>
1 parent 5b4bbde commit 94aacb1

File tree

1 file changed

+30
-0
lines changed
  • tern/analyze/default/command_lib

1 file changed

+30
-0
lines changed

tern/analyze/default/command_lib/base.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,20 @@ dpkg:
8888
container:
8989
- "dpkg-query -W -f '${Version}\n'"
9090
delimiter: "\n"
91+
source_names:
92+
invoke:
93+
1:
94+
container:
95+
- "pkgs=`dpkg-query -W -f '${Package}\n'`"
96+
- "for p in $pkgs; do dpkg-query -f '${{source:Package}}\n' -W $p; done"
97+
delimiter: "\n"
98+
source_versions:
99+
invoke:
100+
1:
101+
container:
102+
- "pkgs=`dpkg-query -W -f '${Package}\n'`"
103+
- "for p in $pkgs; do dpkg-query -f '${{source:Version}}\n' -W $p; done"
104+
delimiter: "\n"
91105
copyrights:
92106
invoke:
93107
1:
@@ -229,6 +243,22 @@ rpm:
229243
container:
230244
- 'rpm --query --all --queryformat "%{license}\n" 2>/dev/null'
231245
delimiter: "\n"
246+
source_names:
247+
invoke:
248+
1:
249+
container:
250+
- "pkgs=`rpm --query --all --queryformat \"%{name}\n\" 2>/dev/null`"
251+
- |
252+
for p in $pkgs; do rpm -q --qf "%{SOURCERPM}\n" "$p" | sed 's/-[0-9].*\.src\.rpm$//'; done
253+
delimiter: "\n"
254+
source_versions:
255+
invoke:
256+
1:
257+
container:
258+
- "pkgs=`rpm --query --all --queryformat \"%{name}\n\" 2>/dev/null`"
259+
- |
260+
for p in $pkgs; do srcrpm="$(rpm -q --qf "%{SOURCERPM}\n" "$p")"; name="$( echo "${srcrpm}" | sed 's/-[0-9].*\.src\.rpm$//' )";version="$( echo "${srcrpm}" | sed "s/^${name}-\(.*\)\..*\.src\.rpm\$/\1/" )";echo "${version}"; done
261+
delimiter: "\n"
232262
files:
233263
invoke:
234264
1:

0 commit comments

Comments
 (0)