blob: 5535c877ff38dae923b6642f2dab63455bd9cbee [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: PECL
on:
push:
branches:
- master
pull_request:
branches:
- "**"
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: "1"
RUSTFLAGS: "-D warnings"
LLVM_CONFIG_PATH: llvm-config-10
RUSTUP_HOME: /tmp/rustup
CARGO_HOME: /tmp/cargo
jobs:
pecl-required:
needs:
- pecl
runs-on: ubuntu-20.04
steps:
- name: Check results
run: |
[[ ${{ needs.pecl.result }} == 'success' ]] || exit 1;
pecl:
name: PECL
strategy:
fail-fast: false
matrix:
os:
- ubuntu-20.04
- macos-12
version:
- php: "8.2"
swoole: "5.0.0"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Install libclang
if: matrix.os == 'ubuntu-20.04'
run: sudo apt-get install -y llvm-10-dev libclang-10-dev protobuf-compiler
- name: Install protobuf for Macos
if: matrix.os == 'macos-12'
run: brew install protobuf
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.version.php }}
tools: php-config
extensions: swoole-${{ matrix.version.swoole }}
- name: Install Rust Stable Globally
run: |
curl https://sh.rustup.rs -sSf | sudo -E sh -s -- -y --no-modify-path
sudo ln -sf $CARGO_HOME/bin/rustup /usr/local/bin/rustup
sudo ln -sf $CARGO_HOME/bin/rustc /usr/local/bin/rustc
sudo ln -sf $CARGO_HOME/bin/cargo /usr/local/bin/cargo
- name: PECL install
run: |
sudo -E cargo run -p scripts --release -- create-package-xml --version 0.0.0 --notes "Just for TEST."
cat package.xml
printf "\n" | sudo -E pecl install package.xml
php -d "extension=skywalking_agent" --ri skywalking_agent