On (29/09/15 16:47), Nikolai Kondrashov wrote:
>On 09/29/2015 03:41 PM, Lukas Slebodnik wrote:
>>ehlo,
>>
>>Integration tests are enabled on debian with the last patch.
>
>So we've got more cwrap packages into Debian? Awesome :)! Or were they there
>all the time and I simply failed to notice them?
>
uid-wrapper 1.0.2-1 was in testing since 2014-08-14
nss-wrapper 1.0.3-2 was in testing since 2015-06-05

https://packages.qa.debian.org/u/uid-wrapper.html
https://packages.qa.debian.org/n/nss-wrapper.html

>>I just changed DEPS_INTGCHECK_SATISFIED to true for debian
>>because in future we might introduce new dependencies
>>which will not be in debian (su_wrapper).
>
>Ah, alright.
>
>>The 1st patch is prequisity for the last patch because
>>installation of slapd requires user interaction.
>>The ticket #2433 is finally fixed after 13 months.
>
>Thank you, Lukas.
>
You are welcome

>>If we do not want to introduce new dependency /usr/bin/libtool
>>for debian then there is alternative solution of bug fixed
>>in the 2nd patch. We can run libtool from CWD generated by autotools.
>>In both cases it's a oneliner :-)
>>
>>Here is an alternative version:
>>
>>diff --git a/contrib/ci/run b/contrib/ci/run
>>index 5f668ff..1f64e67 100755
>>--- a/contrib/ci/run
>>+++ b/contrib/ci/run
>>@@ -204,7 +204,7 @@ function build_debug()
>>      CK_FORK=no \
>>          stage make-check-valgrind \
>>                  make-check-wrap -j $CPU_NUM check -- \
>>-                                libtool --mode=execute \
>>+                                ./libtool --mode=execute \
>>                                      valgrind-condense 99 \
>>                                      '!(*.py|*dlopen-tests)' -- \
>>                                      --trace-children=yes \
>
>I like this way a little better, but not enough to argue :)
>
hmm,
I tried it but it failed in cwrap test due to different directory.
I could use full path but nicer solution
is to install missing dependency

=================================================
   sssd 1.13.1: src/tests/cwrap/test-suite.log
=================================================

# TOTAL: 4
# PASS:  0
# SKIP:  0
# XFAIL: 0
# FAIL:  4
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: become_user-tests
=======================

/home/build/sssd/build/test-driver: line 107: ./libtool: No such file or 
directory
FAIL become_user-tests (exit status: 127)

FAIL: server-tests
==================

/home/build/sssd/build/test-driver: line 107: ./libtool: No such file or 
directory
FAIL server-tests (exit status: 127)

FAIL: usertools-tests
=====================

/home/build/sssd/build/test-driver: line 107: ./libtool: No such file or 
directory
FAIL usertools-tests (exit status: 127)

FAIL: responder_common-tests
============================

/home/build/sssd/build/test-driver: line 107: ./libtool: No such file or 
directory
FAIL responder_common-tests (exit status: 127)

>> From 6175bd3f05cbfd5f7d9b26770d9a98012803745c Mon Sep 17 00:00:00 2001
>>From: Lukas Slebodnik<lsleb...@redhat.com>
>>Date: Tue, 29 Sep 2015 11:52:30 +0200
>>Subject: [PATCH 1/3] CI: Don't depend on user input with apt-get
>>
>>Resolves:
>>https://fedorahosted.org/sssd/ticket/2433
>>---
>>  contrib/ci/README.md | 6 ++++++
>>  contrib/ci/distro.sh | 2 ++
>>  2 files changed, 8 insertions(+)
>>
>>diff --git a/contrib/ci/README.md b/contrib/ci/README.md
>>index 
>>6b5f7f30eac8327d5aa45c3bfefd57e8d3109fe0..075bc3e074cb13916619f46c12c6d1a4de0158a2
>> 100644
>>--- a/contrib/ci/README.md
>>+++ b/contrib/ci/README.md
>>@@ -47,6 +47,12 @@ and Debian-based distros:
>>
>>  Where `<USER>` is the user invoking CI.
>>
>>+You might also want to allow to keep environment variable DEBIAN_FRONTEND
>>+on debian. So script can perform an unattended installation of a Debian 
>>package
>>+with apt-get.
>>+    Defaults!/usr/bin/apt-get env_keep += "DEBIAN_FRONTEND
>>+
>>+
>
>The terminating double quote is missing here.
cop&paste problem

>Also, may I suggest simplifying
>the text a little? Like this:
>
>    You may also want to allow passing DEBIAN_FRONTEND environment variable to
>    apt-get on Debian, so CI can request non-interactive package installation:
>
>        Defaults!/usr/bin/apt-get env_keep += "DEBIAN_FRONTEND"
>
Done

>>  On Red Hat distros a repository carrying dependencies missing from some
>>  distros needs to be added to yum configuration. See instructions on the
>>  [Copr project 
>> page](http://copr-fe.cloud.fedoraproject.org/coprs/lslebodn/sssd-deps/).
>>diff --git a/contrib/ci/distro.sh b/contrib/ci/distro.sh
>>index 
>>5416bfff325c4e5d0a10ebea67cba26e20e03fd5..095985ccae81e54bcd79607e455a1c9295aad867
>> 100644
>>--- a/contrib/ci/distro.sh
>>+++ b/contrib/ci/distro.sh
>>@@ -30,6 +30,8 @@ if [ -e /etc/redhat-release ]; then
>>      DISTRO_FAMILY=redhat
>>  elif [ -e /etc/debian_version ]; then
>>      DISTRO_FAMILY=debian
>>+    # Perform an unattended installation of a Debian package with apt-get
>>+    export DEBIAN_FRONTEND=noninteractive
>
>I think a better way will be to pass DEBIAN_FRONTEND explicitly to sudo
>commands and not set it globally. E.g.:
>
>    [ $# != 0 ] && DEBIAN_FRONTEND=noninteractive \
>                    sudo -p "$prompt" apt-get --yes install -- "$@"
>
>We might very well need it for everything eventually, but changing global
>environment implicitly, as part of loading a module ("distro.sh") violates the
>no-surprises rule somewhat, and hurts modularization.
>
It would be a good side effect but it could be a bad precedent.

>>  else
>>      DISTRO_FAMILY=unknown
>>  fi
>>-- 2.5.0
>>
>>
>>0002-CI-Add-missing-dependency-for-debian.patch
>>
>>
>> From 3e0ce9c714d5dc11eaf5ff00792eb06d3b98ff90 Mon Sep 17 00:00:00 2001
>>From: Lukas Slebodnik<lsleb...@redhat.com>
>>Date: Tue, 29 Sep 2015 12:29:51 +0200
>>Subject: [PATCH 2/3] CI: Add missing dependency for debian
>>
>>All test failed due to missing /usr/bin/libtool
>>
>>e.g.
>>/home/build/sssd/build/test-driver: line 107: libtool: command not found
>>FAIL test-io (exit status: 127)
>
>Whoa! When did that start happening?
>
It happens if you run script on machine with minimal dependencies.
libtool-bin could be a dependency of another package in past.

LS
>From 53ff1cca3306d71419c2f185dfc8dbd5438ae735 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lsleb...@redhat.com>
Date: Tue, 29 Sep 2015 11:52:30 +0200
Subject: [PATCH 1/3] CI: Don't depend on user input with apt-get

Resolves:
https://fedorahosted.org/sssd/ticket/2433
---
 contrib/ci/README.md | 5 +++++
 contrib/ci/distro.sh | 3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/contrib/ci/README.md b/contrib/ci/README.md
index 
6b5f7f30eac8327d5aa45c3bfefd57e8d3109fe0..50b73ec354f92e9909a57a82ec72ba1a8516aa1c
 100644
--- a/contrib/ci/README.md
+++ b/contrib/ci/README.md
@@ -47,6 +47,11 @@ and Debian-based distros:
 
 Where `<USER>` is the user invoking CI.
 
+You may also want to allow passing DEBIAN_FRONTEND environment variable to
+apt-get on Debian, so CI can request non-interactive package installation:
+
+    Defaults!/usr/bin/apt-get env_keep += "DEBIAN_FRONTEND"
+
 On Red Hat distros a repository carrying dependencies missing from some
 distros needs to be added to yum configuration. See instructions on the
 [Copr project 
page](http://copr-fe.cloud.fedoraproject.org/coprs/lslebodn/sssd-deps/).
diff --git a/contrib/ci/distro.sh b/contrib/ci/distro.sh
index 
5416bfff325c4e5d0a10ebea67cba26e20e03fd5..6a2aebca6f987de6207cb5dc1ade65d8615a70e1
 100644
--- a/contrib/ci/distro.sh
+++ b/contrib/ci/distro.sh
@@ -60,7 +60,8 @@ function distro_pkg_install()
                  {print}
                  END {exit s}'
     elif [[ "$DISTRO_BRANCH" == -debian-* ]]; then
-        [ $# != 0 ] && sudo -p "$prompt" apt-get --yes install -- "$@"
+        [ $# != 0 ] && DEBIAN_FRONTEND=noninteractive \
+                       sudo -p "$prompt" apt-get --yes install -- "$@"
     else
         echo "Cannot install packages on $DISTRO_BRANCH" >&2
         exit 1
-- 
2.5.0

>From a1b333f9430fe4a8b2f96fa81e28a9bbdb361f88 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lsleb...@redhat.com>
Date: Tue, 29 Sep 2015 12:29:51 +0200
Subject: [PATCH 2/3] CI: Add missing dependency for debian

All test failed due to missing /usr/bin/libtool

e.g.
/home/build/sssd/build/test-driver: line 107: libtool: command not found
FAIL test-io (exit status: 127)
---
 contrib/ci/deps.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/contrib/ci/deps.sh b/contrib/ci/deps.sh
index 
22b7276ebdb8e3ba5e1e34334adbe310cbff8bad..0c42e46260d679f01ad67f097f728047397fe33c
 100644
--- a/contrib/ci/deps.sh
+++ b/contrib/ci/deps.sh
@@ -97,6 +97,7 @@ if [[ "$DISTRO_BRANCH" == -debian-* ]]; then
         libtdb-dev
         libtevent-dev
         libtool
+        libtool-bin
         libxml2-utils
         make
         python-dev
-- 
2.5.0

>From 61bcd6fd789d5668360ea9fe3b35c5adde43da10 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lsleb...@redhat.com>
Date: Tue, 29 Sep 2015 12:57:24 +0200
Subject: [PATCH 3/3] CI: Run integration tests on debian testing

---
 contrib/ci/deps.sh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/contrib/ci/deps.sh b/contrib/ci/deps.sh
index 
0c42e46260d679f01ad67f097f728047397fe33c..c9a8a6384a31c796a7b79e4f94d89f3e94ce6542
 100644
--- a/contrib/ci/deps.sh
+++ b/contrib/ci/deps.sh
@@ -107,8 +107,15 @@ if [[ "$DISTRO_BRANCH" == -debian-* ]]; then
         xml-core
         xsltproc
         libssl-dev
+        fakeroot
+        libnss-wrapper
+        libuid-wrapper
+        python-pytest
+        python-ldap
+        ldap-utils
+        slapd
     )
-    DEPS_INTGCHECK_SATISFIED=false
+    DEPS_INTGCHECK_SATISFIED=true
 fi
 
 declare -a -r DEPS_LIST
-- 
2.5.0

_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to