Verifying requirements of composer packages of a GitHub organization
Clone the repository and install dependencies.
git clone git@github.com:arueckauer/package-info.git
cd package-info
composer i
The application comes with sample configurations for various PHP framework organizations. Copy one of the config\autoload\local-*.dist
files to config\autoload\local.php
. Or alternatively create your own configuration based on any of the sample configurations.
Place your personal access token in github_api_token
and provide a cache_file_path
.
github_api_token
Your personal access tokens (see GitHub / Settings / Developer settings)organizations
An array of organization names whose repositories will be checked.ignore_repositories
An array of package names, that will be ignored and thus not checked.ignore_branches
An array of branch names, that will be ignored and thus not checked.cache_file_path
Location of the cache path.
There are three commands available.
This will be the first step. To not repeatedly fetch all information from GitHub, package information is cached. To build the cache, execute the following command. Depending on the size of the organization, this may take a while.
php bin/console cache:build
This command shows information such as available heads (branches, releases and pull requests) for a single package.
php bin/console get <package-name>
The check command performs the actual check against given requirements.
Examples:
To check which repositories are supporting PHP 8.1, run the following command.
php bin/console check -r php:^8.1
The results of the previous command include branches and pull requests. To check only releases, run the following command.
php bin/console check -r php:^8.1 -t release
To include only repositories of a specific organization, run the following command.
php bin/console check -r php:^8.1 -vendor mezzio
For a complete list of options, execute the following command.
php bin/console help check