Compare commits

...

42 Commits

Author SHA1 Message Date
Damien Retzinger 6776e7f306 chore(release): 1.3.0 2023-03-15 09:44:25 -04:00
Damien Retzinger c136c111d9 fix(installation-test): handle non-range composer versions 2023-03-15 09:39:35 -04:00
Damien Retzinger d3b1ab6b34 feat(supported-version): Magento v2.4.6
Notably, the support date for v2.4.5 changed as well.
2023-03-15 09:39:29 -04:00
dependabot[bot] 1d9ad11e92 chore(deps-dev): bump @typescript-eslint/eslint-plugin (#122)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.48.0 to 5.48.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.48.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-12 13:57:56 -05:00
Gowri 0f31e401b7 feat: add rabbitmq images with management plugin (#125) 2023-01-10 12:34:17 -05:00
dependabot[bot] e3f4c10c7b chore(deps-dev): bump @typescript-eslint/parser from 5.48.0 to 5.48.1 (#123)
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.48.0 to 5.48.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.48.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 13:22:16 -05:00
Damien Retzinger dbc889f7ce feat(supported-version): dynamically compute (#120)
Previously, I maintained supported versions by revising a file of versions. This was monotonous, like time.

Now, these are just based upon the documented EoL dates of the versions published by Magento.
2023-01-09 13:09:24 -05:00
Damien Retzinger c0390c8abd style: add eslint support (#121) 2023-01-09 10:43:30 -05:00
Damien Retzinger d43068a144 chore(deps): update npm deps (#119) 2023-01-09 10:33:57 -05:00
Georgiy Slobodenyuk 805b23b1fa docs(integration): fix auth instructions link (#116) 2023-01-09 09:18:59 -05:00
Damien Retzinger b0e1a0a943 fix(supported-versions): GA Ubuntu-22.04 release (#110)
Github released Ubuntu 22.04 as a runner for many actions: https://github.com/actions/runner-images/issues/5490.
As a result, we started experiencing intermittent failures as the underlying runner's support varied for older versions of Magento.
2022-12-13 14:23:16 -05:00
griest024 725ba09bf5 chore: build supported-version (#102) 2022-11-29 16:31:12 -05:00
Vinai Kopp 9d6355d5e6 chore: fix composer version dependency for nightly (#97)
Nightly builds initialize the required php infra with composer create-project composer/satis:dev-main.  
This pulls in composer 2.4.2 as a dependency at the time of writing.  
However, the result is a broken upstream nightly and mageos nightly build.
When composer install is run while determining the base package dependencies. The error is:

    - laminas/laminas-dependency-plugin 2.5.0 requires composer-plugin-api >=1.1.0 <2.3.0
           -> found composer-plugin-api[2.3.0] but it does not match the constraint.

Reference
* [failed job](https://github.com/mage-os/generate-mirror-repo-js/actions/runs/3508445982/jobs/5876852570)
* [checkout magento action](https://github.com/mage-os/generate-mirror-repo-js/blob/main/.github/actions/checkout-magento/action.yml#L41)
* [shivammathur/setup-php tools input](https://github.com/shivammathur/setup-php#wrench-tools-support)
2022-11-29 09:02:51 -05:00
Damien Retzinger 7b74ff7386 feat(setup-magento): add a new action to setup Magento (#76)
Adds a unified setup action for stores and extensions, making the CI
environment more consistent.
2022-10-31 08:51:28 -04:00
Damien Retzinger f5d43a5184 feat: add cache-magento action (#87) 2022-10-30 12:17:16 -04:00
Damien Retzinger 856d2df481 feat: add fix-magento action (#86) 2022-10-30 12:09:15 -04:00
Gowri d8936216c0 refactor: fix ::set-output deprecations (#79) 2022-10-20 15:58:22 -04:00
Damien Retzinger 84c16c2ad9 chore(deps): use get-magento-verison (#74) 2022-10-14 13:15:26 -04:00
Damien Retzinger fd858c3063 feat(get-magento-version): add get-magento-version action (#72) 2022-10-14 11:07:30 -04:00
Damien Retzinger 158bd0b0c8 chore(release): 1.2.0 2022-10-11 16:55:27 -04:00
Damien Retzinger e4f0f85e38 feat(supported-version): package @actions/core:1.10.0 2022-10-11 16:50:01 -04:00
dependabot[bot] 5a993f2f7c chore(deps): bump @actions/core from 1.9.1 to 1.10.0 (#59)
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.9.1 to 1.10.0.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-11 16:48:13 -04:00
dependabot[bot] 95388ad52f chore(deps-dev): bump esbuild from 0.15.7 to 0.15.10 (#61)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.15.7 to 0.15.10.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.15.7...v0.15.10)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-11 16:45:44 -04:00
dependabot[bot] f1b0f27863 chore(deps-dev): bump typescript from 4.8.2 to 4.8.4 (#60)
* chore(deps-dev): bump typescript from 4.8.2 to 4.8.4

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.8.2 to 4.8.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.8.2...v4.8.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore(deps-dev): bump typescript from 4.8.2 to 4.8.4

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Damien Retzinger <damienwebdev@gmail.com>
2022-10-11 16:44:17 -04:00
dependabot[bot] fa67b79f29 chore(deps-dev): bump @types/node from 18.7.15 to 18.8.3 (#67)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.7.15 to 18.8.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-11 16:26:17 -04:00
Damien Retzinger 7431dcb7af feat: allow using "next" version on supported version (#58)
This also allows using the action in https://github.com/mage-os/generate-mirror-repo-js where the test module is an external package installed with composer. In this case, no local path repo configuration is needed.

Co-authored-by: Vinai Kopp <Vinai@users.noreply.github.com>
2022-10-11 16:19:49 -04:00
Damien Retzinger 3e4d3c1645 feat: add support for v2.4.4-p2 and v2.4.5-p1 (#69) 2022-10-11 14:26:50 -04:00
Ihor Sviziev 8611b18aec Checkout is not required for calculating supported versions (#63) 2022-10-07 09:45:00 -04:00
dependabot[bot] ab73d860bd chore(deps-dev): bump esbuild from 0.15.5 to 0.15.7 (#52)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.15.5 to 0.15.7.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.15.5...v0.15.7)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-06 14:02:32 -04:00
dependabot[bot] d4a481b099 chore(deps-dev): bump @types/node from 18.7.13 to 18.7.15 (#53)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.7.13 to 18.7.15.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-06 10:43:25 -04:00
Daniel Sloof 2a102c253d feat: add coding standard action (#51) 2022-09-06 10:36:33 -04:00
dependabot[bot] e8e2509a90 chore(deps-dev): bump @types/node from 18.7.9 to 18.7.13 (#47)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.7.9 to 18.7.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-29 12:46:21 -06:00
dependabot[bot] 310d09be9f chore(deps-dev): bump typescript from 4.7.4 to 4.8.2 (#48)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.7.4 to 4.8.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.7.4...v4.8.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-29 12:46:01 -06:00
Damien Retzinger b4e7831c93 feat(integration): fix integration tests for v2.4.0 (#46) 2022-08-25 14:16:29 -06:00
Damien Retzinger 1f0152f3bd chore: make build run on macbook (#46) 2022-08-25 14:16:21 -06:00
Damien Retzinger 4b9366fdf2 fix(supported-version): pin-back MySQL to breaking change for tests (#46) 2022-08-25 14:16:05 -06:00
dependabot[bot] 937a1a6fee chore(deps-dev): bump esbuild from 0.14.54 to 0.15.5 (#45)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.14.54 to 0.15.5.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.14.54...v0.15.5)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-24 17:12:33 -06:00
dependabot[bot] 71f1333110 chore(deps-dev): bump @types/node from 18.7.5 to 18.7.9 (#44)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.7.5 to 18.7.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-24 14:02:20 -06:00
dependabot[bot] 7de0711ac2 chore(deps-dev): bump @types/node from 18.6.5 to 18.7.5 (#41)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.6.5 to 18.7.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 19:00:24 -04:00
dependabot[bot] 5a96a2c350 chore(deps-dev): bump @types/jest from 28.1.6 to 28.1.7 (#42)
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 28.1.6 to 28.1.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 18:58:08 -04:00
dependabot[bot] 5b22207580 chore(deps-dev): bump ts-jest from 28.0.7 to 28.0.8 (#43)
Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 28.0.7 to 28.0.8.
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kulshekhar/ts-jest/compare/v28.0.7...v28.0.8)

---
updated-dependencies:
- dependency-name: ts-jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 18:57:43 -04:00
Damien Retzinger f609c0e88c docs: add version badge to README 2022-08-13 22:36:04 -04:00
41 changed files with 4532 additions and 1158 deletions
+6
View File
@@ -0,0 +1,6 @@
module.exports = {
extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'],
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
root: true,
};
@@ -0,0 +1,41 @@
name: Coding Standard
on:
push:
branches:
- main
paths:
- "_test/demo-package/**"
- ".github/workflows/_internal-coding-standard.yaml"
- "coding-standard/**"
- "!(**/*.md)"
pull_request:
branches:
- main
paths:
- "_test/demo-package/**"
- ".github/workflows/_internal-coding-standard.yaml"
- "coding-standard/**"
- "!(**/*.md)"
workflow_dispatch:
inputs:
version:
type: string
default: '*'
description: The version of the coding standard to use.
required: false
path:
type: string
default: '_test/demo-package'
description: Path to run the coding standard on.
required: true
jobs:
coding-standard:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: './coding-standard'
with:
version: ${{ github.event.inputs.version || '*' }}
path: ${{ github.event.inputs.path || '_test/demo-package' }}
@@ -0,0 +1,43 @@
name: Get Magento Version
on:
push:
branches:
- main
paths:
- ".github/workflows/_internal-get-magento-version.yaml"
- "get-magento-version/**"
- "!(**/*.md)"
pull_request:
branches:
- main
paths:
- ".github/workflows/_internal-get-magento-version.yaml"
- "get-magento-version/**"
- "!(**/*.md)"
jobs:
get-magento-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set PHP Version
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
tools: composer:v2.4.2
- run: composer create-project --repository-url="https://mirror.mage-os.org" "magento/project-community-edition:2.4.5-p1" ../magento2 --no-install
shell: bash
name: Create Magento ${{ matrix.magento }} Project
- uses: ./get-magento-version
id: magento-version
with:
working-directory: ../magento2
- name: Fail if key does not match
if: steps.magento-version.outputs.version != '"2.4.5-p1"'
shell: bash
run: echo "${{ steps.magento-version.outputs.version }}" && exit 1
@@ -0,0 +1,127 @@
name: Setup Magento Test
on:
workflow_dispatch: {}
push:
branches:
- main
paths:
- "setup-magento/**"
- ".github/workflows/_internal-setup-magento.yaml"
- "supported-version/**"
- "!(**/*.md)"
pull_request:
branches:
- main
paths:
- "setup-magento/**"
- ".github/workflows/_internal-setup-magento.yaml"
- "supported-version/**"
- "!(**/*.md)"
env:
PSEUDO_REPO_FOLDER: ../magento_repo
magento_folder: ../magento2
jobs:
compute_matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.supported-version.outputs.matrix }}
steps:
- uses: actions/checkout@v3
- uses: ./supported-version
with:
kind: currently-supported
id: supported-version
- run: echo ${{ steps.supported-version.outputs.matrix }}
setup-magento-store:
needs: compute_matrix
strategy:
matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }}
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: |
PSEUDO_STORE_FULL_PATH=$(realpath "${{ env.PSEUDO_REPO_FOLDER }}")
echo "PSEUDO_STORE_FULL_PATH=$PSEUDO_STORE_FULL_PATH" >> $GITHUB_ENV
name: Generate Full Pseudo Store Path
shell: bash
- name: Set PHP Version
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v${{ matrix.composer }}
- uses: actions/cache@v3
id: setup-magento-store-cache
with:
key: setup-magento-ci | ${{ runner.os }} | ${{ matrix.magento }}
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
name: Create Store to simulate a real Magento store in a real repo.
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
- uses: ./fix-magento-install
name: Fix Magento Out of Box Install Issues
with:
magento_directory: ${{ env.PSEUDO_REPO_FOLDER }}
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
- run: composer install
shell: bash
working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
- 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 }}"
if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
- run: cp -R ${{ env.PSEUDO_REPO_FOLDER }} ${{ env.magento_folder }}
shell: bash
- uses: ./setup-magento
id: setup-magento
with:
php-version: ${{ matrix.php }}
tools: composer:v${{ matrix.composer }}
mode: store
working-directory: ${{ env.magento_folder }}
- uses: graycoreio/github-actions-magento2/cache-magento@main
with:
mode: 'store'
composer_cache_key: '${{ matrix.magento }}'
- run: composer install
name: Composer install
shell: bash
working-directory: ${{ steps.setup-magento.outputs.path }}
setup-magento-extension:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ./setup-magento
id: setup-magento
with:
php-version: 8.1
tools: composer:v2
mode: extension
magento_version: magento/project-community-edition:2.4.5-p1
- uses: graycoreio/github-actions-magento2/cache-magento@main
with:
mode: 'extension'
composer_cache_key: 'magento/project-community-edition:2.4.5-p1'
- run: composer install
name: Composer install
shell: bash
working-directory: ${{ steps.setup-magento.outputs.path }}
+1 -1
View File
@@ -20,7 +20,7 @@ See the [integration.yaml](./integration.yaml)
## Secrets
| Input | Description | Required | Default |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- |
| composer_auth | JSON string of [composer credentials]([#./matrix-format](https://devdocs.magento.com/guides/v2.4/install-gde/prereq/connect-auth.html)) | false | NULL |
| composer_auth | JSON string of [composer credentials](https://devdocs.magento.com/guides/v2.4/install-gde/prereq/connect-auth.html) | false | NULL |
### Matrix Format
+18 -10
View File
@@ -1,7 +1,12 @@
on:
workflow_call:
inputs:
use_local_source:
type: boolean
required: false
default: true
description: "Whether or not you want to test your local package or not."
source_folder:
type: string
required: false
@@ -103,22 +108,18 @@ jobs:
COMPOSER_AUTH: ${{ secrets.composer_auth }}
name: Create Magento ${{ matrix.magento }} Project
- run: |
echo "::set-output name=version::$(cat composer.json | jq '.require
| with_entries( select(.key == "magento/product-community-edition" or .key == "magento/product-enterprise-edition") )
| to_entries
| .[0].value')"
shell: bash
working-directory: ${{ inputs.magento_directory }}
name: Compute Installable Magento version
- uses: graycoreio/github-actions-magento2/get-magento-version@main
id: magento-version
with:
working-directory: ${{ inputs.magento_directory }}
- name: Get Composer Cache Directory
shell: bash
working-directory: ${{ inputs.magento_directory }}
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: "Cache Composer Packages"
uses: actions/cache@v3
@@ -130,6 +131,7 @@ jobs:
name: Add Github Repo for Testing
working-directory: ${{ inputs.magento_directory }}
shell: bash
if: ${{ inputs.use_local_source == true }}
- run: composer require monolog/monolog:"<2.7.0" --no-update
name: Fixup Monolog (https://github.com/magento/magento2/pull/35596)
@@ -137,6 +139,12 @@ jobs:
if: |
steps.magento-version.outputs.version == '"2.4.4"'
- run: composer require "dotmailer/dotmailer-magento2-extension-package:4.6.0-p2 as 4.6.0" --no-update
name: Fixup Dotmailer (https://devdocs.magento.com/guides/v2.4/release-notes/release-notes-2-4-0-commerce.html#dotdigital-1)
working-directory: ${{ inputs.magento_directory }}
if: |
steps.magento-version.outputs.version == '"2.4.0"'
- run: |
composer config --no-interaction allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
composer config --no-interaction allow-plugins.laminas/laminas-dependency-plugin true
+2 -1
View File
@@ -1 +1,2 @@
node_modules/
node_modules/
.idea/
+5
View File
@@ -0,0 +1,5 @@
{
"recommendations": [
"dbaeumer.vscode-eslint"
]
}
+35
View File
@@ -2,6 +2,41 @@
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.
## [1.3.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.2.0...v1.3.0) (2023-03-15)
### Features
* add `cache-magento` action ([#87](https://github.com/graycoreio/github-actions-magento2/issues/87)) ([f5d43a5](https://github.com/graycoreio/github-actions-magento2/commit/f5d43a5184d20dc60b5e45d47b9d14300eb14754))
* add `fix-magento` action ([#86](https://github.com/graycoreio/github-actions-magento2/issues/86)) ([856d2df](https://github.com/graycoreio/github-actions-magento2/commit/856d2df4819a5d0cdff6087a005ca966c7d409c0))
* add rabbitmq images with management plugin ([#125](https://github.com/graycoreio/github-actions-magento2/issues/125)) ([0f31e40](https://github.com/graycoreio/github-actions-magento2/commit/0f31e401b775c085720176a4ac7626c45d2b07d0))
* **get-magento-version:** add get-magento-version action ([#72](https://github.com/graycoreio/github-actions-magento2/issues/72)) ([fd858c3](https://github.com/graycoreio/github-actions-magento2/commit/fd858c30633e97bdc93cc8c2fe7adaef99a6bf7c))
* **setup-magento:** add a new action to setup Magento ([#76](https://github.com/graycoreio/github-actions-magento2/issues/76)) ([7b74ff7](https://github.com/graycoreio/github-actions-magento2/commit/7b74ff738699d86aafed7690464302b1f07e59d0))
* **supported-version:** dynamically compute ([#120](https://github.com/graycoreio/github-actions-magento2/issues/120)) ([dbc889f](https://github.com/graycoreio/github-actions-magento2/commit/dbc889f7cea548d319a5cd206269b007319d53ec))
* **supported-version:** Magento v2.4.6 ([d3b1ab6](https://github.com/graycoreio/github-actions-magento2/commit/d3b1ab6b344b6a1ff705d2e57ad400ab506456be))
### Bug Fixes
* **installation-test:** handle non-range composer versions ([c136c11](https://github.com/graycoreio/github-actions-magento2/commit/c136c111d923fa3c9d4f3fbeb38cd81d593168da))
* **supported-versions:** GA Ubuntu-22.04 release ([#110](https://github.com/graycoreio/github-actions-magento2/issues/110)) ([b0e1a0a](https://github.com/graycoreio/github-actions-magento2/commit/b0e1a0a9439be892062a6f05161d83e7ae2c7cbf))
## [1.2.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.1.0...v1.2.0) (2022-10-11)
### Features
* add coding standard action ([#51](https://github.com/graycoreio/github-actions-magento2/issues/51)) ([2a102c2](https://github.com/graycoreio/github-actions-magento2/commit/2a102c253d319fc463b1006ea7cc020b2ffdcb6c))
* add support for v2.4.4-p2 and v2.4.5-p1 ([#69](https://github.com/graycoreio/github-actions-magento2/issues/69)) ([3e4d3c1](https://github.com/graycoreio/github-actions-magento2/commit/3e4d3c1645ad3ed8b2b0134f4c012335421c5fcb))
* allow using "next" version on supported version ([#58](https://github.com/graycoreio/github-actions-magento2/issues/58)) ([7431dcb](https://github.com/graycoreio/github-actions-magento2/commit/7431dcb7af723a6be20ef30db0f6978afacc572c))
* **integration:** fix integration tests for v2.4.0 ([#46](https://github.com/graycoreio/github-actions-magento2/issues/46)) ([b4e7831](https://github.com/graycoreio/github-actions-magento2/commit/b4e7831c93ad82caa0abe3bdce52e4af2eda333b))
* **supported-version:** package @actions/core:1.10.0 ([e4f0f85](https://github.com/graycoreio/github-actions-magento2/commit/e4f0f85e38ac6e342780d2bdaac28a19c1cab49d))
### Bug Fixes
* **supported-version:** pin-back MySQL to breaking change for tests ([#46](https://github.com/graycoreio/github-actions-magento2/issues/46)) ([4b9366f](https://github.com/graycoreio/github-actions-magento2/commit/4b9366fdf2ec72215c0e76dcabfe5e5bfee689de))
## [1.1.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.0.0...v1.1.0) (2022-08-14)
+12 -7
View File
@@ -2,6 +2,7 @@
<div align="center">
![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/graycoreio/github-actions-magento2)
[![Unit Test](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-unit.yaml/badge.svg)](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-unit.yaml)
[![Integration Test](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-integration.yaml/badge.svg)](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-integration.yaml)
[![Installation Test](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-install.yaml/badge.svg)](https://github.com/graycoreio/github-actions-magento2/actions/workflows/_internal-install.yaml)
@@ -16,14 +17,18 @@ Opinionated Github Actions and Workflows to make building, testing, and maintain
## Workflows
| Workflow Name | Description |
| -------------------------------------------------------- | ---------------------------------------------------------------------- |
| Workflow Name | Description |
| ------------------------------------------------------------- | ---------------------------------------------------------------------- |
| [Integration Test](./.github/workflows/integration-README.md) | A Github Workflow that runs the Integration Tests of a Magento Package |
## Actions
| Action Name | Description |
| ------------------------------------------------ | ------------------------------------------------------------------ |
| [Unit Test](./unit-test/README.md) | A Github Action that runs the Unit Tests a Magento Package |
| [Installation Test](installation-test/README.md) | A Github Action that tests the installability of a Magento Package |
| [Supported Version](supported-version/README.md) | A Github Action that computes the currently supported Github Actions Matrix for Magento 2 |
| Action Name | Description |
| ------------------------------------------------------ | ----------------------------------------------------------------------------------------- |
| [Unit Test](./unit-test/README.md) | A Github Action that runs the Unit Tests a Magento Package |
| [Fix Magento Install](./fix-magento-install/README.md) | A Github Action that fixes Magento before `composer install` |
| [Cache Magento](./cache-magento/README.md) | A Github Action that creates a composer cache for a Magento extension or store. |
| [Setup Magento](./setup-magento/README.md) | A Github Action that sets up Magento before `composer install` for an extension or store. |
| [Get Magento Version](./get-magento-version/README.md) | A Github Action that computes the installed Magento version. |
| [Installation Test](./installation-test/README.md) | A Github Action that tests the installability of a Magento Package |
| [Supported Version](./supported-version/README.md) | A Github Action that computes the currently supported Github Actions Matrix for Magento 2 |
+43
View File
@@ -0,0 +1,43 @@
# Cache Magento Action
A Github Action that creates a composer cache for a Magento extension or store.
## Inputs
See the [action.yml](./action.yml)
| Input | Description | Required | Default |
| ------------------ | -------------------------------------------------------------------------------------- | -------- | ------------ |
| composer_cache_key | A key to version the composer cache. Can be incremented if you need to bust the cache. | false | '__graycore' |
| mode | "The mode for setup, one of: `extension` or `store`." | true | N/A |
| magento_directory | The Magento directory for the action to run against. | true | N/A |
### Usage
```yml
name: Magento Cache
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
showcase_cache:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: graycoreio/github-actions-magento2/cache-magento@main
with:
magento_directory: $GITHUB_WORKSPACE
mode: 'store'
id: cache-magento
- run: composer install
shell: bash
name: Composer install
```
+47
View File
@@ -0,0 +1,47 @@
name: "Cache Magento 2 for Pipeline"
author: "Graycore"
description: "A Github Action that creates a composer cache for a Magento extension or store."
inputs:
composer_cache_key:
required: false
default: "__graycore"
description: A key to version the composer cache. Can be incremented if you need to bust the cache.
mode:
required: true
description: "The mode for setup, one of: `extension` or `store`."
outputs:
cache-hit:
description: "A boolean value to indicate an exact match was found for the key"
value: ${{ steps.cache-magento-cache.outputs.cache-hit }}
runs:
using: "composite"
steps:
- name: Get Composer Cache Directory
shell: bash
id: cache-magento-composer-cache
run: |
echo "dir=$(composer config cache-files-dir --global)" >> $GITHUB_OUTPUT
- run: echo "::set-output name=version::$(php -v | awk 'NR==1{print $2}')"
shell: bash
id: cache-magento-get-php-version
- run: echo "::set-output name=version::$(composer --version | awk '{print $3}')"
shell: bash
name: Compute Composer Version
id: cache-magento-get-composer-version
- name: "Cache Composer Packages"
uses: actions/cache@v3
id: cache-magento-cache
with:
key: "composer | v5.8 | ${{ inputs.composer_cache_key }} | ${{ steps.cache-magento-get-composer-version.outputs.version }} | ${{ steps.cache-magento-get-php-version.outputs.version }}"
path: ${{ steps.cache-magento-composer-cache.outputs.dir }}
branding:
icon: "code"
color: "green"
+30
View File
@@ -0,0 +1,30 @@
# Magento 2 Coding Standard Action
A Github Action that runs the Magento Coding Standard.
## Inputs
See the [action.yml](./action.yml)
## Usage
```yml
name: Coding Standard
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
coding-standard:
runs-on: ubuntu-latest
steps:
- uses: graycoreio/github-actions-magento2/coding-standard@main
with:
version: 25 # Optional, will use the latest if omitted.
path: app/code # Optional, will be used when event is not a pull request.
```
+65
View File
@@ -0,0 +1,65 @@
name: "Coding Standard"
author: "Graycore"
description: "A Github Action that runs the Magento Coding Standard."
inputs:
php_version:
required: true
default: "8.1"
description: "PHP version used to do the coding standard check."
composer_version:
required: true
default: "2"
description: "The version of composer to use."
path:
required: true
default: 'app/code'
description: "The directory (relative to the project root) in which the coding standard will be checked. Used when the event is not a pull request."
version:
required: false
description: "The version of the coding standard to use. If not provided, will use the latest version."
runs:
using: composite
steps:
- name: Checkout Project
uses: actions/checkout@v3
with:
fetch-depth: 0
path: project
- name: Create Standard Directory
shell: bash
run: mkdir standard
- name: Set PHP Version
uses: shivammathur/setup-php@v2
with:
php-version: ${{ inputs.php_version }}
tools: composer:v${{ inputs.composer_version }}
coverage: none
- name: Install Coding Standard
shell: bash
working-directory: standard
run: composer require "magento/magento-coding-standard:${{ inputs.version || '*' }}"
- name: Register Coding Standard
shell: bash
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
- name: Get Changed Files
shell: bash
working-directory: project
id: changed-files
run: echo "files=$(git diff --name-only --diff-filter=ACMRT ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | xargs)" >> $GITHUB_OUTPUT
if: github.event_name == 'pull_request'
- name: Coding Standard Check
shell: bash
run: ../standard/vendor/bin/phpcs --standard=Magento2 ${{ github.event_name == 'pull_request' && steps.changed-files.outputs.files || inputs.path }}
working-directory: project
+32
View File
@@ -0,0 +1,32 @@
# Fix Magento
A Github Action that fixes Magento before `composer install`.
> You probably only need this action if you're working on a Magento extension. However, if you're working on a Magento store and your CI pipeline breaks, this is probably a good first place to look for corrective measures to take.
## Inputs
See the [action.yml](./action.yml)
## Usage
```yml
name: Fix Magento Install
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
fix:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: graycoreio/github-actions-magento2/fix-magento-install@main
with:
magento_directory: path/to/magento
```
+48
View File
@@ -0,0 +1,48 @@
name: "Fix Magento Install"
author: "Graycore"
description: "A Github Action that fixes Magento before `composer install`"
inputs:
magento_directory:
required: true
description: "The folder where Magento is installed"
runs:
using: "composite"
steps:
- uses: graycoreio/github-actions-magento2/get-magento-version@main
id: init-magento-get-magento-version
with:
working-directory: ${{ inputs.magento_directory }}
- run: echo "::set-output name=version::$(composer --version | awk '{print $3}')"
shell: bash
name: Compute Composer Version
id: init-magento-get-composer-version
- run: composer require monolog/monolog:"<2.7.0" --no-update
shell: bash
name: Fixup Monolog (https://github.com/magento/magento2/pull/35596)
working-directory: ${{ inputs.magento_directory }}
if: |
steps.init-magento-get-magento-version.outputs.version == '"2.4.4"'
- run: composer require "dotmailer/dotmailer-magento2-extension-package:4.6.0-p2 as 4.6.0" --no-update
shell: bash
name: Fixup Dotmailer (https://devdocs.magento.com/guides/v2.4/release-notes/release-notes-2-4-0-commerce.html#dotdigital-1)
working-directory: ${{ inputs.magento_directory }}
if: |
steps.init-magento-get-magento-version.outputs.version == '"2.4.0"'
- run: |
composer config --no-interaction allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
composer config --no-interaction allow-plugins.laminas/laminas-dependency-plugin true
composer config --no-interaction allow-plugins.magento/* true
name: Fixup Composer Plugins
shell: bash
working-directory: ${{ inputs.magento_directory }}
if: |
!startsWith(steps.init-magento-get-composer-version.outputs.version, 1)
branding:
icon: "code"
color: "green"
+32
View File
@@ -0,0 +1,32 @@
# "Get Magento Version" Action
A Github Action that computes an installed Magento version.
## Inputs
See the [action.yml](./action.yml)
## Usage
```yml
name: Get Magento Version
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
version:
runs-on: ubuntu-latest
name: A job to compute an installed Magento version.
steps:
- uses: actions/checkout@v3
- uses: graycoreio/github-actions-magento2/get-magento-version@main
id: get-magento-version
- run: echo version ${{ steps.get-magento-version.outputs.version }}
shell: bash
```
+31
View File
@@ -0,0 +1,31 @@
name: "Get Magento Version"
author: "Graycore"
description: " A Github Action that determines the currently installed version of Magento"
inputs:
working-directory:
default: $GITHUB_WORKSPACE
description: "The current working directory of the action"
required: false
outputs:
version: # id of output
description: 'The determined version of Magento'
value: ${{ steps.get-magento-version.outputs.version }}
runs:
using: "composite"
steps:
- run: |
echo "version=$(cat composer.json | jq '.require
| with_entries( select(.key == "magento/product-community-edition" or .key == "magento/product-enterprise-edition") )
| to_entries
| .[0].value')" >> $GITHUB_OUTPUT
shell: bash
working-directory: ${{ inputs.working-directory }}
name: Compute Installed Magento version
id: get-magento-version
branding:
icon: "code"
color: "green"
+15 -2
View File
@@ -18,6 +18,11 @@ inputs:
default: "2"
description: "The version of composer to use"
use_local_source:
required: false
default: "true"
description: "Whether or not you want to test your local package or not."
source_folder:
required: true
default: $GITHUB_WORKSPACE
@@ -59,8 +64,14 @@ runs:
with:
php-version: ${{ inputs.php_version }}
- run: composer self-update --${{ inputs.composer_version }}
- run: composer self-update ${{ inputs.composer_version }}
name: Pin to Composer Version ${{ inputs.composer_version }}
if: contains(inputs.composer_version, '.') == true
shell: bash
- run: composer self-update --${{ inputs.composer_version }}
name: Pin to Composer Version ${{ inputs.composer_version }} (Range)
if: contains(inputs.composer_version, '.') == false
shell: bash
- run: composer create-project --repository-url="${{ inputs.magento_repository }}" "${{ inputs.magento_version }}" ${{ inputs.magento_directory }} --no-install
@@ -74,7 +85,8 @@ runs:
working-directory: ${{ inputs.magento_directory }}
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: "Cache Composer Packages"
uses: actions/cache@v3
@@ -86,6 +98,7 @@ runs:
name: Add Github Repo for Testing
working-directory: ${{ inputs.magento_directory }}
shell: bash
if: ${{ inputs.use_local_source == 'true' }}
- run: |
composer config --no-interaction allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
+3380 -1046
View File
File diff suppressed because it is too large Load Diff
+10 -7
View File
@@ -1,6 +1,6 @@
{
"name": "@graycore/github-actions-magento",
"version": "1.1.0",
"version": "1.3.0",
"description": "Github Actions for Magento 2",
"scripts": {
"test": "cd supported-version && npm run test && cd -",
@@ -18,15 +18,18 @@
},
"homepage": "https://github.com/graycoreio/github-actions-magento2#readme",
"dependencies": {
"@actions/core": "^1.9.1"
"@actions/core": "^1.10.0"
},
"devDependencies": {
"@types/jest": "^28.1.6",
"@types/node": "^18.6.5",
"esbuild": "^0.14.54",
"@types/jest": "^28.1.7",
"@types/node": "^18.8.3",
"@typescript-eslint/eslint-plugin": "^5.48.1",
"@typescript-eslint/parser": "^5.48.1",
"esbuild": "^0.16.16",
"eslint": "^8.31.0",
"jest": "^28.1.3",
"standard-version": "^9.5.0",
"ts-jest": "^28.0.7",
"typescript": "^4.7.4"
"ts-jest": "^28.0.8",
"typescript": "^4.9.4"
}
}
+79
View File
@@ -0,0 +1,79 @@
# Magento 2 Package Installation Test Action
A Github Action that sets Magento up to the point of composer install.
## Inputs
See the [action.yml](./action.yml)
## Usage
### Stores
```yml
name: Setup Magento Store
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
setup-magento-store:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ./setup-magento
with:
php-version: 8.1
tools: composer:v2
mode: store
working-directory: $GITHUB_WORKSPACE
- run: composer install
name: Composer install
shell: bash
working-directory: ${{ steps.setup-magento.outputs.path }}
```
### Extensions
```yml
name: Setup Magento Store
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
setup-magento-extension:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ./setup-magento
with:
php-version: 8.1
tools: composer:v2
mode: extension
magento_version: 2.4.5-p1
- run: composer config repositories.local path $GITHUB_WORKSPACE
name: Add Github Repo for Testing
working-directory: ${{ steps.setup-magento.outputs.path }}
shell: bash
- run: composer require my/package "@dev"
name: Attempt install
working-directory: ${{ steps.setup-magento.outputs.path }}
shell: bash
env:
COMPOSER_AUTH: ${{ secrets.composer_auth }}
```
+100
View File
@@ -0,0 +1,100 @@
name: "Setup Magento"
author: "Graycore"
description: "This action sets up a Magento instance for further actions like running tests, etc."
inputs:
php-version:
description: "Setup PHP version."
default: "8.1"
required: true
tools:
description: "Setup popular tools globally."
required: false
extensions:
description: "Setup PHP extensions."
required: false
coverage:
description: "Setup code coverage driver."
required: false
magento_repository:
required: false
default: "https://mirror.mage-os.org/"
description: "Where to install Magento from"
magento_version:
required: false
default: '~2.4.5'
description: "The version of Magento to use. This is only relevant if you are testing an extension."
apply_fixes:
required: false
default: 'false'
description: "Whether or not to apply fixes during setup."
mode:
required: true
default: 'extension'
description: "The mode for setup, one of: `extension` or `store`."
working-directory:
required: false
default: "."
description: "The working directory to run the action in."
outputs:
path:
description: "The absolute path to where Magento was set up."
value: ${{ steps.setup-magento-get-magento-path.outputs.path }}
runs:
using: "composite"
steps:
- name: Set PHP Version
uses: shivammathur/setup-php@v2
with:
php-version: ${{ inputs.php-version }}
tools: ${{ inputs.tools }}
coverage: ${{ inputs.coverage }}
extensions: ${{ inputs.coverage }}
- run: |
MAGENTO_DIRECTORY=""
if [ "${{ inputs.mode }}" = 'extension' ]; then
MAGENTO_DIRECTORY="../magento2"
else
MAGENTO_DIRECTORY="${{ inputs.working-directory }}"
fi
echo "MAGENTO_DIRECTORY=$MAGENTO_DIRECTORY" >> $GITHUB_OUTPUT
id: setup-magento-compute-directory
shell: bash
- run: |
mkdir -p ${{ steps.setup-magento-compute-directory.outputs.MAGENTO_DIRECTORY }}
name: Make a directory that may not exist.
shell: bash
if: inputs.mode == 'extension'
- run: composer create-project --repository-url="${{ inputs.magento_repository }}" "${{ inputs.magento_version }}" ${{ steps.setup-magento-compute-directory.outputs.MAGENTO_DIRECTORY }} --no-install
working-directory: ${{ inputs.working-directory }}
shell: bash
name: Create Magento ${{ inputs.magento_version }} Project
if: inputs.mode == 'extension'
- uses: graycoreio/github-actions-magento2/fix-magento-install@main
name: Fix Magento Out of Box Install Issues
with:
magento_directory: ${{ steps.setup-magento-compute-directory.outputs.MAGENTO_DIRECTORY }}
if: inputs.mode == 'extension' || inputs.apply_fixes == 'true'
- run: |
echo "path=$(realpath ${{ steps.setup-magento-compute-directory.outputs.MAGENTO_DIRECTORY }})" >> $GITHUB_OUTPUT
shell: bash
id: setup-magento-get-magento-path
branding:
icon: "code"
color: "green"
+7 -2
View File
@@ -13,9 +13,15 @@ See the [action.yml](./action.yml)
| Input | Description | Required | Default |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ----------- |
| kind | The "kind" of support you're targeting for your package. Allowed values are `currently-supported`, `latest`, `custom`, and `all` | false | 'currently-supported' |
| kind | The "kind" of support you're targeting for your package. Allowed values are `currently-supported`, `latest`, `custom`, `nightly` and `all` | false | 'currently-supported' |
| 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 | '' |
## 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. Requires `custom_versions` sibling key.
- `nightly` - The nightly version of Magento (only available via `https://upstream-nightly.mage-os.org`)
- `all` - All versions of Magento (including patched/unpatched versions).
## Usage
```yml
@@ -35,7 +41,6 @@ jobs:
outputs:
matrix: ${{ steps.supported-version.outputs.matrix }}
steps:
- uses: actions/checkout@v2
- uses: graycoreio/github-actions-magento2/supported-version@main
id: supported-version
- run: echo ${{ steps.supported-version.outputs.matrix }}
+1 -1
View File
@@ -5,7 +5,7 @@ description: "A Github Action that computes the Github Actions matrix for the ch
inputs:
kind:
required: false
description: "The kind of versions you want to return. Allowed values are `currently-supported, latest, custom, all`"
description: "The kind of versions you want to return. Allowed values are `currently-supported`, `latest`, `custom`, `nightly` and `all`"
default: "currently-supported"
custom_versions:
required: false
+5 -5
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -5,7 +5,7 @@
"main": "index.js",
"private": true,
"scripts": {
"build": "esbuild --outfile=dist/index.js --platform=node --bundle --minify src/index.ts",
"build": "npx esbuild --outfile=dist/index.js --platform=node --bundle --minify src/index.ts",
"test": "jest"
},
"author": "",
@@ -5,6 +5,7 @@ export const KNOWN_KINDS = {
'currently-supported': true,
'latest': true,
'custom': true,
'nightly': true,
'all': true,
}
@@ -1,10 +0,0 @@
[
"magento/project-community-edition:>=2.3 <2.4",
"magento/project-community-edition:>=2.4.0 <2.4.1",
"magento/project-community-edition:>=2.4.1 <2.4.2",
"magento/project-community-edition:>=2.4.2 <2.4.3",
"magento/project-community-edition:>=2.4.3 <2.4.4",
"magento/project-community-edition:>=2.4.4 <2.4.5",
"magento/project-community-edition:>=2.4.5 <2.4.6",
"magento/project-community-edition"
]
@@ -0,0 +1,48 @@
import { getCurrentlySupportedVersions } from "./get-currently-supported";
describe('getCurrentlySupportedVersions', () => {
it('should say that v2.4.0 is not supported in 2025', () => {
const date: Date = new Date('2025-01-01T00:00:00Z');
expect(getCurrentlySupportedVersions(date)).not.toContain('magento/project-community-edition:2.4.0');
});
test.each([
//TODO: add a release-date so that past dates do not incur non-contemporaneous
// versions.
['2023-01-01T00:00:00Z', 'First day of 2023', [
'magento/project-community-edition:2.4.4-p2',
'magento/project-community-edition:2.4.4-p3',
'magento/project-community-edition:2.4.5-p1',
'magento/project-community-edition:2.4.5-p2',
'magento/project-community-edition:2.4.6',
]],
['2024-01-01T00:00:00Z', 'First day of 2024', [
'magento/project-community-edition:2.4.4-p3',
'magento/project-community-edition:2.4.5-p2',
'magento/project-community-edition:2.4.6',
]],
['2024-12-31T00:00:00Z', 'End of 2024', [
'magento/project-community-edition:2.4.4-p3',
'magento/project-community-edition:2.4.5-p2',
'magento/project-community-edition:2.4.6',
]],
['2025-08-08T00:00:00Z', 'Day Before v2.4.5 EoL', [
'magento/project-community-edition:2.4.5-p2',
'magento/project-community-edition:2.4.6',
]],
['2025-08-09T00:00:00Z', 'Day of v2.4.5 EoL', [
'magento/project-community-edition:2.4.5-p2',
'magento/project-community-edition:2.4.6',
]],
['2025-08-10T00:00:00Z', 'Day after v2.4.5 EoL', [
'magento/project-community-edition:2.4.6',
]],
])(
'supportedVersions for %s',
(date, description ,result) => {
expect(
getCurrentlySupportedVersions(new Date(date))
).toEqual(result);
}
);
})
@@ -0,0 +1,7 @@
import { MagentoMatrixVersion } from '../matrix/matrix-type';
import allVersions from '../versions/individual.json';
export const getCurrentlySupportedVersions = (date: Date): string[] =>
Object.entries(<Record<string,MagentoMatrixVersion>>allVersions)
.filter(([key, value]) => new Date(value.eol) >= date)
.map(([key, value]) => key);
+3
View File
@@ -0,0 +1,3 @@
[
"magento/project-community-edition:next"
]
@@ -29,6 +29,13 @@ describe('getMatrixForKind', () => {
expect(result.include).toBeDefined();
});
it('returns a matrix for the next release when using `nightly`', () => {
const result = getMatrixForKind("nightly", "magento/project-community-edition:next");
expect(result.magento).toBeDefined();
expect(result.include).toBeDefined();
});
it('returns a matrix for valid multiple `custom`', () => {
const result = getMatrixForKind("custom", "magento/project-community-edition:2.3.7-p3,magento/project-community-edition:2.4.0");
@@ -1,15 +1,20 @@
import { getMatrixForVersions } from "./get-matrix-for-versions";
import latestJson from '../kind/latest.json';
import currentlySupportedJson from '../kind/currently-supported.json';
import allVersions from '../versions/individual.json';
import nightly from '../kind/nightly.json';
import { amendMatrixForNext } from "../nightly/get-next-version";
import { getDayBefore } from '../nightly/get-day-before';
import { getCurrentlySupportedVersions } from "../kind/get-currently-supported";
export const getMatrixForKind = (kind: string, versions: string = "") => {
export const getMatrixForKind = (kind: string, versions = "") => {
switch(kind){
case 'latest':
return getMatrixForVersions(latestJson);
case 'currently-supported':
return getMatrixForVersions(currentlySupportedJson);
return getMatrixForVersions(getCurrentlySupportedVersions(new Date()));
case 'nightly':
return amendMatrixForNext(getMatrixForVersions(nightly), 'https://upstream-mirror.mage-os.org', getDayBefore());
case 'all':
return getMatrixForVersions(Object.keys(allVersions));
case 'custom':
+2 -1
View File
@@ -8,7 +8,8 @@ export interface MagentoMatrixVersion {
redis: string,
varnish: string,
nginx: string,
os: string
os: string,
eol: string
}
export interface GithubActionsMatrix {
@@ -0,0 +1,8 @@
/**
* Gets the date one day before the date.
*/
export const getDayBefore = (date: Date = new Date()) => {
const yesterday = new Date(date);
yesterday.setDate(yesterday.getDate() - 1);
return yesterday;
}
@@ -0,0 +1,12 @@
import { getNextVersion } from "./get-next-version"
describe('getNextVersion', () => {
it('should get the next nightly version for MageOS', () => {
expect(getNextVersion('https://upstream-mirror.mage-os.org', new Date('2022-09-29T17:47:00')), ).toEqual('@alpha');
});
it('should handle the first of the month correctly', () => {
expect(getNextVersion('https://upstream-mirror.mage-os.org', new Date('2022-01-01T17:47:00')), ).toEqual('@alpha');
});
})
@@ -0,0 +1,44 @@
import { GithubActionsMatrix } from "../matrix/matrix-type";
export type Repository = "https://upstream-mirror.mage-os.org" | "https://repo.magento.com";
/**
* A placeholder value use to refer to the next version of Magento.
* This value is just a placeholder, there is no "next" version (as of authoring).
*/
export const nextVersionPlaceHolder = "magento/project-community-edition:next";
/**
* Get the next version of Magento, as determined by the repository.
*/
export const getNextVersion = (repository: Repository, date: Date) => {
switch(repository){
case "https://upstream-mirror.mage-os.org":
// See: https://github.com/mage-os/generate-mirror-repo-js/blob/bbbdf1708ea0bf8fc845aad8240d00f37632b4a7/src/release-branch-build-tools.js#L71
return "@alpha";
default:
return "";
}
}
export const replaceNextPlaceHolderWithVersion = (packageName: string, nextVersion: string) => {
return packageName.replace(/(?!:)next$/, nextVersion);
}
export const computeNextPackage = (packageName: string, repository: Repository, date: Date): string => {
return replaceNextPlaceHolderWithVersion(packageName, getNextVersion(repository, date));
}
export const amendMatrixForNext = (matrix: GithubActionsMatrix, repository: Repository = "https://upstream-mirror.mage-os.org", date: Date = new Date()): GithubActionsMatrix => {
matrix.magento = matrix.magento.map((item) => item === nextVersionPlaceHolder ? computeNextPackage(nextVersionPlaceHolder, repository, date) : item);
matrix.include = matrix.include.map((item) => {
return item.magento === nextVersionPlaceHolder
? {
...item,
magento: computeNextPackage(nextVersionPlaceHolder, repository, date),
}
: item;
});
return matrix;
}
+56 -22
View File
@@ -3,37 +3,40 @@
"magento": "magento/project-community-edition:>=2.3 <2.4",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-18.04"
"os": "ubuntu-18.04",
"eol": "2022-09-30T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.0 <2.4.1": {
"magento": "magento/project-community-edition:>=2.4.0 <2.4.1",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.6.2",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.1 <2.4.2": {
"magento": "magento/project-community-edition:>=2.4.1 <2.4.2",
"php": 7.4,
"composer": 1,
"mysql": "mysql:8.0",
"mysql": "mysql:8.0.20",
"elasticsearch": "elasticsearch:7.7.1",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.2 <2.4.3": {
"magento": "magento/project-community-edition:>=2.4.2 <2.4.3",
@@ -41,11 +44,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.9.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.3 <2.4.4": {
"magento": "magento/project-community-edition:>=2.4.3 <2.4.4",
@@ -53,11 +57,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.4 <2.4.5": {
"magento": "magento/project-community-edition:>=2.4.4 <2.4.5",
@@ -65,11 +70,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.9",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2025-04-24T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.5 <2.4.6": {
"magento": "magento/project-community-edition:>=2.4.5 <2.4.6",
@@ -77,22 +83,50 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2025-08-09T00:00:00+0000"
},
"magento/project-community-edition:>=2.4.6 <2.4.7": {
"magento": "magento/project-community-edition:>=2.4.6 <2.4.7",
"php": 8.1,
"composer": "2.4.4",
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:7.0",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2026-03-14T00:00:00+0000"
},
"magento/project-community-edition": {
"magento": "magento/project-community-edition",
"php": 8.1,
"composer": "2.4.4",
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:7.0",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2026-03-14T00:00:00+0000"
},
"magento/project-community-edition:next": {
"magento": "magento/project-community-edition:next",
"php": 8.1,
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:7.0",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2026-03-14T00:00:00+0000"
}
}
}
+119 -38
View File
@@ -3,73 +3,79 @@
"magento": "magento/project-community-edition:2.3.7-p3",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-18.04"
"os": "ubuntu-18.04",
"eol": "2022-08-09T00:00:00+0000"
},
"magento/project-community-edition:2.3.7-p4": {
"magento": "magento/project-community-edition:2.3.7-p4",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-18.04"
"os": "ubuntu-18.04",
"eol": "2022-09-30T00:00:00+0000"
},
"magento/project-community-edition:2.4.0": {
"magento": "magento/project-community-edition:2.4.0",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.6.2",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2020-10-15T00:00:00+0000"
},
"magento/project-community-edition:2.4.0-p1": {
"magento": "magento/project-community-edition:2.4.0-p1",
"php": 7.4,
"composer": 1,
"mysql": "mysql:5.7",
"mysql": "mysql:5.7.30",
"elasticsearch": "elasticsearch:7.6.2",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:2.4.1": {
"magento": "magento/project-community-edition:2.4.1",
"php": 7.4,
"composer": 1,
"mysql": "mysql:8.0",
"mysql": "mysql:8.0.20",
"elasticsearch": "elasticsearch:7.7.1",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2021-02-09T00:00:00+0000"
},
"magento/project-community-edition:2.4.1-p1": {
"magento": "magento/project-community-edition:2.4.1-p1",
"php": 7.4,
"composer": 1,
"mysql": "mysql:8.0",
"mysql": "mysql:8.0.20",
"elasticsearch": "elasticsearch:7.7.1",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:5.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:2.4.2": {
"magento": "magento/project-community-edition:2.4.2",
@@ -77,11 +83,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.9.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2021-05-11T00:00:00+0000"
},
"magento/project-community-edition:2.4.2-p1": {
"magento": "magento/project-community-edition:2.4.2-p1",
@@ -89,11 +96,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.9.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2021-08-10T00:00:00+0000"
},
"magento/project-community-edition:2.4.2-p2": {
"magento": "magento/project-community-edition:2.4.2-p2",
@@ -101,11 +109,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.9.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:2.4.3": {
"magento": "magento/project-community-edition:2.4.3",
@@ -113,11 +122,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2021-10-12T00:00:00+0000"
},
"magento/project-community-edition:2.4.3-p1": {
"magento": "magento/project-community-edition:2.4.3-p1",
@@ -125,11 +135,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-04-12T00:00:00+0000"
},
"magento/project-community-edition:2.4.3-p2": {
"magento": "magento/project-community-edition:2.4.3-p2",
@@ -137,11 +148,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-08-09T00:00:00+0000"
},
"magento/project-community-edition:2.4.3-p3": {
"magento": "magento/project-community-edition:2.4.3-p3",
@@ -149,11 +161,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.8",
"rabbitmq": "rabbitmq:3.8-management",
"redis": "redis:6.0",
"varnish": "varnish:6.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-20.04",
"eol": "2022-11-28T00:00:00+0000"
},
"magento/project-community-edition:2.4.4": {
"magento": "magento/project-community-edition:2.4.4",
@@ -161,11 +174,12 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.9",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2022-08-09T00:00:00+0000"
},
"magento/project-community-edition:2.4.4-p1": {
"magento": "magento/project-community-edition:2.4.4-p1",
@@ -173,11 +187,38 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.9",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2022-10-11T00:00:00+0000"
},
"magento/project-community-edition:2.4.4-p2": {
"magento": "magento/project-community-edition:2.4.4-p2",
"php": 8.1,
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.16.3",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2023-03-14T00:00:00+0000"
},
"magento/project-community-edition:2.4.4-p3": {
"magento": "magento/project-community-edition:2.4.4-p3",
"php": 8.1,
"composer": "2.2.21",
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2025-04-24T00:00:00+0000"
},
"magento/project-community-edition:2.4.5": {
"magento": "magento/project-community-edition:2.4.5",
@@ -185,10 +226,50 @@
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest"
"os": "ubuntu-latest",
"eol": "2022-08-09T00:00:00+0000"
},
"magento/project-community-edition:2.4.5-p1": {
"magento": "magento/project-community-edition:2.4.5-p1",
"php": 8.1,
"composer": 2,
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.0",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2023-03-14T00:00:00+0000"
},
"magento/project-community-edition:2.4.5-p2": {
"magento": "magento/project-community-edition:2.4.5-p2",
"php": 8.1,
"composer": "2.2.21",
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:6.2",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2025-08-09T00:00:00+0000"
},
"magento/project-community-edition:2.4.6": {
"magento": "magento/project-community-edition:2.4.6",
"php": 8.1,
"composer": "2.4.4",
"mysql": "mysql:8.0",
"elasticsearch": "elasticsearch:7.17.5",
"rabbitmq": "rabbitmq:3.9-management",
"redis": "redis:7.0",
"varnish": "varnish:7.1",
"nginx": "nginx:1.18",
"os": "ubuntu-latest",
"eol": "2026-03-14T00:00:00+0000"
}
}
+1 -1
View File
@@ -34,7 +34,7 @@ runs:
working-directory: ${{ inputs.source_folder }}
id: composer-cache
run: |
echo "::set-output name=dir::$(composer config cache-files-dir)"
echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: "Cache Composer Packages"
uses: actions/cache@v3