gh-actions: workflows/ci
[m6w6/ext-http] / .github / workflows / ci.yml
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644 (file)
index 0000000..9eee78c
--- /dev/null
@@ -0,0 +1,316 @@
+# generated file; do not edit!
+
+name: ci
+on:
+  workflow_dispatch:
+  push:
+  pull_request:
+
+jobs:
+  master-0:
+    name: master-0
+    continue-on-error: true
+    env:
+      PHP: master
+      enable_debug: yes
+      enable_zts: yes
+      enable_iconv: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-none-0:
+    name: cur-none-0
+    env:
+      PHP: 8.0
+      with_http_libicu_dir: no
+      with_http_libidn_dir: no
+      with_http_libidn2_dir: no
+      with_http_libcurl_dir: no
+      with_http_libevent_dir: no
+      with_http_libbrotli_dir: no
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-dbg-zts-0:
+    name: cur-dbg-zts-0
+    env:
+      PHP: 8.0
+      enable_debug: yes
+      enable_zts: yes
+      enable_iconv: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-dbg-zts-1:
+    name: cur-dbg-zts-1
+    env:
+      PHP: 8.0
+      enable_debug: no
+      enable_zts: yes
+      enable_iconv: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-dbg-zts-2:
+    name: cur-dbg-zts-2
+    env:
+      PHP: 8.0
+      enable_debug: yes
+      enable_zts: no
+      enable_iconv: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-dbg-zts-3:
+    name: cur-dbg-zts-3
+    env:
+      PHP: 8.0
+      enable_debug: no
+      enable_zts: no
+      enable_iconv: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+
+  cur-cov-0:
+    name: cur-cov-0
+    env:
+      CFLAGS: '-O0 -g --coverage'
+      CXXFLAGS: '-O0 -g --coverage'
+      PHP: 8.0
+      enable_iconv: yes
+      with_http_libicu_dir: yes
+      with_http_libidn_dir: no
+      with_http_libidn2_dir: no
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+      - name: Coverage
+        if: success()
+        run: |
+          cd src/.libs
+          bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+
+  cur-cov-1:
+    name: cur-cov-1
+    env:
+      CFLAGS: '-O0 -g --coverage'
+      CXXFLAGS: '-O0 -g --coverage'
+      PHP: 8.0
+      enable_iconv: yes
+      with_http_libicu_dir: no
+      with_http_libidn_dir: yes
+      with_http_libidn2_dir: no
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+      - name: Coverage
+        if: success()
+        run: |
+          cd src/.libs
+          bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+
+  cur-cov-2:
+    name: cur-cov-2
+    env:
+      CFLAGS: '-O0 -g --coverage'
+      CXXFLAGS: '-O0 -g --coverage'
+      PHP: 8.0
+      enable_iconv: yes
+      with_http_libicu_dir: no
+      with_http_libidn_dir: no
+      with_http_libidn2_dir: yes
+    steps:
+      - uses: actions/checkout@v2
+      - name: Install
+        run: |
+          sudo apt-get install -y \
+            php-cli \
+            php-pear \
+            libcurl4-openssl-dev \
+            libidn11-dev \
+            libidn2-0-dev \
+            libicu-dev \
+            libevent-dev \
+            libbrotli-dev
+      - name: Prepare
+        run: |
+          make -f scripts/ci/Makefile php || make -f scripts/ci/Makefile clean php
+          make -f scripts/ci/Makefile pecl PECL=m6w6/ext-raphf.git:raphf:master
+      - name: Build
+        run: |
+          make -f travis/pecl/Makefile ext PECL=http
+      - name: Test
+        run: |
+          make -f travis/pecl/Makefile test
+      - name: Coverage
+        if: success()
+        run: |
+          cd src/.libs
+          bash <(curl -s https://codecov.io/bash) -X xcode -X coveragepy
+