Skip to content

Fill objects for attributes (#2810) #22

Fill objects for attributes (#2810)

Fill objects for attributes (#2810) #22

Workflow file for this run

name: "CI"
on:
pull_request:
push:
branches:
- 'master'
env:
fail-fast: true
TZ: "Europe/Paris"
jobs:
phar:
name: Compile Phar
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set PHP 8.1
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts --no-dev"
- name: Tag with a dummy name
run: git tag test
- name: Compile phpactor.phar
run: .github/build-phar.sh
- name: Check existence of compiled .phar
run: test -e build/phpactor.phar && exit 0 || exit 10
- name: Execute Phar
run: ./build/phpactor.phar
#- name: "Attach signature to Release"
# uses: actions/upload-release-asset@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ github.event.release.upload_url }}
# asset_path: ./build/phpactor.phar.asc
# asset_name: phpactor.phar.asc
# asset_content_type: application/pgp-signature
vim-tests:
name: "VIM Tests (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
-
name: Install Dependencies
run: |
composer validate --strict
composer install --optimize-autoloader --classmap-authoritative
bin/phpactor --version
git clone https://github.com/junegunn/vader.vim.git
-
name: "VIM tests fail with a TTL of 1.0 for some reason"
run: "./bin/phpactor config:set worse_reflection.cache_lifetime 5.0"
-
name: "Run VIM Tests"
run: ".github/vim-plugin-test.sh"
phpunit:
name: "PHPUnit (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
- '8.2'
- '8.3'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
-
name: "Run PHPUnit"
run: |
php -dphar.readonly=0 \
-dzend.assertions=1 \
vendor/bin/phpunit --log-junit phpunit-junit.xml
-
if: "contains(github.ref, 'master')"
name: "Upload to Historian"
run: |
curl https://${{ secrets.HISTORIAN_HOST }}/api/upload -XPOST \
-H"X-Api-Key: ${{ secrets.HISTORIAN_API_KEY }}" \
-H"X-Build: ${{ github.run_number }}" \
-H"X-Commit-Sh: ${{ github.sha }}" \
-H"X-Author-Name: ${{ github.event.head_commit.author.name }}" \
-H"X-Author-Email: ${{ github.event.head_commit.author.email }}" \
-H"X-Host: ${{ runner.name }}" \
[email protected]
phpstan:
name: "PHPStan (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
-
name: "Run PHPStan"
run: "vendor/bin/phpstan analyse"
phpactor:
name: "Phpactor Self Lint"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
-
name: "Run Phpactor Analyse"
run: "bin/phpactor worse:analyse lib --ignore-failure"
php-cs-fixer:
name: "PHP-CS-Fixer (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
-
name: "Run PHP-CS_Fixer"
run: "PHP_CS_FIXER_IGNORE_ENV=1 vendor/bin/php-cs-fixer fix --dry-run --diff"
phpbench:
name: "PHPBench smoke (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- '8.1'
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Install PHP"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.REQUIRED_PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: composer:v2
-
name: "Composer install"
uses: "ramsey/composer-install@v2"
with:
composer-options: "--no-scripts"
ignore-cache: "yes"
-
name: "Run PHPBench"
run: "vendor/bin/phpbench run --progress=plain --iterations=1 --dump-file=phpbench.xml"
-
if: "contains(github.ref, 'master')"
name: "Upload to Historian"
run: |
curl https://${{ secrets.HISTORIAN_HOST }}/api/upload -XPOST \
-H"X-Api-Key: ${{ secrets.HISTORIAN_API_KEY }}" \
-H"X-Build: ${{ github.run_number }}" \
-H"X-Commit-Sh: ${{ github.sha }}" \
-H"X-Author-Name: ${{ github.event.head_commit.author.name }}" \
-H"X-Author-Email: ${{ github.event.head_commit.author.email }}" \
-H"X-Host: ${{ runner.name }}" \
[email protected]
docs:
name: "Lint Docs (${{ matrix.php-version }})"
runs-on: "ubuntu-latest"
steps:
-
name: "Checkout code"
uses: "actions/checkout@v4"
-
name: "Make Docs"
run: "make docs"