Skip to content

chore: Update the PhpStorm stubs #1075

chore: Update the PhpStorm stubs

chore: Update the PhpStorm stubs #1075

name: RootVersionChecker
on:
push:
branches: [ main ]
pull_request: ~
schedule:
# Do not make it the first of the month and/or midnight since it is a very busy time
- cron: "* 10 5 * *"
# See https://stackoverflow.com/a/72408109
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
cs-lint:
runs-on: ubuntu-latest
name: Lint CS
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Setup PHP
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # 2.36.0
with:
php-version: '8.2'
tools: composer
coverage: none
- name: Install Composer dependencies
uses: ./.github/actions/install-vendor
- name: Ensure that the root dependencies are updated correctly
run: make vendor_install
- name: Install PHP-CS-Fixer
uses: ./.github/actions/install-tool
with:
vendor-bin-tool: php-cs-fixer
makefile-command: php_cs_fixer_install
- name: Install the Composer dependencies
uses: ramsey/composer-install@3cf229dc2919194e9e36783941438d17239e8520 # 3.1.1
with:
working-directory: 'composer-root-version-checker'
- name: Lint CS
run: cd composer-root-version-checker; make cs_lint
composer-root-version:
runs-on: ubuntu-latest
name: Tests
strategy:
fail-fast: false
matrix:
php: [ '8.5' ]
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Setup PHP
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # 2.36.0
with:
php-version: "${{ matrix.php }}"
tools: composer
- name: Install the Composer dependencies
uses: ramsey/composer-install@3cf229dc2919194e9e36783941438d17239e8520 # 3.1.1
with:
working-directory: 'composer-root-version-checker'
- name: Runs the tests
run: cd composer-root-version-checker; make test
# This is a "trick", a meta task which does not change, and we can use in
# the protected branch rules as opposed to the tests one above which
# may change regularly.
validate-tests:
name: RootVersionChecker Status
runs-on: ubuntu-latest
needs:
- cs-lint
- composer-root-version
if: always()
steps:
- name: Successful run
if: ${{ !(contains(needs.*.result, 'failure')) }}
run: exit 0
- name: Failing run
if: ${{ contains(needs.*.result, 'failure') }}
run: exit 1
update-composer-root-version:
name: Update the Composer root version
if: ${{ github.repository == 'humbug/php-scoper' && github.ref_name == 'main' }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
ref: ${{ github.head_ref }}
fetch-depth: '0' # Ensures the tags are fetched
token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup PHP
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # 2.36.0
with:
php-version: '8.5'
tools: composer
coverage: none
- name: Install the Composer dependencies
uses: ramsey/composer-install@3cf229dc2919194e9e36783941438d17239e8520 # 3.1.1
with:
working-directory: 'composer-root-version-checker'
- name: Dump the Composer too version
working-directory: composer-root-version-checker
run: make dump_root_version
- name: Check for changes
run: |
if git diff --exit-code; then
echo "🟢 No change detected."
echo "composer_root_version_changed=false" >> $GITHUB_ENV
else
echo "composer_root_version_changed=true" >> $GITHUB_ENV
fi
- name: Create Pull Request
if: env.composer_root_version_changed == 'true'
uses: peter-evans/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # v8.0.0
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch-suffix: random
delete-branch: true
title: "build: Update the Composer root version"
committer: "php-scoper-bot <[email protected]>"
commit-message: "Update the Composer root version"