Hello community,

here is the log from the commit of package apache-rpm-macros for 
openSUSE:Factory checked in at 2015-09-19 06:54:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/apache-rpm-macros (Old)
 and      /work/SRC/openSUSE:Factory/.apache-rpm-macros.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "apache-rpm-macros"

Changes:
--------
--- /work/SRC/openSUSE:Factory/apache-rpm-macros/apache-rpm-macros.changes      
2015-08-07 00:18:16.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.apache-rpm-macros.new/apache-rpm-macros.changes 
2015-09-19 06:54:33.000000000 +0200
@@ -1,0 +2,41 @@
+Fri Sep 18 08:18:45 UTC 2015 - pgaj...@suse.com
+
+- version 20150918
+- -m is no longer required (see apache2-mod_apreq2 for usecase)
+
+-------------------------------------------------------------------
+Tue Sep 15 09:13:18 UTC 2015 - pgaj...@suse.com
+
+- version 20150915
+- new macro: %apache_access_syntax_version
+
+-------------------------------------------------------------------
+Sat Sep  5 07:22:53 UTC 2015 - pgaj...@suse.com
+
+- version 20150904
+- new macros: %apache_test_module_curl, %apache_test_module_dir
+
+-------------------------------------------------------------------
+Thu Sep  3 08:36:35 UTC 2015 - pgaj...@suse.com
+
+- version 20150903
+- %apache_test_module_start_apache:
+    * better check that httpd is really running
+    * add -p to mkdir test to not fail if test exist and do not 
+      remove test dir
+
+-------------------------------------------------------------------
+Mon Aug 31 08:30:28 UTC 2015 - pgaj...@suse.com
+
+- bump version to 20150902
+
+-------------------------------------------------------------------
+Fri Aug 28 08:27:11 UTC 2015 - pgaj...@suse.com
+
+- added macros to test loading modules
+  %apache_test_module_start_apache
+  %apache_test_module_stop_apache
+  %apache_test_module_load
+  + macros.apache-module-test
+
+-------------------------------------------------------------------

New:
----
  macros.apache-module-test

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ apache-rpm-macros.spec ++++++
--- /var/tmp/diff_new_pack.TcMwmG/_old  2015-09-19 06:54:34.000000000 +0200
+++ /var/tmp/diff_new_pack.TcMwmG/_new  2015-09-19 06:54:34.000000000 +0200
@@ -35,6 +35,7 @@
 %define ap_datadir        %(%{ap_apxs} -q DATADIR)
 %define ap_user           wwwrun
 %define ap_group          www
+%define ap_access_syntax_version %(if [ $(grep -c '^[[:space:]]*Require all 
denied' /etc/apache2/httpd.conf) -gt 0 ]; then echo 24; else echo 22; fi)
 #
 %if 0%{?suse_version} > 1230
 %define macros_dir            %{_libexecdir}/rpm/macros.d
@@ -43,12 +44,13 @@
 %endif
 %define macros_file           macros.apache
 Name:           apache-rpm-macros
-Version:        20150717
+Version:        20150918
 Release:        0
 Summary:        Apache RPM Macros
 License:        Apache-2.0
 Group:          Productivity/Networking/Web/Servers
 Url:            http://httpd.apache.org/
+Source1:        macros.apache-module-test
 BuildRequires:  apache%{ap_major}-devel
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
@@ -74,7 +76,10 @@
 %%apache_datadir                 %{ap_datadir}
 %%apache_user                    %{ap_user}
 %%apache_group                   %{ap_group}
+%%apache_access_syntax_version   %{ap_access_syntax_version}
 eom
+echo >> %{macros_file}
+cat %{SOURCE1} >> %{macros_file}
 
 %install
 mkdir -p %{buildroot}%{macros_dir}

++++++ macros.apache-module-test ++++++
%__test_dir   /tmp/%{name}-test
%__test_mpm   prefork
%__test_user  abuild
%__test_group abuild
%__test_port  60080

# world writeable dir for testing purposes (logs, document root, ..)
%apache_test_module_dir %{__test_dir}

#
# macro: apache_test_module_start_apache -- start apache with specified modules 
loaded
# 
#        usage: apache_test_module_start_apache -m module_list [-i 
include_list] [-r document_root]
#
#        module_list:   colon separated list of module names to be loaded with 
test run
#                       search path:  %{buildroot} tree
#                                     %{apache_libexecdir}-prefork
#                                     %{apache_libexecdir}
#                       [example value: asn:dbd]
#        include_list:  colon separated list of names of apache configuration 
files
#                       to be included; can be either existing path or just name
#                       of the configuration file,which will be searched under:
#                         %{buildroot}%{apache_sysconfdir} tree
#                         $PWD tree
#                         %{apache_test_module_dir}
#                       [example value: mod_asn.conf]
#        document_root: document root of the test server, 
#                       [default value: $PWD/test/htdocs]
#        
#
%apache_test_module_start_apache(m:,i:,r:) \
  # constants \
  TEST_DIR='%{__test_dir}' \
  TEST_MPM='%{__test_mpm}' \
  TEST_USER='%{__test_user}' \
  TEST_GROUP='%{__test_group}' \
  TEST_PORT='%{__test_port}' \
  # arguments \
  # modules to load, from BUILD tree or system \
  MODULES=$(echo %{-m:%{-m*}} | tr ':' ' ') \
  # configs to include \
  CONFIGS="%{-i:%{-i*}}" \
  # document root of the test server \
  DOCUMENT_ROOT="%{-r:%{-r*}}" \
  if [ -z "$DOCUMENT_ROOT" ]; then \
    DOCUMENT_ROOT=$TEST_DIR/htdocs  \
  fi \
  # helpers \
  APACHE_BRANCH=$(echo %{apache_branch} | tr -d '.') \
  # begin \
  echo "-----------------------------------------------------------" \
  echo "APACHE MODULE TEST" \
  echo \
  echo "modules to load:     $MODULES" \
  echo "configs to include:  $CONFIGS" \
  # create test dir \
  mkdir -p $TEST_DIR \
  # create document root if not exist \
  mkdir -p $DOCUMENT_ROOT \
  # create test/httpd-test.conf \
  TEST_CONF_FILE="$TEST_DIR/httpd.conf" \
  SYSTEM_MODULE_PATH="%{apache_libexecdir}-$TEST_MPM" \
  echo "ServerName test"                                                        
> $TEST_CONF_FILE \
  echo "User $TEST_USER"                                                       
>> $TEST_CONF_FILE \
  echo "Group $TEST_GROUP"                                                     
>> $TEST_CONF_FILE \
  echo "Listen $TEST_PORT"                                                     
>> $TEST_CONF_FILE \
  echo "PidFile $TEST_DIR/pid"                                                 
>> $TEST_CONF_FILE \
  echo "ErrorLog $TEST_DIR/error_log"                                          
>> $TEST_CONF_FILE \
  echo "LoadModule dir_module        $SYSTEM_MODULE_PATH/mod_dir.so"           
>> $TEST_CONF_FILE \
  echo "LoadModule auth_basic_module $SYSTEM_MODULE_PATH/mod_auth_basic.so"    
>> $TEST_CONF_FILE \
  if [ $APACHE_BRANCH -ge 24 ]; then \
    echo "LoadModule authz_core_module $SYSTEM_MODULE_PATH/mod_authz_core.so"  
>> $TEST_CONF_FILE \
  fi \
  echo "LoadModule authz_host_module $SYSTEM_MODULE_PATH/mod_authz_host.so"    
>> $TEST_CONF_FILE \
  for m in $(echo $MODULES | tr ':' ' '); do \
    module_path=$(find %{buildroot} %{apache_libexecdir}-$TEST_MPM 
%{apache_libexecdir} -name "mod_$m.so" | tail -n 1) \
    if [ -z "$module_path" ]; then \
      echo "ERROR: Module $m not found." \
      exit 1 \
    fi \
    echo "Will load ${m}_module $module_path" \
    echo "LoadModule ${m}_module $module_path"                                 
>> $TEST_CONF_FILE \
  done \
  for c in $(echo $CONFIGS | tr ':' ' '); do \
    if [ -f $c ]; then \
      if [[ ! "$c" = /* ]]; then \
        c="$PWD/$c" \
      fi \
      include_path="$c" \
    else \
      include_path=$(find %{buildroot}%{apache_sysconfdir} 
%{apache_test_module_dir} $PWD -name "$c" 2>/dev/null | tail -n 1) \
    fi \
    if [ -z "$include_path" ]; then \
      echo "ERROR: Config file $c not found." \
      exit 1 \
    fi \
    echo "Will include $include_path" \
    echo "Include $include_path"                                               
>> $TEST_CONF_FILE \
  done \
  echo "DocumentRoot $DOCUMENT_ROOT"                                           
>> $TEST_CONF_FILE \
  echo "DirectoryIndex index.html"                                             
>> $TEST_CONF_FILE \
  echo "<Directory $DOCUMENT_ROOT>"                                            
>> $TEST_CONF_FILE \
  if [ $APACHE_BRANCH -ge 24 ]; then \
    echo "  Require local"                                                     
>> $TEST_CONF_FILE \
  else \
    echo "  Order deny,allow"                                                  
>> $TEST_CONF_FILE \
    echo "  Deny from all"                                                     
>> $TEST_CONF_FILE \
    echo "  Allow from localhost"                                              
>> $TEST_CONF_FILE \
  fi \
  echo "</Directory>"                                                          
>> $TEST_CONF_FILE \
  # run apache \
  CMD=$(ls %{_sbindir}/httpd*-$TEST_MPM | head -n 1) \
  echo -n "Starting Apache ... " \
  $CMD -f $TEST_CONF_FILE -k start \
  # wait to be sure apache finished start \
  sleep 2 \
  if [ ! -f $TEST_DIR/pid ]; then \
    echo "FAILED:" \
    cat $TEST_DIR/error_log \
    echo "See $PWD/$TEST_DIR for details" \
    exit 1  \
  fi \
  echo "SUCCESS" \
  %nil

#
# macro: apache_test_module_stop_apache -- stops apache previously started with 
*_start_apache
# 
#        usage: apache_test_module_stop_apache
#
%apache_test_module_stop_apache() \
  TEST_DIR='%{__test_dir}' \
  # stop apache \
  echo "Stopping Apache ..." \
  kill -TERM `cat $TEST_DIR/pid` \
  echo "Done." \
  echo "-----------------------------------------------------------" \
  %nil

#
# macro: apache_test_module_curl -- outputs curl on particular document 
relative to 
#                                   document root of test instance
#
#        usage:   apache_test_module_curl -d document_to_curl -o output_of_curl
#        example: apache_test_module_curl -d foo/test.html -o test.html
#                 apache_test_module_curl -d foo/ -o output.txt
#
%apache_test_module_curl(d:,o:) \
  TEST_DOCUMENT="%{-d:%{-d*}}" \
  TEST_OUTPUT="%{-o:%{-o*}}" \
  if [ -z "$TEST_OUTPUT" ]; then \
    echo "Missing argument -o to apache_test_module_curl." \
    exit 1 \
  fi \
  curl -s "http://localhost:%{__test_port}/$TEST_DOCUMENT"; --create-dirs -o 
"$TEST_OUTPUT" \
  %nil

#
# macro: apache_test_module_load -- tests that module(s) can be loaded
# 
#        usage: apache_test_module_load -m module_list [-i include_list]
#
#        module_list:  colon separated list of module names to be loaded with 
test run
#                      search path:  %{buildroot} tree
#                                    %{apache_libexecdir}-prefork
#                                    %{apache_libexecdir}
#                      [example value: asn:dbd]
#        include_list: colon separated list of names of apache configuration 
files
#                      to be included (path relative to current dir)
#                      search path   %{buildroot}%{apache_sysconfdir} tree
#                                    $PWD tree
#                      [example value: mod_asn.conf]
#
%apache_test_module_load(m:,i:) \
  %apache_test_module_start_apache %{-m:-m %{-m*}} %{-i:-i %{-i*}} \
  %apache_test_module_stop_apache \
  %nil


Reply via email to