Skip to content

CI

CI #371

Workflow file for this run

name: CI
on: [pull_request, workflow_dispatch]
jobs:
cpp:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: actions-setup-cmake
uses: jwlawson/[email protected]
with:
cmake-version: "3.16.x"
- name: Build agent
run: |
cd common
mkdir -p build
cd build
cmake -DWITH_TEST_CASE=1 -DWITH_CODECOVERAGE=1 -DCMAKE_BUILD_TYPE=Debug ..
make
./bin/TestCommon
- name: Codecovage
uses: codecov/codecov-action@v1
memory-leak:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: actions-setup-cmake
uses: jwlawson/[email protected]
with:
cmake-version: "3.16.x"
- name: Build agent
run: |
sudo apt update || echo "update failed,but try to overlook it"
sudo apt install -y valgrind -y valgrind
cd common
mkdir -p build
cd build
cmake -DWITH_TEST_CASE=1 -DCMAKE_BUILD_TYPE=Debug ..
make
valgrind --leak-check=full \
--show-leak-kinds=all \
--track-origins=yes \
--verbose \
--log-file=valgrind-out.txt \
./bin/TestCommon
- name: Archive docs
uses: actions/upload-artifact@v3
with:
name: valgrind-out
path: common/build/valgrind-out.txt
# PHP5:
# runs-on: ubuntu-latest
# strategy:
# matrix:
# php-versions: ["5.6", "5.4", "5.5"]
# steps:
# - uses: actions/checkout@v2
# - uses: shivammathur/setup-php@v2
# with:
# php-version: ${{ matrix.php-versions }}
# - run: |
# phpize
# ./configure
# make
# make test TESTS=tests5/
PHP7:
runs-on: ubuntu-latest
strategy:
matrix:
# php-versions: ["7.0", "7.1", "7.2", "7.3", "7.4", "8.0"]
php-versions: ["7.4","8.0","8.1","8.2"]
steps:
- uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
extensions: redis-phpredis/[email protected]
- name: testapp
run: |
phpize
./configure
make
make test
# sudo make install
# sudo echo "extension=pinpoint_php.so" >> /etc/php/${{ matrix.php-versions }}/cli/php.ini
# sudo echo "error_log = /home/runner/work/pinpoint-c-agent/pinpoint-c-agent/testapps/PHP/tests/php_error.log" >> /etc/php/${{ matrix.php-versions }}/cli/php.ini
# sudo echo "pinpoint_php.DebugReport=true" >> /etc/php/${{ matrix.php-versions }}/cli/php.ini
# cd testapps/PHP
# composer install
# cp tests/think .
# php think unit -v
Python:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ["3.8","3.9","3.10","3.11"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: jwlawson/[email protected]
with:
cmake-version: "3.16.x"
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: run unittest
run: |
# ref https://github.com/pypa/setuptools/issues/3198
pip install -e .
python -m unittest discover -s src/PY/test
- if: matrix.python-version == '3.8'
run : |
pip install -r plugins/PY/requirements.txt
python -m unittest discover -s plugins/PY/pinpointPy
Collector-agent:
strategy:
matrix:
go-version: [1.18.x]
os: [ubuntu-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: 'true'
- name: Setup protoc
uses: arduino/[email protected]
- run: |
go install google.golang.org/protobuf/cmd/[email protected]
go install google.golang.org/grpc/cmd/[email protected]
export PATH="$PATH:$(go env GOPATH)/bin"
cd collector-agent && make && go test ./... -v