mirror of
https://github.com/graycoreio/github-actions-magento2.git
synced 2026-06-15 05:51:20 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9992afe6f0 | |||
| f48c544053 | |||
| 21c3bb3436 | |||
| 0f072ba9a0 | |||
| 01cbea18c9 | |||
| 2f1b2eaa5d | |||
| 157b6877e2 | |||
| 0008e8642d |
@@ -39,7 +39,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: ./supported-version
|
- uses: ./supported-version
|
||||||
with:
|
with:
|
||||||
kind: all
|
kind: currently-supported
|
||||||
id: supported-version
|
id: supported-version
|
||||||
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,9 @@ on:
|
|||||||
- "supported-version/**"
|
- "supported-version/**"
|
||||||
- "!(**/*.md)"
|
- "!(**/*.md)"
|
||||||
|
|
||||||
|
env:
|
||||||
|
MAGENTO_COMPOSER_REPO: "https://mirror.mage-os.org/"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
compute_matrix:
|
compute_matrix:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -30,7 +33,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: ./supported-version
|
- uses: ./supported-version
|
||||||
with:
|
with:
|
||||||
kind: all
|
kind: currently-supported
|
||||||
id: supported-version
|
id: supported-version
|
||||||
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
||||||
|
|
||||||
@@ -49,3 +52,5 @@ jobs:
|
|||||||
magento_version: ${{ matrix.magento }}
|
magento_version: ${{ matrix.magento }}
|
||||||
package_name: mage-os/magento2-demo-package
|
package_name: mage-os/magento2-demo-package
|
||||||
source_folder: $GITHUB_WORKSPACE/_test/demo-package
|
source_folder: $GITHUB_WORKSPACE/_test/demo-package
|
||||||
|
composer_auth: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
magento_repository: ${{ env.MAGENTO_COMPOSER_REPO }}
|
||||||
@@ -30,7 +30,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- uses: ./supported-version
|
- uses: ./supported-version
|
||||||
with:
|
with:
|
||||||
kind: all
|
kind: currently-supported
|
||||||
id: supported-version
|
id: supported-version
|
||||||
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
- run: echo ${{ steps.supported-version.outputs.matrix }}
|
||||||
integration-workflow:
|
integration-workflow:
|
||||||
@@ -42,3 +42,5 @@ jobs:
|
|||||||
matrix: ${{ needs.compute_matrix.outputs.matrix }}
|
matrix: ${{ needs.compute_matrix.outputs.matrix }}
|
||||||
test_command: ../../../vendor/bin/phpunit ../../../vendor/mage-os/magento2-demo-package/Test/Integration
|
test_command: ../../../vendor/bin/phpunit ../../../vendor/mage-os/magento2-demo-package/Test/Integration
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
secrets:
|
||||||
|
composer_auth: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ on:
|
|||||||
env:
|
env:
|
||||||
PSEUDO_REPO_FOLDER: ../magento_repo
|
PSEUDO_REPO_FOLDER: ../magento_repo
|
||||||
magento_folder: ../magento2
|
magento_folder: ../magento2
|
||||||
|
MAGENTO_COMPOSER_REPO: "https://mirror.mage-os.org/"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
compute_matrix:
|
compute_matrix:
|
||||||
@@ -63,20 +64,26 @@ jobs:
|
|||||||
key: setup-magento-ci | ${{ runner.os }} | ${{ matrix.magento }}
|
key: setup-magento-ci | ${{ runner.os }} | ${{ matrix.magento }}
|
||||||
path: ${{ env.PSEUDO_STORE_FULL_PATH }}
|
path: ${{ env.PSEUDO_STORE_FULL_PATH }}
|
||||||
|
|
||||||
- run: composer create-project --repository-url="https://mirror.mage-os.org" "${{ matrix.magento }}" "${{ env.PSEUDO_REPO_FOLDER }}" --no-install
|
- run: composer create-project --repository-url="${{ env.MAGENTO_COMPOSER_REPO }}" "${{ matrix.magento }}" "${{ env.PSEUDO_REPO_FOLDER }}" --no-install
|
||||||
name: Create Store to simulate a real Magento store in a real repo.
|
name: Create Store to simulate a real Magento store in a real repo.
|
||||||
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|
||||||
- uses: ./fix-magento-install
|
- uses: ./fix-magento-install
|
||||||
name: Fix Magento Out of Box Install Issues
|
name: Fix Magento Out of Box Install Issues
|
||||||
with:
|
with:
|
||||||
magento_directory: ${{ env.PSEUDO_REPO_FOLDER }}
|
magento_directory: ${{ env.PSEUDO_REPO_FOLDER }}
|
||||||
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|
||||||
- run: composer install
|
- run: composer install
|
||||||
shell: bash
|
shell: bash
|
||||||
working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
|
working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
|
||||||
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|
||||||
- run: git init && git config user.email "you@example.com" && git config user.name "Your Name" && git add . && git commit -m "init" && git clean -fdx
|
- run: git init && git config user.email "you@example.com" && git config user.name "Your Name" && git add . && git commit -m "init" && git clean -fdx
|
||||||
working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
|
working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
|
||||||
@@ -92,6 +99,7 @@ jobs:
|
|||||||
tools: composer:v${{ matrix.composer }}
|
tools: composer:v${{ matrix.composer }}
|
||||||
mode: store
|
mode: store
|
||||||
working-directory: ${{ env.magento_folder }}
|
working-directory: ${{ env.magento_folder }}
|
||||||
|
composer_auth: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|
||||||
- uses: graycoreio/github-actions-magento2/cache-magento@main
|
- uses: graycoreio/github-actions-magento2/cache-magento@main
|
||||||
with:
|
with:
|
||||||
@@ -102,6 +110,8 @@ jobs:
|
|||||||
name: Composer install
|
name: Composer install
|
||||||
shell: bash
|
shell: bash
|
||||||
working-directory: ${{ steps.setup-magento.outputs.path }}
|
working-directory: ${{ steps.setup-magento.outputs.path }}
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|
||||||
setup-magento-extension:
|
setup-magento-extension:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -111,17 +121,21 @@ jobs:
|
|||||||
- uses: ./setup-magento
|
- uses: ./setup-magento
|
||||||
id: setup-magento
|
id: setup-magento
|
||||||
with:
|
with:
|
||||||
php-version: 8.1
|
php-version: 8.4
|
||||||
tools: composer:v2
|
tools: composer:v2
|
||||||
mode: extension
|
mode: extension
|
||||||
magento_version: magento/project-community-edition:2.4.5-p1
|
magento_repository: ${{ env.MAGENTO_COMPOSER_REPO }}
|
||||||
|
composer_auth: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
magento_version: magento/project-community-edition:2.4.8
|
||||||
|
|
||||||
- uses: graycoreio/github-actions-magento2/cache-magento@main
|
- uses: graycoreio/github-actions-magento2/cache-magento@main
|
||||||
with:
|
with:
|
||||||
mode: 'extension'
|
mode: 'extension'
|
||||||
composer_cache_key: 'magento/project-community-edition:2.4.5-p1'
|
composer_cache_key: 'magento/project-community-edition:2.4.8'
|
||||||
|
|
||||||
- run: composer install
|
- run: composer install
|
||||||
name: Composer install
|
name: Composer install
|
||||||
shell: bash
|
shell: bash
|
||||||
working-directory: ${{ steps.setup-magento.outputs.path }}
|
working-directory: ${{ steps.setup-magento.outputs.path }}
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
|
||||||
|
|||||||
@@ -205,6 +205,11 @@ jobs:
|
|||||||
sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
|
sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
|
||||||
mysqldump --version
|
mysqldump --version
|
||||||
|
|
||||||
|
- name: Enable log-bin-trust-function-creators
|
||||||
|
run: |
|
||||||
|
mysql -h127.0.0.1 -uroot -prootpassword -e "SET GLOBAL log_bin_trust_function_creators = 1;"
|
||||||
|
|
||||||
|
|
||||||
- run: ${{ inputs.test_command }}
|
- run: ${{ inputs.test_command }}
|
||||||
working-directory: ${{ inputs.magento_directory }}/dev/tests/integration
|
working-directory: ${{ inputs.magento_directory }}/dev/tests/integration
|
||||||
name: Run Integration Tests
|
name: Run Integration Tests
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{".":"2.0.0"}
|
{".":"3.0.0"}
|
||||||
|
|||||||
@@ -2,6 +2,25 @@
|
|||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||||
|
|
||||||
|
## [3.0.0](https://github.com/graycoreio/github-actions-magento2/compare/v2.0.0...v3.0.0) (2025-04-09)
|
||||||
|
|
||||||
|
|
||||||
|
### ⚠ BREAKING CHANGES
|
||||||
|
|
||||||
|
* **coding-standard:** use magento/php-compatibility-fork ([#190](https://github.com/graycoreio/github-actions-magento2/issues/190))
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **setup-magento:** add support for composer auth ([#193](https://github.com/graycoreio/github-actions-magento2/issues/193)) ([01cbea1](https://github.com/graycoreio/github-actions-magento2/commit/01cbea18c9649984893afd432a1cdfa4568a5273))
|
||||||
|
* **supported-version:** add recent kind ([#188](https://github.com/graycoreio/github-actions-magento2/issues/188)) ([2f1b2ea](https://github.com/graycoreio/github-actions-magento2/commit/2f1b2eaa5da485a687ecda0fdbf38055e13c5a86))
|
||||||
|
* **supported-version:** add v2.4.4-p13, v2.4.5-p12, v2.4.6-p10, v2.4.7-p5 and v2.4.8 ([#187](https://github.com/graycoreio/github-actions-magento2/issues/187)) ([21c3bb3](https://github.com/graycoreio/github-actions-magento2/commit/21c3bb34363c94003bf031f837c1599b8e08f25b))
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **coding-standard:** use magento/php-compatibility-fork ([#190](https://github.com/graycoreio/github-actions-magento2/issues/190)) ([0008e86](https://github.com/graycoreio/github-actions-magento2/commit/0008e8642db9b997005c3848cf532f4b1cf0a17d))
|
||||||
|
* **supported-version:** adjust failing tests ([#195](https://github.com/graycoreio/github-actions-magento2/issues/195)) ([f48c544](https://github.com/graycoreio/github-actions-magento2/commit/f48c544053e49d76c4ac5aac6743ee6521a700aa))
|
||||||
|
|
||||||
## [2.0.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.6.0...v2.0.0) (2025-03-25)
|
## [2.0.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.6.0...v2.0.0) (2025-03-25)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
A Github Action that runs the Magento Coding Standard.
|
A Github Action that runs the Magento Coding Standard.
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> This action is only compatible with Magento v2.4.4+.
|
||||||
|
|
||||||
## Inputs
|
## Inputs
|
||||||
|
|
||||||
See the [action.yml](./action.yml)
|
See the [action.yml](./action.yml)
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ runs:
|
|||||||
- name: Register Coding Standard
|
- name: Register Coding Standard
|
||||||
shell: bash
|
shell: bash
|
||||||
working-directory: standard
|
working-directory: standard
|
||||||
run: vendor/bin/phpcs --config-set installed_paths ${{ github.workspace }}/standard/vendor/magento/magento-coding-standard,${{ github.workspace }}/standard/vendor/phpcompatibility/php-compatibility
|
run: vendor/bin/phpcs --config-set installed_paths ${{ github.workspace }}/standard/vendor/magento/magento-coding-standard,${{ github.workspace }}/standard/vendor/magento/php-compatibility-fork
|
||||||
|
|
||||||
- name: Set ignore warnings flag
|
- name: Set ignore warnings flag
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@graycoreio/github-actions-magento2",
|
"name": "@graycoreio/github-actions-magento2",
|
||||||
"version": "2.0.0",
|
"version": "3.0.0",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "@graycoreio/github-actions-magento2",
|
"name": "@graycoreio/github-actions-magento2",
|
||||||
"version": "2.0.0",
|
"version": "3.0.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "^1.10.0"
|
"@actions/core": "^1.10.0"
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@graycoreio/github-actions-magento2",
|
"name": "@graycoreio/github-actions-magento2",
|
||||||
"version": "2.0.0",
|
"version": "3.0.0",
|
||||||
"description": "Github Actions for Magento 2",
|
"description": "Github Actions for Magento 2",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "cd supported-version && npm run test && cd -",
|
"test": "cd supported-version && npm run test && cd -",
|
||||||
|
|||||||
@@ -45,6 +45,10 @@ inputs:
|
|||||||
default: "."
|
default: "."
|
||||||
description: "The working directory to run the action in."
|
description: "The working directory to run the action in."
|
||||||
|
|
||||||
|
composer_auth:
|
||||||
|
required: false
|
||||||
|
description: "Composer Authentication Credentials"
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
path:
|
path:
|
||||||
description: "The absolute path to where Magento was set up."
|
description: "The absolute path to where Magento was set up."
|
||||||
@@ -83,6 +87,8 @@ runs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
name: Create Magento ${{ inputs.magento_version }} Project
|
name: Create Magento ${{ inputs.magento_version }} Project
|
||||||
if: inputs.mode == 'extension'
|
if: inputs.mode == 'extension'
|
||||||
|
env:
|
||||||
|
COMPOSER_AUTH: ${{ inputs.composer_auth }}
|
||||||
|
|
||||||
- uses: graycoreio/github-actions-magento2/fix-magento-install@main
|
- uses: graycoreio/github-actions-magento2/fix-magento-install@main
|
||||||
name: Fix Magento Out of Box Install Issues
|
name: Fix Magento Out of Box Install Issues
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ description: "A Github Action that computes the Github Actions matrix for the ch
|
|||||||
inputs:
|
inputs:
|
||||||
kind:
|
kind:
|
||||||
required: false
|
required: false
|
||||||
description: "The kind of versions you want to return. Allowed values are `currently-supported`, `latest`, `custom`, `nightly` and `all`"
|
description: "The kind of versions you want to return. Allowed values are `currently-supported`, `latest`, `custom`, `nightly`, `recent` and `all`"
|
||||||
default: "currently-supported"
|
default: "currently-supported"
|
||||||
project:
|
project:
|
||||||
required: false
|
required: false
|
||||||
@@ -17,6 +17,11 @@ inputs:
|
|||||||
description: "The specific custom versions of Magento that you want to use. Only applies when `kind` is `custom`"
|
description: "The specific custom versions of Magento that you want to use. Only applies when `kind` is `custom`"
|
||||||
default: ""
|
default: ""
|
||||||
|
|
||||||
|
recent_time_frame:
|
||||||
|
required: false
|
||||||
|
default: "2y"
|
||||||
|
description: "The time frame (from today). Only used in `recent` kind. String that defines a time duration using a combination of years (y), months (m), and days (d). Each unit is optional and can appear in any order, separated by spaces. For example `2y 2m 2d`. "
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
matrix:
|
matrix:
|
||||||
description: "The Github Actions matrix of software technologies required to run Magento."
|
description: "The Github Actions matrix of software technologies required to run Magento."
|
||||||
|
|||||||
Vendored
+6
-66
File diff suppressed because one or more lines are too long
@@ -9,12 +9,13 @@ export async function run(): Promise<void> {
|
|||||||
const kind = core.getInput("kind");
|
const kind = core.getInput("kind");
|
||||||
const customVersions = core.getInput("custom_versions");
|
const customVersions = core.getInput("custom_versions");
|
||||||
const project = core.getInput("project");
|
const project = core.getInput("project");
|
||||||
|
const recent_time_frame = core.getInput("recent_time_frame");
|
||||||
|
|
||||||
validateProject(<any>project)
|
validateProject(<any>project)
|
||||||
|
|
||||||
validateKind(<any>kind, customVersions ? customVersions.split(',') : undefined);
|
validateKind(<any>kind, customVersions ? customVersions.split(',') : undefined);
|
||||||
|
|
||||||
core.setOutput('matrix', getMatrixForKind(kind, project, customVersions));
|
core.setOutput('matrix', getMatrixForKind(kind, project, customVersions, recent_time_frame));
|
||||||
}
|
}
|
||||||
catch (error) {
|
catch (error) {
|
||||||
core.setFailed(error.message);
|
core.setFailed(error.message);
|
||||||
|
|||||||
@@ -45,30 +45,37 @@ describe('getCurrentlySupportedVersions for magento-open-source', () => {
|
|||||||
'magento/project-community-edition:2.4.7-p3',
|
'magento/project-community-edition:2.4.7-p3',
|
||||||
]],
|
]],
|
||||||
['2025-08-08T00:00:00Z', 'Day Before v2.4.5 EoL', [
|
['2025-08-08T00:00:00Z', 'Day Before v2.4.5 EoL', [
|
||||||
'magento/project-community-edition:2.4.5-p11',
|
'magento/project-community-edition:2.4.5-p12',
|
||||||
'magento/project-community-edition:2.4.6-p9',
|
'magento/project-community-edition:2.4.6-p10',
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2025-08-09T00:00:00Z', 'Day of v2.4.5 EoL', [
|
['2025-08-09T00:00:00Z', 'Day of v2.4.5 EoL', [
|
||||||
'magento/project-community-edition:2.4.5-p11',
|
'magento/project-community-edition:2.4.5-p12',
|
||||||
'magento/project-community-edition:2.4.6-p9',
|
'magento/project-community-edition:2.4.6-p10',
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2025-08-10T00:00:00Z', 'Day after v2.4.5 EoL', [
|
['2025-08-10T00:00:00Z', 'Day after v2.4.5 EoL', [
|
||||||
'magento/project-community-edition:2.4.6-p9',
|
'magento/project-community-edition:2.4.6-p10',
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2025-12-31T00:00:00Z', 'End of 2025', [
|
['2025-12-31T00:00:00Z', 'End of 2025', [
|
||||||
'magento/project-community-edition:2.4.6-p9',
|
'magento/project-community-edition:2.4.6-p10',
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2026-03-15T00:00:00Z', 'Day after v2.4.6 EoL', [
|
['2026-03-15T00:00:00Z', 'Day after v2.4.6 EoL', [
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2027-04-09T00:00:00Z', 'Day of v2.4.7 EoL', [
|
['2027-04-09T00:00:00Z', 'Day of v2.4.7 EoL', [
|
||||||
'magento/project-community-edition:2.4.7-p4',
|
'magento/project-community-edition:2.4.7-p5',
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
['2027-04-10T00:00:00Z', 'Day after v2.4.7 EoL', [
|
['2027-04-10T00:00:00Z', 'Day after v2.4.7 EoL', [
|
||||||
|
'magento/project-community-edition:2.4.8',
|
||||||
]],
|
]],
|
||||||
])(
|
])(
|
||||||
'supportedVersions for %s',
|
'supportedVersions for %s',
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ export const KNOWN_KINDS = {
|
|||||||
'latest': true,
|
'latest': true,
|
||||||
'custom': true,
|
'custom': true,
|
||||||
'nightly': true,
|
'nightly': true,
|
||||||
|
'recent': true,
|
||||||
'all': true,
|
'all': true,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,75 @@
|
|||||||
|
import { Project } from "../project/projects";
|
||||||
|
import { getRecentVersions } from "./recent";
|
||||||
|
|
||||||
|
describe('recent for magento-open-source', () => {
|
||||||
|
const project: Project = "magento-open-source";
|
||||||
|
|
||||||
|
test.each([
|
||||||
|
['2024-12-31T00:00:00Z', 'End of 2024', [
|
||||||
|
"magento/project-community-edition:2.4.4-p7",
|
||||||
|
"magento/project-community-edition:2.4.4-p8",
|
||||||
|
"magento/project-community-edition:2.4.4-p9",
|
||||||
|
"magento/project-community-edition:2.4.4-p10",
|
||||||
|
"magento/project-community-edition:2.4.4-p11",
|
||||||
|
"magento/project-community-edition:2.4.5-p6",
|
||||||
|
"magento/project-community-edition:2.4.5-p7",
|
||||||
|
"magento/project-community-edition:2.4.5-p8",
|
||||||
|
"magento/project-community-edition:2.4.5-p9",
|
||||||
|
"magento/project-community-edition:2.4.5-p10",
|
||||||
|
"magento/project-community-edition:2.4.6-p4",
|
||||||
|
"magento/project-community-edition:2.4.6-p5",
|
||||||
|
"magento/project-community-edition:2.4.6-p6",
|
||||||
|
"magento/project-community-edition:2.4.6-p7",
|
||||||
|
"magento/project-community-edition:2.4.6-p8",
|
||||||
|
"magento/project-community-edition:2.4.7",
|
||||||
|
"magento/project-community-edition:2.4.7-p1",
|
||||||
|
"magento/project-community-edition:2.4.7-p2",
|
||||||
|
"magento/project-community-edition:2.4.7-p3",
|
||||||
|
]],
|
||||||
|
['2025-04-08T00:00:00Z', 'The day Damien wrote a test.', [
|
||||||
|
"magento/project-community-edition:2.4.4-p9",
|
||||||
|
"magento/project-community-edition:2.4.4-p10",
|
||||||
|
"magento/project-community-edition:2.4.4-p11",
|
||||||
|
"magento/project-community-edition:2.4.4-p12",
|
||||||
|
"magento/project-community-edition:2.4.5-p8",
|
||||||
|
"magento/project-community-edition:2.4.5-p9",
|
||||||
|
"magento/project-community-edition:2.4.5-p10",
|
||||||
|
"magento/project-community-edition:2.4.5-p11",
|
||||||
|
"magento/project-community-edition:2.4.6-p6",
|
||||||
|
"magento/project-community-edition:2.4.6-p7",
|
||||||
|
"magento/project-community-edition:2.4.6-p8",
|
||||||
|
"magento/project-community-edition:2.4.6-p9",
|
||||||
|
"magento/project-community-edition:2.4.7-p1",
|
||||||
|
"magento/project-community-edition:2.4.7-p2",
|
||||||
|
"magento/project-community-edition:2.4.7-p3",
|
||||||
|
"magento/project-community-edition:2.4.7-p4",
|
||||||
|
]],
|
||||||
|
['2025-08-08T00:00:00Z', 'Day Before v2.4.5 EoL', [
|
||||||
|
"magento/project-community-edition:2.4.4-p10",
|
||||||
|
"magento/project-community-edition:2.4.4-p11",
|
||||||
|
"magento/project-community-edition:2.4.4-p12",
|
||||||
|
"magento/project-community-edition:2.4.4-p13",
|
||||||
|
"magento/project-community-edition:2.4.5-p9",
|
||||||
|
"magento/project-community-edition:2.4.5-p10",
|
||||||
|
"magento/project-community-edition:2.4.5-p11",
|
||||||
|
"magento/project-community-edition:2.4.5-p12",
|
||||||
|
"magento/project-community-edition:2.4.6-p7",
|
||||||
|
"magento/project-community-edition:2.4.6-p8",
|
||||||
|
"magento/project-community-edition:2.4.6-p9",
|
||||||
|
"magento/project-community-edition:2.4.6-p10",
|
||||||
|
"magento/project-community-edition:2.4.7-p2",
|
||||||
|
"magento/project-community-edition:2.4.7-p3",
|
||||||
|
"magento/project-community-edition:2.4.7-p4",
|
||||||
|
"magento/project-community-edition:2.4.7-p5",
|
||||||
|
"magento/project-community-edition:2.4.8",
|
||||||
|
]],
|
||||||
|
])(
|
||||||
|
'recent for %s',
|
||||||
|
(date, description ,result) => {
|
||||||
|
expect(
|
||||||
|
getRecentVersions(project, new Date(date), '360d')
|
||||||
|
).toEqual(result);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
})
|
||||||
|
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
import { PackageMatrixVersion } from '../matrix/matrix-type';
|
||||||
|
import { getIndividualVersionsForProject } from "../versions/get-versions-for-project";
|
||||||
|
|
||||||
|
export const getRecentVersions = (project: string, date: Date, durationStr: string): string[] => {
|
||||||
|
const regex = /(?:(\d+)\s*y)?\s*(?:(\d+)\s*m)?\s*(?:(\d+)\s*d)?/i;
|
||||||
|
const match = durationStr.match(regex);
|
||||||
|
|
||||||
|
if (!match) {
|
||||||
|
throw new Error(`Invalid duration string: ${durationStr}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
const years = parseInt(match[1] || "0", 10);
|
||||||
|
const months = parseInt(match[2] || "0", 10);
|
||||||
|
const days = parseInt(match[3] || "0", 10);
|
||||||
|
|
||||||
|
const allVersions = getIndividualVersionsForProject(project)
|
||||||
|
return Object.entries(<Record<string,PackageMatrixVersion>>allVersions)
|
||||||
|
.filter(([key, value]) => {
|
||||||
|
const dayOfRelease = new Date(value.release);
|
||||||
|
dayOfRelease.setSeconds(dayOfRelease.getSeconds() + 1);
|
||||||
|
const dateAfterRelease = new Date(value.release);
|
||||||
|
|
||||||
|
dateAfterRelease.setFullYear(dateAfterRelease.getFullYear() + years);
|
||||||
|
dateAfterRelease.setMonth(dateAfterRelease.getMonth() + months);
|
||||||
|
dateAfterRelease.setDate(dateAfterRelease.getDate() + days);
|
||||||
|
|
||||||
|
|
||||||
|
return date >= dayOfRelease && date <= dateAfterRelease;
|
||||||
|
})
|
||||||
|
.map(([key, value]) => key);
|
||||||
|
}
|
||||||
@@ -5,8 +5,9 @@ import nightlyJson from '../kind/special-versions/nightly.json';
|
|||||||
import { getDayBefore } from '../nightly/get-day-before';
|
import { getDayBefore } from '../nightly/get-day-before';
|
||||||
import { getCurrentlySupportedVersions } from "../kind/get-currently-supported";
|
import { getCurrentlySupportedVersions } from "../kind/get-currently-supported";
|
||||||
import { amendMatrixForNext } from "../nightly/amend-matrix-for-next";
|
import { amendMatrixForNext } from "../nightly/amend-matrix-for-next";
|
||||||
|
import { getRecentVersions } from "../kind/recent";
|
||||||
|
|
||||||
export const getMatrixForKind = (kind: string, project: string, versions = "") => {
|
export const getMatrixForKind = (kind: string, project: string, versions = "", recent_time_frame = '2y') => {
|
||||||
|
|
||||||
switch(kind){
|
switch(kind){
|
||||||
case 'latest':
|
case 'latest':
|
||||||
@@ -19,6 +20,8 @@ export const getMatrixForKind = (kind: string, project: string, versions = "") =
|
|||||||
return getMatrixForVersions(project, Object.keys(getIndividualVersionsForProject(project)));
|
return getMatrixForVersions(project, Object.keys(getIndividualVersionsForProject(project)));
|
||||||
case 'custom':
|
case 'custom':
|
||||||
return getMatrixForVersions(project, versions.split(","))
|
return getMatrixForVersions(project, versions.split(","))
|
||||||
|
case 'recent':
|
||||||
|
return getMatrixForVersions(project, getRecentVersions(project, new Date(), recent_time_frame));
|
||||||
default:
|
default:
|
||||||
throw new Error(`Unreachable kind: ${kind} discovered, please report to the maintainers.`);
|
throw new Error(`Unreachable kind: ${kind} discovered, please report to the maintainers.`);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,85 +72,102 @@
|
|||||||
"magento/project-community-edition:>=2.4.4 <2.4.5": {
|
"magento/project-community-edition:>=2.4.4 <2.4.5": {
|
||||||
"magento": "magento/project-community-edition:>=2.4.4 <2.4.5",
|
"magento": "magento/project-community-edition:>=2.4.4 <2.4.5",
|
||||||
"php": 8.1,
|
"php": 8.1,
|
||||||
"composer": "2.2.21",
|
"composer": "2.2.25",
|
||||||
"mysql": "mysql:8.0",
|
"mysql": "mysql:8.0",
|
||||||
"elasticsearch": "elasticsearch:7.17.5",
|
"elasticsearch": "elasticsearch:7.17.5",
|
||||||
"rabbitmq": "rabbitmq:3.9-management",
|
"rabbitmq": "rabbitmq:3.9-management",
|
||||||
"redis": "redis:6.2",
|
"redis": "redis:7.2",
|
||||||
"varnish": "varnish:7.3",
|
"varnish": "varnish:7.6",
|
||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.26",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2022-04-12T00:00:00+0000",
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2025-04-24T00:00:00+0000"
|
"eol": "2025-04-24T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:>=2.4.5 <2.4.6": {
|
"magento/project-community-edition:>=2.4.5 <2.4.6": {
|
||||||
"magento": "magento/project-community-edition:>=2.4.5 <2.4.6",
|
"magento": "magento/project-community-edition:>=2.4.5 <2.4.6",
|
||||||
"php": 8.1,
|
"php": 8.1,
|
||||||
"composer": "2.2.21",
|
"composer": "2.2.25",
|
||||||
"mysql": "mysql:8.0",
|
"mysql": "mysql:8.0",
|
||||||
"elasticsearch": "elasticsearch:7.17.5",
|
"elasticsearch": "elasticsearch:7.17.28",
|
||||||
"rabbitmq": "rabbitmq:3.11-management",
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
"redis": "redis:6.2",
|
"redis": "redis:7.2",
|
||||||
"varnish": "varnish:7.1",
|
"varnish": "varnish:7.6",
|
||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.26",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2023-08-08T00:00:00+0000",
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2025-08-09T00:00:00+0000"
|
"eol": "2025-08-09T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:>=2.4.6 <2.4.7": {
|
"magento/project-community-edition:>=2.4.6 <2.4.7": {
|
||||||
"magento": "magento/project-community-edition:>=2.4.6 <2.4.7",
|
"magento": "magento/project-community-edition:>=2.4.6 <2.4.7",
|
||||||
"php": 8.1,
|
"php": 8.2,
|
||||||
"composer": "2.2.21",
|
"composer": "2.2.25",
|
||||||
"mysql": "mysql:8.0",
|
"mysql": "mysql:8.0",
|
||||||
"elasticsearch": "elasticsearch:8.5.3",
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
"rabbitmq": "rabbitmq:3.9-management",
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
"redis": "redis:7.0",
|
"redis": "redis:7.2",
|
||||||
"varnish": "varnish:7.3",
|
"varnish": "varnish:7.6",
|
||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.26",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2023-03-14T00:00:00+0000",
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2026-03-14T00:00:00+0000"
|
"eol": "2026-03-14T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:>=2.4.7 <2.4.8": {
|
"magento/project-community-edition:>=2.4.7 <2.4.8": {
|
||||||
"magento": "magento/project-community-edition:>=2.4.7 <2.4.8",
|
"magento": "magento/project-community-edition:>=2.4.7 <2.4.8",
|
||||||
"php": 8.3,
|
"php": 8.3,
|
||||||
"composer": "2.7.4",
|
"composer": "2.8.8",
|
||||||
"mysql": "mariadb:10.6",
|
"mysql": "mysql:8.0",
|
||||||
"elasticsearch": "opensearch:2.12.0",
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
"rabbitmq": "rabbitmq:3.12-management",
|
|
||||||
"redis": "redis:7.2",
|
|
||||||
"varnish": "varnish:7.4",
|
|
||||||
"nginx": "nginx:1.26",
|
|
||||||
"os": "ubuntu-latest",
|
|
||||||
"release": "2024-04-09T00:00:00+0000",
|
|
||||||
"eol": "2027-04-09T00:00:00+0000"
|
|
||||||
},
|
|
||||||
"magento/project-community-edition": {
|
|
||||||
"magento": "magento/project-community-edition:>=2.4.7 <2.4.8",
|
|
||||||
"php": 8.3,
|
|
||||||
"composer": "2.7.4",
|
|
||||||
"mysql": "mariadb:10.6",
|
|
||||||
"elasticsearch": "elasticsearch:8.11.4",
|
|
||||||
"rabbitmq": "rabbitmq:3.12-management",
|
|
||||||
"redis": "redis:7.2",
|
|
||||||
"varnish": "varnish:7.4",
|
|
||||||
"nginx": "nginx:1.26",
|
|
||||||
"os": "ubuntu-latest",
|
|
||||||
"release": "2024-04-09T00:00:00+0000",
|
|
||||||
"eol": "2027-04-09T00:00:00+0000"
|
|
||||||
},
|
|
||||||
"magento/project-community-edition:next": {
|
|
||||||
"magento": "magento/project-community-edition:next",
|
|
||||||
"php": 8.3,
|
|
||||||
"composer": "2",
|
|
||||||
"mysql": "mariadb:10.6",
|
|
||||||
"elasticsearch": "elasticsearch:8.11.4",
|
|
||||||
"rabbitmq": "rabbitmq:3.13-management",
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
"redis": "redis:7.2",
|
"redis": "redis:7.2",
|
||||||
"varnish": "varnish:7.5",
|
"varnish": "varnish:7.6",
|
||||||
"nginx": "nginx:1.26",
|
"nginx": "nginx:1.26",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2015-11-17T00:00:00+0000",
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2027-04-09T00:00:00+0000"
|
"eol": "2027-04-09T00:00:00+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:>=2.4.8 <2.4.9": {
|
||||||
|
"magento": "magento/project-community-edition:>=2.4.8 <2.4.9",
|
||||||
|
"php": 8.4,
|
||||||
|
"composer": "2.8.8",
|
||||||
|
"mysql": "mysql:8.4",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:4.0-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"valkey": "valkey:8.0",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
|
"eol": "2028-04-09T00:00:00+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition": {
|
||||||
|
"magento": "magento/project-community-edition:>=2.4.8 <2.4.9",
|
||||||
|
"php": 8.4,
|
||||||
|
"composer": "2.8.8",
|
||||||
|
"mysql": "mysql:8.4",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:4.0-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"valkey": "valkey:8.0",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
|
"eol": "2028-04-09T00:00:00+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:next": {
|
||||||
|
"magento": "magento/project-community-edition:>=2.4.8 <2.4.9",
|
||||||
|
"php": 8.4,
|
||||||
|
"composer": "2.8.8",
|
||||||
|
"mysql": "mysql:8.4",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:4.0-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"valkey": "valkey:8.0",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
|
"eol": "2028-04-09T00:00:00+0000"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -361,6 +361,20 @@
|
|||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.22",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2025-02-11T00:00:00+0000",
|
"release": "2025-02-11T00:00:00+0000",
|
||||||
|
"eol": "2025-04-07T23:59:59+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:2.4.4-p13": {
|
||||||
|
"magento": "magento/project-community-edition:2.4.4-p13",
|
||||||
|
"php": 8.1,
|
||||||
|
"composer": "2.2.25",
|
||||||
|
"mysql": "mysql:8.0",
|
||||||
|
"elasticsearch": "elasticsearch:7.17.5",
|
||||||
|
"rabbitmq": "rabbitmq:3.9-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2025-04-24T00:00:00+0000"
|
"eol": "2025-04-24T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:2.4.5": {
|
"magento/project-community-edition:2.4.5": {
|
||||||
@@ -529,6 +543,20 @@
|
|||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.22",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2025-02-11T00:00:00+0000",
|
"release": "2025-02-11T00:00:00+0000",
|
||||||
|
"eol": "2025-04-07T23:59:59+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:2.4.5-p12": {
|
||||||
|
"magento": "magento/project-community-edition:2.4.5-p12",
|
||||||
|
"php": 8.1,
|
||||||
|
"composer": "2.2.25",
|
||||||
|
"mysql": "mysql:8.0",
|
||||||
|
"elasticsearch": "elasticsearch:7.17.28",
|
||||||
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2025-08-09T00:00:00+0000"
|
"eol": "2025-08-09T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:2.4.6": {
|
"magento/project-community-edition:2.4.6": {
|
||||||
@@ -669,6 +697,20 @@
|
|||||||
"nginx": "nginx:1.22",
|
"nginx": "nginx:1.22",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2025-02-11T00:00:00+0000",
|
"release": "2025-02-11T00:00:00+0000",
|
||||||
|
"eol": "2025-04-07T23:59:59+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:2.4.6-p10": {
|
||||||
|
"magento": "magento/project-community-edition:2.4.6-p10",
|
||||||
|
"php": 8.2,
|
||||||
|
"composer": "2.2.25",
|
||||||
|
"mysql": "mysql:8.0",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2026-03-14T00:00:00+0000"
|
"eol": "2026-03-14T00:00:00+0000"
|
||||||
},
|
},
|
||||||
"magento/project-community-edition:2.4.7": {
|
"magento/project-community-edition:2.4.7": {
|
||||||
@@ -739,6 +781,35 @@
|
|||||||
"nginx": "nginx:1.26",
|
"nginx": "nginx:1.26",
|
||||||
"os": "ubuntu-latest",
|
"os": "ubuntu-latest",
|
||||||
"release": "2025-02-11T00:00:00+0000",
|
"release": "2025-02-11T00:00:00+0000",
|
||||||
|
"eol": "2025-04-07T23:59:59+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:2.4.7-p5": {
|
||||||
|
"magento": "magento/project-community-edition:2.4.7-p5",
|
||||||
|
"php": 8.3,
|
||||||
|
"composer": "2.8.8",
|
||||||
|
"mysql": "mysql:8.0",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:3.13-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
"eol": "2027-04-09T00:00:00+0000"
|
"eol": "2027-04-09T00:00:00+0000"
|
||||||
|
},
|
||||||
|
"magento/project-community-edition:2.4.8": {
|
||||||
|
"magento": "magento/project-community-edition:2.4.8",
|
||||||
|
"php": 8.4,
|
||||||
|
"composer": "2.8.8",
|
||||||
|
"mysql": "mysql:8.4",
|
||||||
|
"elasticsearch": "elasticsearch:8.17.4",
|
||||||
|
"rabbitmq": "rabbitmq:4.0-management",
|
||||||
|
"redis": "redis:7.2",
|
||||||
|
"valkey": "valkey:8.0",
|
||||||
|
"varnish": "varnish:7.6",
|
||||||
|
"nginx": "nginx:1.26",
|
||||||
|
"os": "ubuntu-latest",
|
||||||
|
"release": "2025-04-08T00:00:00+0000",
|
||||||
|
"eol": "2028-04-09T00:00:00+0000"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user