Skip to content

Fix php classes extends from phper classes. #504

Fix php classes extends from phper classes.

Fix php classes extends from phper classes. #504

Workflow file for this run

# Copyright (c) 2022 PHPER Framework Team
# PHPER is licensed under Mulan PSL v2.
# You can use this software according to the terms and conditions of the Mulan
# PSL v2. You may obtain a copy of Mulan PSL v2 at:
# http://license.coscl.org.cn/MulanPSL2
# THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY
# KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
# NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
# See the Mulan PSL v2 for more details.
name: CI
on:
push:
branches:
- master
pull_request:
branches: [ "**" ]
env:
RUST_LOG: debug
CARGO_TERM_COLOR: always
RUST_BACKTRACE: "1"
RUSTFLAGS: "-D warnings"
LLVM_CONFIG_PATH: llvm-config-10
jobs:
required:
name: Required
needs:
- ci
runs-on: ubuntu-20.04
steps:
- name: Check results
run: |
[[ ${{ needs.ci.result }} == 'success' ]] || exit 1;
ci:
name: CI
strategy:
fail-fast: false
matrix:
os:
- ubuntu-20.04
- macos-12
php-version:
- "7.0"
- "7.1"
- "7.2"
- "7.3"
- "7.4"
- "8.0"
- "8.1"
- "8.2"
- "8.3"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install libclang for Linux
if: matrix.os == 'ubuntu-20.04'
run: sudo apt-get install -y llvm-10-dev libclang-10-dev
- name: Setup libclang for Macos
if: matrix.os == 'macos-12'
run: |
brew install llvm@13
echo "LIBCLANG_PATH=$(brew --prefix llvm@13)/lib" >> $GITHUB_ENV
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: php-config
- name: Setup php-fpm for Linux
if: matrix.os == 'ubuntu-20.04'
run: |
sudo apt-get install -y php${{ matrix.php-version }}-fpm
sudo rm -f /usr/sbin/php-fpm
sudo ln -s /usr/sbin/php-fpm${{ matrix.php-version }} /usr/sbin/php-fpm
- name: Setup php-fpm for Macos
if: matrix.os == 'macos-12'
run: |
brew install php@${{ matrix.php-version }}
- name: PHP version
run: |
php --version
php-fpm --version
php-config || true
[[ `php --version` == PHP\ ${{ matrix.php-version }}.* ]] || exit 1;
[[ `php-fpm --version` == PHP\ ${{ matrix.php-version }}.* ]] || exit 1;
[[ `php-config --version` == ${{ matrix.php-version }}.* ]] || exit 1;
- name: Install Rust Nightly
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
components: rustfmt
- name: Cargo generate lockfile
run: cargo +nightly -Z minimal-versions update
- name: Setup cargo cache
uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ matrix.os }}-ci-${{ matrix.php-version }}-${{ hashFiles('**/Cargo.lock') }}
- name: Cargo fmt
uses: actions-rs/cargo@v1
with:
toolchain: nightly
command: fmt
args: --all -- --check
- name: Cargo clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: --release
- name: Cargo build
uses: actions-rs/cargo@v1
with:
command: build
args: --release
- name: Cargo test
uses: actions-rs/cargo@v1
with:
command: test
args: --release -- --nocapture
- name: Cargo doc
uses: actions-rs/cargo@v1
env:
RUSTDOCFLAGS: "-D warnings --cfg docsrs"
with:
toolchain: nightly
command: doc
args: --workspace --no-deps --all-features