Files
actions/php-composer

ivuorinen/actions/php-composer

Run Composer Install

Description

Runs Composer install on a repository with advanced caching and configuration.

Inputs

name description required default
php

PHP Version to use.

true 8.4
extensions

Comma-separated list of PHP extensions to install

false mbstring, xml, zip, curl, json
tools

Comma-separated list of Composer tools to install

false composer:v2
args

Arguments to pass to Composer.

false --no-progress --prefer-dist --optimize-autoloader
composer-version

Composer version to use (1 or 2)

false 2
stability

Minimum stability (stable, RC, beta, alpha, dev)

false stable
cache-directories

Additional directories to cache (comma-separated)

false ""
token

GitHub token for private repository access

false ${{ github.token }}
max-retries

Maximum number of retry attempts for Composer commands

false 3

Outputs

name description
lock

composer.lock or composer.json file hash

php-version

Installed PHP version

composer-version

Installed Composer version

cache-hit

Indicates if there was a cache hit

Runs

This action is a composite action.

Usage

- uses: ivuorinen/actions/php-composer@main
  with:
    php:
    # PHP Version to use.
    #
    # Required: true
    # Default: 8.4

    extensions:
    # Comma-separated list of PHP extensions to install
    #
    # Required: false
    # Default: mbstring, xml, zip, curl, json

    tools:
    # Comma-separated list of Composer tools to install
    #
    # Required: false
    # Default: composer:v2

    args:
    # Arguments to pass to Composer.
    #
    # Required: false
    # Default: --no-progress --prefer-dist --optimize-autoloader

    composer-version:
    # Composer version to use (1 or 2)
    #
    # Required: false
    # Default: 2

    stability:
    # Minimum stability (stable, RC, beta, alpha, dev)
    #
    # Required: false
    # Default: stable

    cache-directories:
    # Additional directories to cache (comma-separated)
    #
    # Required: false
    # Default: ""

    token:
    # GitHub token for private repository access
    #
    # Required: false
    # Default: ${{ github.token }}

    max-retries:
    # Maximum number of retry attempts for Composer commands
    #
    # Required: false
    # Default: 3