Magento 2 Supported Versions
A GitHub Action that computes the currently supported GitHub Actions Matrix for Magento 2 Versions
All data comes from:
Inputs
See the action.yml
| Input | Description | Required | Default |
|---|---|---|---|
| kind | The "kind" of support you're targeting for your package. See Kinds. | false | 'currently-supported' |
| project | The project to return the supported versions for. Allowed values are mage-os, mage-os-minimal, and magento-open-source |
false | 'magento-open-source' |
| custom_versions | The versions you want to support, as a comma-separated string, i.e. 'magento/project-community-edition:2.3.7-p3, magento/project-community-edition:2.4.2-p2' | false | '' |
| recent_time_frame | The time frame (from today) used when kind is recent. Combination of years (y), months (m), and days (d), e.g. 2y 2m 2d. |
false | '2y' |
| include_services | Whether to include a services key in each matrix entry with GitHub Actions service container configurations for MySQL, search engine, RabbitMQ, and cache. |
false | 'true' |
| service_preferences | Comma-separated list of service implementations to prefer (e.g. elasticsearch,valkey). See Service preferences. |
false | '' |
Kinds
currently-supported- The currently supported Magento Open Source versions by Adobe.latest- The latest version of Magento only.custom- A custom subset of the versions, as specified by you. Requirescustom_versionssibling key.usable- All versions of Magento, minus any that can no longer be installed or used under normal circumstances.nightly- The nightly version of Magento (only available viahttps://upstream-nightly.mage-os.org)recent- Versions released within a configurable time window from today (seerecent_time_frame).all- All versions of Magento (including patched/unpatched versions).
Projects
mage-osmage-os-minimalmagento-open-source(default)
Service preferences
When include_services: true (the default), each matrix entry is enriched with a services map. Some tiers of services (for example, search) have more than one valid implementation across the supported Magento versions:
- search:
opensearchorelasticsearch - cache:
valkeyorredis
By default the action picks opensearch over elasticsearch and valkey over redis wherever both are available for the matrix entry's Magento version. service_preferences lets the caller override that default pick by naming the implementation they want.
Tiers without a preference fall back to the per-version default pick. Your preferences are selective, not exclusive.
Format
A comma-separated list of service implementation names. Whitespace around names is tolerated.
with:
service_preferences: elasticsearch,valkey
Accepted names
| Name | Tier |
|---|---|
mysql |
db |
elasticsearch |
search |
opensearch |
search |
rabbitmq |
queue |
redis |
cache |
valkey |
cache |
Example
- uses: graycoreio/github-actions-magento2/supported-version@v8.5.0 # x-release-please-version
id: supported-version
with:
kind: currently-supported
service_preferences: opensearch,valkey
Usage
name: Use Supported Versions
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
compute_matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.supported-version.outputs.matrix }}
steps:
- uses: graycoreio/github-actions-magento2/supported-version@v8.5.0 # x-release-please-version
id: supported-version
- run: echo ${{ steps.supported-version.outputs.matrix }}