rpm_deployment_filename fails when run against BusyBox rpm implementation

The BusyBox (ie, baserock-14-22) implementation of rpm does not support '--queryformat' causing rpm_deployment_filename to fail.

`root@e7450-image(baserock-14-22):/src/ybd$ rpm BusyBox v1.23.1 () multi-call binary.

Usage: rpm -i PACKAGE.rpm; rpm -qp[ildc] PACKAGE.rpm

Manipulate RPM packages

Commands: -i Install package -qp Query package -qpi Show information -qpl List contents -qpd List documents -qpc List config files `

A potential workaround is to manually format the name on failure:

def rpm_deployment_filename(dn, rpmpath): # Reads rpm's headers to construct its filename. out = "" qf = '--queryformat=%{name}-%{version}-%{release}.%{arch}.rpm' try: with open(os.devnull, 'w') as fnull: out = subprocess.check_output(['rpm', '-q', '-p', rpmpath, qf], stderr=fnull) except subprocess.CalledProcessError: out = "" if not out: with open(os.devnull, 'w') as fnull: out = subprocess.check_output(['rpm', '-qp', rpmpath], stderr=fnull) if not out: app.log(dn, "ERROR: Failed to generate name from %s headers" % rpmpath) sys.exit(1) app.log(dn, "Formatting rpm name %s" % out) out = out.rstrip() + "." + platform.machine() + ".rpm" return out