Add OracleXE 10.2-based testing
[dbsrgits/DBIx-Class.git] / maint / travis-ci_scripts / 30_before_script.bash
index 44218a6..1572692 100755 (executable)
@@ -48,6 +48,12 @@ else
   # using SQLT and set up whatever databases necessary
   export DBICTEST_SQLT_DEPLOY=1
 
+  # if we run under --dev install latest github of TB1.5 first
+  # (unreleased workaround for precedence warnings)
+  if [[ "$DEVREL_DEPS" == "true" ]] ; then
+    parallel_installdeps_notest git://github.com/nthykier/test-more.git@fix-return-precedence-issue
+  fi
+
   # do the preinstall in several passes to minimize amount of cross-deps installing
   # multiple times, and to avoid module re-architecture breaking another install
   # (e.g. once Carp is upgraded there's no more Carp::Heavy,
@@ -58,7 +64,7 @@ else
   parallel_installdeps_notest Carp
   parallel_installdeps_notest Module::Build Module::Runtime
   parallel_installdeps_notest File::Spec Data::Dumper
-  parallel_installdeps_notest Test::Exception Encode::Locale Test::Fatal R/RS/RSAVAGE/Tree-DAG_Node-1.13.tgz
+  parallel_installdeps_notest Test::Exception Encode::Locale Test::Fatal
   parallel_installdeps_notest Test::Warn B::Hooks::EndOfScope Test::Differences HTTP::Status
   parallel_installdeps_notest Test::Pod::Coverage Test::EOL Devel::GlobalDestruction Sub::Name MRO::Compat Class::XSAccessor URI::Escape HTML::Entities
   parallel_installdeps_notest YAML LWP Class::Trigger JSON::XS DBI DateTime::Format::Builder Class::Accessor::Grouped Package::Variant
@@ -123,27 +129,46 @@ if [[ "$CLEANTEST" = "true" ]]; then
   if [[ -n "$HARNESS_SUBCLASS" ]] ; then
 
     INSTALLDEPS_SKIPPED_TESTLIST=$(perl -0777 -e '
-my $in = <>;
-my $re = qr(
-  ^ (?: \QBuilding and testing\E | \s* CPAN\.pm: .+? (?i:build)\S* ) \s+ (\S+)
-  .*?
-  ^ === \s \QSkipping nonessential autogenerated tests: \E([^\n]+)
-)msx;
-while ( $in =~ /$re/g ) {
-  print "!!! Skipped nonessential tests while installing $1: $2\n"
+my $curmod_re = qr{
+^
+  (?:
+    \QBuilding and testing\E
+      |
+    [\x20\t]* CPAN\.pm: [^\n]*? (?i:build)\S*
+  )
+
+  [\x20\t]+ (\S+)
+$}mx;
+
+my $curskip_re = qr{^ === \x20 \QSkipping nonessential autogenerated tests: \E([^\n]+) }mx;
+
+my (undef, @chunks) = (split qr/$curmod_re/, <>);
+while (@chunks) {
+  my ($mod, $log) = splice @chunks, 0, 2;
+  print "!!! Skipped nonessential tests while installing $mod:\n\t$1\n"
+    if $log =~ $curskip_re;
 }
 ' <<< "$LASTOUT")
 
+    if [[ -n "$INSTALLDEPS_SKIPPED_TESTLIST" ]] ; then
+      POSTMORTEM="$POSTMORTEM$(
+        echo
+        echo "The following non-essential tests were skipped during deps installation"
+        echo "============================================================="
+        echo "$INSTALLDEPS_SKIPPED_TESTLIST"
+        echo "============================================================="
+        echo
+      )"
+    fi
+
     unset HARNESS_SUBCLASS
   fi
 
 else
-  if [[ -n "$TEST_BUILDER_BETA_CPAN_TARBALL" ]] ; then
-    parallel_installdeps_notest $TEST_BUILDER_BETA_CPAN_TARBALL
-  fi
 
   # listalldeps is deliberate - will upgrade everything it can find
   parallel_installdeps_notest $(make listalldeps)
+
 fi
 
 echo_err "$(tstamp) Dependency installation finished"
@@ -171,8 +196,11 @@ $(perl -0777 -p -e 's/.+\n\n(?!\z)//s' < /proc/cpuinfo)
 = Meminfo
 $(free -m -t)
 
+= Network Status
+$(sudo netstat -an46p | grep -Pv '\s(CLOSING|(FIN|TIME|CLOSE)_WAIT.?|LAST_ACK)\s')
+
 = Environment
-$(env | grep -P 'TEST|TRAVIS|PERL|DBIC' | LC_ALL=C sort | cat -v)
+$(env | grep -P 'TEST|HARNESS|MAKE|TRAVIS|PERL|DBIC' | LC_ALL=C sort | cat -v)
 
 = Perl in use
 $(perl -V)