[Rt-commit] rt branch, 4.4/add-postgresql-apache-fcgid-tests, updated. rt-4.4.4-133-g02809225e3

Dianne Skoll dianne at bestpractical.com
Mon Aug 10 12:48:26 EDT 2020


The branch, 4.4/add-postgresql-apache-fcgid-tests has been updated
       via  02809225e3f43e01ae5b073e1e27beee336efdde (commit)
      from  03e4a839a673a1e9649d6057a01727d6bcd9edb3 (commit)

Summary of changes:
 .travis.yml  | 8 +++++---
 configure.ac | 6 ++++++
 2 files changed, 11 insertions(+), 3 deletions(-)

- Log -----------------------------------------------------------------
commit 02809225e3f43e01ae5b073e1e27beee336efdde
Author: Dianne Skoll <dianne at bestpractical.com>
Date:   Mon Aug 10 11:48:19 2020 -0400

    We cannot feasibly run the Apache+mod_fcgid tests as root.
    
    Create a user "rt-test" in the docker container and run tests as that user.
    Also set path to Apache modules and Apache binary.

diff --git a/.travis.yml b/.travis.yml
index 713c8b27b1..e5f58175c6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -51,9 +51,11 @@ jobs:
     before_install:
       - docker run --name mariadb -e MYSQL_ROOT_PASSWORD=password -d mariadb:$DB_VERSION_TAG
       - docker build -t rt-base .
-      - docker run -d -e RT_DBA_USER=root -e RT_DBA_PASSWORD=password -e RT_TEST_WEB_HANDLER=apache+fcgid -e HTTPD_ROOT=/etc/apache2 -e RT_TEST_APACHE_MODULES=/usr/lib/apache2/modules -v $TRAVIS_BUILD_DIR:/rt --name rt --link mariadb:db rt-base
+      - docker run -d -e RT_DBA_USER=root -e RT_DBA_PASSWORD=password -e RT_TEST_WEB_HANDLER=apache+fcgid -e HTTPD_ROOT=/etc/apache2 -e RT_TEST_APACHE=/usr/sbin/apache2 -e RT_TEST_APACHE_MODULES=/usr/lib/apache2/modules -v $TRAVIS_BUILD_DIR:/rt --name rt --link mariadb:db rt-base
       - docker ps -a
-      - docker exec -it rt bash -c "cd /rt && ./configure.ac --with-db-type=mysql --with-my-user-group --enable-layout=inplace --enable-developer --enable-externalauth --disable-gpg --disable-smime --with-web-handler=fcgid && mkdir -p /rt/var && make testdeps && touch /etc/apache2/mime.types"
+      - docker exec -it rt bash -c "adduser rt-test < /dev/null || true"
+      - docker exec -it rt bash -c "chown -R rt-test /rt"
+      - docker exec -it rt bash -c "cd /rt && su -c './configure.ac --with-db-type=mysql --enable-layout=inplace --with-my-user-group --enable-developer --enable-externalauth --disable-gpg --disable-smime --with-web-handler=fcgid' rt-test && su -c 'mkdir -p /rt/var' rt-test && su -c 'make testdeps' rt-test && su -c 'chmod a+rX /rt/sbin/*' rt-test && touch /etc/apache2/mime.types"
 
     script:
-        - docker exec -it rt bash -c "cd /rt && prove -lj9 t/*"
+        - docker exec -it rt bash -c "cd /rt && su -c 'prove -lj9 t/*' rt-test"
diff --git a/configure.ac b/configure.ac
index 54b3c35d95..bdd3d6007d 100755
--- a/configure.ac
+++ b/configure.ac
@@ -224,6 +224,12 @@ AC_SUBST(RTGROUP)
 dnl INSTALL AS ME
 my_group=$($PERL -MPOSIX=getgid -le 'print scalar getgrgid getgid')
 my_user=${USER:-$LOGNAME}
+
+# my_user fails on Docker
+if test "$my_user" = "" ; then
+   my_user=`whoami`
+fi
+
 AC_ARG_WITH(my-user-group,
             AC_HELP_STRING([--with-my-user-group],
                            [set all users and groups to current user/group]),

-----------------------------------------------------------------------


More information about the rt-commit mailing list