Skip to content

Latest commit

 

History

History
64 lines (52 loc) · 4 KB

File metadata and controls

64 lines (52 loc) · 4 KB

Integration Tests for a Magento Package

A Github Workflow that runs the Integration Tests of a Magento Package

Inputs

See the integration.yaml

Input Description Required Default
matrix JSON string of version matrix for Magento. Must include a services key (pass include_services: true to the supported-version action). true NULL
fail-fast Same as Github's fail-fast false true
package_name The name of the package true NULL
use_local_source Whether or not you want to test your local package or not. false true
source_folder The source folder of the package false $GITHUB_WORKSPACE
magento_directory The folder where Magento will be installed false ../magento2
magento_repository Where to install Magento from false https://mirror.mage-os.org/
test_command The integration test command to run false "../../../vendor/bin/phpunit"
composer_cache_key A key to version the composer cache. Can be incremented if you need to bust the cache. false ""

Secrets

Input Description Required Default
composer_auth JSON string of composer credentials false NULL

Matrix Format

The Magento matrix format outlined by the supported versions action.

Usage

name: Integration Test

on:
  push:
    branches:
    - main
  pull_request:
    branches:
    - main

jobs:
  compute_matrix:
      runs-on: ubuntu-latest
      outputs:
        matrix: ${{ steps.supported-version.outputs.matrix }}
      steps:
        - uses: actions/checkout@v6
        - uses: graycoreio/github-actions-magento2/supported-version@main
          with:
            include_services: true
          id: supported-version
  integration-workflow:
    needs: compute_matrix
    uses: graycoreio/github-actions-magento2/.github/workflows/integration.yaml@main
    with:
      package_name: my-vendor/package
      matrix: ${{ needs.compute_matrix.outputs.matrix }}
      test_command: ../../../vendor/bin/phpunit ../../../vendor/my-vendor/package/Test/Integration
    secrets:
      composer_auth: ${{ secrets.COMPOSER_AUTH }}