Cannot non-root build on Ubuntu 14.04 and 16.04 due to the need use
proc = salt.utils.vt.Terminal
in order to use reprepro and debsign, and internally this is causing pool files to have owner root, for example:
oot@ip-10-27-37-59:/srv/ubuntu/2018.3.3/pkgs/py2/ubuntu1604/amd64# l pool/main/i/ioflo/
total 388K
-rw-r--r-- 1 ubuntu ubuntu 161K Dec 3 18:28 python-ioflo_1.5.0-1_all.deb
drwxr-xr-x 3 ubuntu ubuntu 4.0K Dec 3 18:28 ..
-rw-r--r-- 1 root root 1.4K Dec 3 18:29 ioflo_1.5.0-1.dsc
-rw-r--r-- 1 root root 207K Dec 3 18:29 ioflo_1.5.0.orig.tar.gz
-rw-r--r-- 1 root root 960 Dec 3 18:29 ioflo_1.5.0-1.debian.tar.xz
drwxr-xr-x 2 ubuntu ubuntu 4.0K Dec 3 18:29 .
This is not an issue with Ubuntu 18.04 (or on Debian 8 & 9) where the following command cmd.retcode can also be used:
Quickest fix is to just continue to use root to build on Ubuntu, noting that it was only Debian 9 (at this time) which needed non-root to use gpg-agent for signing, etc.
Cannot non-root build on Ubuntu 14.04 and 16.04 due to the need use proc = salt.utils.vt.Terminal
in order to use reprepro and debsign, and internally this is causing pool files to have owner root, for example: oot@ip-10-27-37-59:/srv/ubuntu/2018.3.3/pkgs/py2/ubuntu1604/amd64# l pool/main/i/ioflo/ total 388K -rw-r--r-- 1 ubuntu ubuntu 161K Dec 3 18:28 python-ioflo_1.5.0-1_all.deb drwxr-xr-x 3 ubuntu ubuntu 4.0K Dec 3 18:28 .. -rw-r--r-- 1 root root 1.4K Dec 3 18:29 ioflo_1.5.0-1.dsc -rw-r--r-- 1 root root 207K Dec 3 18:29 ioflo_1.5.0.orig.tar.gz -rw-r--r-- 1 root root 960 Dec 3 18:29 ioflo_1.5.0-1.debian.tar.xz drwxr-xr-x 2 ubuntu ubuntu 4.0K Dec 3 18:29 .
This is not an issue with Ubuntu 18.04 (or on Debian 8 & 9) where the following command cmd.retcode can also be used:
935 if grains['os'] in ['Debian']: 936 log.debug("DGM make_repo debian gpg2 reprepro cmd \'{0}\'".format(cmd)) 937 retrc |= salt['cmd.retcode'](cmd, runas=runas, cwd=repodir, use_vt=True, env=env) 938 else: 939 log.debug("DGM make_repo ubuntu gpg2 reprepro cmd \'{0}\'".format(cmd)) 940 try: 941 proc = salt.utils.vt.Terminal(
Quickest fix is to just continue to use root to build on Ubuntu, noting that it was only Debian 9 (at this time) which needed non-root to use gpg-agent for signing, etc.