travis
[m6w6/ext-pq] / scripts / gen_travis_yml.php
index 77d3a0f9e22fbd31956d63de15e6a4c6feff6979..2868592c39ce5095237620ed0bc9bab01f5cc7c6 100755 (executable)
@@ -1,24 +1,22 @@
 #!/usr/bin/env php
 # autogenerated file; do not edit
 language: c
-sudo: false
 
 addons:
- postgresql: 9.4
+ postgresql: 10
  apt:
   packages:
-   - php5-cli
+   - php-cli
    - php-pear
    - valgrind
 
-compiler:
- - gcc
- - clang
-
 cache:
  directories:
   - $HOME/cache
+
+before_cache:
+ - find $HOME/cache -name '*.gcda' -o -name '*.gcno' -delete
+
 env:
  global:
   - PQ_DSN="postgres://postgres@localhost/test"
@@ -26,12 +24,17 @@ env:
 <?php
 
 $gen = include "./travis/pecl/gen-matrix.php";
-$cur = "7.2";
+$cur = "8.0";
 $env = $gen([
-       "PHP" => ["7.0", "7.1", "master"],
+       "PHP" => ["7.0", "7.1", "7.2", "7.3", "7.4"],
        "enable_debug" => "yes",
        "enable_maintainer_zts" => "yes",
        "enable_json" => "yes",
+], [
+       "PHP" => ["master"],
+       "enable_debug" => "yes",
+       "enable_zts" => "yes",
+       "enable_json" => "yes",
 ], [
        "PHP" => $cur,
        "enable_json" => "no",
@@ -39,7 +42,7 @@ $env = $gen([
        "PHP" => $cur,
        "enable_json" => "yes",
        "enable_debug",
-       "enable_maintainer_zts"
+       "enable_zts"
 ], [
        "PHP" => $cur,
        "enable_json" => "yes",
@@ -52,11 +55,27 @@ foreach ($env as $g) {
                printf("  - %s\n", $e);
        }
 }
+?>
 
+matrix:
+ fast_finish: true
+ allow_failures:
+<?php
+$allow_failures = array_merge( ... array_map(function($a) {
+       return preg_grep('/^PHP=(master) /', $a);
+}, $env));
+foreach ($allow_failures as $e) {
+       printf("  - env: %s\n", $e);
+}
 ?>
 
 install:
- - make -f travis/pecl/Makefile php
+ - |
+   if test "$PHP" = master; then \
+     make -f travis/pecl/Makefile reconf; \
+     make -f travis/pecl/Makefile pecl-rm pecl-clean PECL=raphf:raphf:2.0.0; \
+   fi
+ - make -f travis/pecl/Makefile php || make -f travis/pecl/Makefile clean php
  - make -f travis/pecl/Makefile pecl PECL=raphf:raphf:2.0.0
 
 before_script: