[Simple-cdd-devel] Bug#832898: simple-cdd: problem with check dependency of local repo
Vagrant Cascadian
vagrant at debian.org
Fri Nov 25 22:39:33 UTC 2016
Control: tags 832898 +pending
On 2016-07-29, Lev Borodin wrote:
> After reprepo simple-cdd use debcheck for check package dependency.
>
>
> For example, if we have non-free deb package with dependency of main deb
> package, debcheck says error dependencies.
> Because simple-cdd don't use -bg option.
Thanks for the patch! Applied to git, will include in a future upload:
https://anonscm.debian.org/cgit/collab-maint/simple-cdd.git/commit/?id=a2787130d48155faa6ec945017003ff293fcef24
live well,
vagrant
> build-simple-cdd | 20 ++++++++++++++++----
> simple_cdd/tools/mirror_reprepro.py | 22 ++++++++++++++++++++--
> 2 files changed, 36 insertions(+), 6 deletions(-)
>
> diff --git a/build-simple-cdd b/build-simple-cdd
> index 39c1be2..204eff0 100755
> --- a/build-simple-cdd
> +++ b/build-simple-cdd
> @@ -550,14 +550,26 @@ class SimpleCDD:
> continue
> yield os.path.join(root, wanted_arch)
>
> - for pathname in find_packages_dirs(dists_root, a):
> + packages_dirs = find_packages_dirs(dists_root, a)
> +
> + for pathname in packages_dirs:
> + bg_pkgfile = [os.path.join(i, "Packages.gz") for i in packages_dirs if i != pathname]
> + bg_command = []
> +
> + for file in bg_pkgfile:
> + bg_command.append('--bg')
> + bg_command.append(file)
> +
> + command = [debcheck, "--failures", "--explain"]
> + command.extend(bg_command)
> +
> pkgfile = os.path.join(pathname, "Packages.gz")
> if not os.path.exists(pkgfile): continue
> -
> + command.append(pkgfile)
> output = io.StringIO()
> retval = run_command(
> - "{} {}".format(pkgfile, debcheck),
> - [debcheck, "--failures", "--explain", pkgfile],
> + "distcheck:",
> + command,
> logfd=output
> )
> if retval != 0:
> diff --git a/simple_cdd/tools/mirror_reprepro.py b/simple_cdd/tools/mirror_reprepro.py
> index 6ede389..cdf4b1b 100644
> --- a/simple_cdd/tools/mirror_reprepro.py
> +++ b/simple_cdd/tools/mirror_reprepro.py
> @@ -269,13 +269,31 @@ class ToolMirrorReprepro(ToolShell):
> return
>
> for a in self.env.get("ARCHES"):
> - for component in self.env.get("mirror_components"):
> + mirror_components = self.env.get("mirror_components")
> + for component in mirror_components:
> +
> + bg_pkgfile = [
> + self.env.format(
> + "{MIRROR}/dists/{CODENAME}/{component}/binary-{a}/Packages",
> + component=i, a=a)
> + for i in mirror_components if i != component
> + ]
> +
> + bg_command = []
> + for file in bg_pkgfile:
> + bg_command.append('--bg')
> + bg_command.append(file)
> +
> + command = [debcheck, "--failures", "--explain"]
> + command.extend(bg_command)
> pkgfile = self.env.format(
> "{MIRROR}/dists/{CODENAME}/{component}/binary-{a}/Packages",
> component=component, a=a)
> if os.stat(pkgfile).st_size == 0: continue
> log.info("Checking package file %s using %s", pkgfile, debcheck)
> - proc = subprocess.Popen([debcheck, "--failures", "--explain", pkgfile], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
> + command.append(pkgfile)
> +
> + proc = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
> stdout, stderr = proc.communicate()
> retval = proc.wait()
> if retval != 0:
> --
> 2.7.4
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/simple-cdd-devel/attachments/20161125/a9356746/attachment.sig>
More information about the Simple-cdd-devel
mailing list