From 26afca22652e1f579966787e0c2219267a7aaae7 Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Fri, 15 Jan 2021 09:56:17 +0100 Subject: [PATCH] travis -> gh-actions --- .github/workflows/ci.yml | 339 +++++++++++++++++++++++++++++ .gitmodules | 7 +- .travis.yml | 42 ---- gen_travis_yml.php | 59 ----- scripts/ci | 1 + scripts/gen_github_workflow_ci.php | 76 +++++++ travis/pecl | 1 - 7 files changed, 419 insertions(+), 106 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .travis.yml delete mode 100755 gen_travis_yml.php create mode 160000 scripts/ci create mode 100755 scripts/gen_github_workflow_ci.php delete mode 160000 travis/pecl diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..4985286 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,339 @@ +# generated file; do not edit! + +name: ci +on: + workflow_dispatch: + push: + pull_request: + +jobs: + old-matrix-0: + name: old-matrix-0 + env: + PHP: "5.6" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + old-matrix-1: + name: old-matrix-1 + env: + PHP: "7.0" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + old-matrix-2: + name: old-matrix-2 + env: + PHP: "7.1" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + old-matrix-3: + name: old-matrix-3 + env: + PHP: "7.2" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + old-matrix-4: + name: old-matrix-4 + env: + PHP: "7.3" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + old-matrix-5: + name: old-matrix-5 + env: + PHP: "7.4" + enable_debug: "yes" + enable_maintainer_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + master-0: + name: master-0 + continue-on-error: true + env: + PHP: "master" + enable_debug: "yes" + enable_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + cur-dbg-zts-0: + name: cur-dbg-zts-0 + env: + PHP: "8.0" + enable_debug: "yes" + enable_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + cur-dbg-zts-1: + name: cur-dbg-zts-1 + env: + PHP: "8.0" + enable_debug: "no" + enable_zts: "yes" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + cur-dbg-zts-2: + name: cur-dbg-zts-2 + env: + PHP: "8.0" + enable_debug: "yes" + enable_zts: "no" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + cur-dbg-zts-3: + name: cur-dbg-zts-3 + env: + PHP: "8.0" + enable_debug: "no" + enable_zts: "no" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + cur-cov-0: + name: cur-cov-0 + env: + CFLAGS: "'-O0 -g --coverage'" + CXXFLAGS: "'-O0 -g --coverage'" + PHP: "8.0" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + - name: Coverage + if: success() + run: | + cd src/.libs + bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy + diff --git a/.gitmodules b/.gitmodules index e53f88c..72fd52f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +1,3 @@ -[submodule "travis-pecl"] - path = travis/pecl - url = https://github.com/m6w6/travis-pecl.git - branch = master +[submodule "scripts/ci"] + path = scripts/ci + url = https://github.com/m6w6/pecl-ci.git diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9980492..0000000 --- a/.travis.yml +++ /dev/null @@ -1,42 +0,0 @@ -# autogenerated file; do not edit -language: c - -addons: - apt: - packages: - - php-cli - - php-pear - - valgrind - -env: - matrix: - - PHP=5.6 enable_debug=yes enable_maintainer_zts=yes - - PHP=7.0 enable_debug=yes enable_maintainer_zts=yes - - PHP=7.1 enable_debug=yes enable_maintainer_zts=yes - - PHP=7.2 enable_debug=yes enable_maintainer_zts=yes - - PHP=7.3 enable_debug=yes enable_maintainer_zts=yes - - PHP=7.4 enable_debug=yes enable_maintainer_zts=yes - - PHP=master enable_debug=yes enable_zts=yes - - PHP=8.0 enable_debug=no enable_zts=no - - PHP=8.0 enable_debug=yes enable_zts=no - - PHP=8.0 enable_debug=no enable_zts=yes - - PHP=8.0 enable_debug=yes enable_zts=yes - - CFLAGS='-O0 -g --coverage' CXXFLAGS='-O0 -g --coverage' PHP=8.0 - -cache: - directories: - - $HOME/cache - -before_cache: - - find $HOME/cache -name '*.gcda' -o -name '*.gcno' -delete - -install: - - make -f travis/pecl/Makefile php - -script: - - make -f travis/pecl/Makefile ext PECL=apfd - - make -f travis/pecl/Makefile test - -after_success: - - test -n "$CFLAGS" && cd .libs && bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy - diff --git a/gen_travis_yml.php b/gen_travis_yml.php deleted file mode 100755 index 683e46e..0000000 --- a/gen_travis_yml.php +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env php -# autogenerated file; do not edit -language: c - -addons: - apt: - packages: - - php-cli - - php-pear - - valgrind - -env: - matrix: - ["5.6", "7.0", "7.1", "7.2", "7.3", "7.4"], - "enable_debug" => "yes", - "enable_maintainer_zts" => "yes", -],[ - "PHP" => ["master"], - "enable_debug" => "yes", - "enable_zts" => "yes", -], [ - "PHP" => $cur, - "enable_debug", - "enable_zts" -], [ - "CFLAGS" => "'-O0 -g --coverage'", - "CXXFLAGS" => "'-O0 -g --coverage'", - "PHP" => $cur, -]); -foreach ($env as $grp) { - foreach ($grp as $e) { - printf(" - %s\n", $e); - } -} - -?> - -cache: - directories: - - $HOME/cache - -before_cache: - - find $HOME/cache -name '*.gcda' -o -name '*.gcno' -delete - -install: - - make -f travis/pecl/Makefile php - -script: - - make -f travis/pecl/Makefile ext PECL=apfd - - make -f travis/pecl/Makefile test - -after_success: - - test -n "$CFLAGS" && cd .libs && bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy - diff --git a/scripts/ci b/scripts/ci new file mode 160000 index 0000000..547c8e8 --- /dev/null +++ b/scripts/ci @@ -0,0 +1 @@ +Subproject commit 547c8e89e38d6e899914c05ddf6598669bd16532 diff --git a/scripts/gen_github_workflow_ci.php b/scripts/gen_github_workflow_ci.php new file mode 100755 index 0000000..5986230 --- /dev/null +++ b/scripts/gen_github_workflow_ci.php @@ -0,0 +1,76 @@ +#!/usr/bin/env php + + +name: ci +on: + workflow_dispatch: + push: + pull_request: + +jobs: +github([ +"old-matrix" => [ + "PHP" => ["5.6", "7.0", "7.1", "7.2", "7.3", "7.4"], + "enable_debug" => "yes", + "enable_maintainer_zts" => "yes", +], +"master" => [ + "PHP" => "master", + "enable_debug" => "yes", + "enable_zts" => "yes", +], +"cur-dbg-zts" => [ + "PHP" => $cur, + "enable_debug", + "enable_zts", +], +"cur-cov" => [ + "CFLAGS" => "'-O0 -g --coverage'", + "CXXFLAGS" => "'-O0 -g --coverage'", + "PHP" => $cur, +]]); +foreach ($job as $id => $env) { + printf(" %s:\n", $id); + printf(" name: %s\n", $id); + if ($env["PHP"] == "master") { + printf(" continue-on-error: true\n"); + } + printf(" env:\n"); + foreach ($env as $key => $val) { + printf(" %s: \"%s\"\n", $key, $val); + } +?> + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + submodules: true + - name: Install + run: | + sudo apt-get install -y \ + php-cli \ + php-pear \ + re2c + - name: Prepare + run: | + make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php + - name: Build + run: | + make -f scripts/ci/Makefile ext PECL=apfd + - name: Test + run: | + make -f scripts/ci/Makefile test + + - name: Coverage + if: success() + run: | + cd src/.libs + bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy + + +