├── .eslintrc.cjs ├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── documentation.md │ ├── feature_request.md │ ├── other.md │ └── performance_issue.md ├── PULL_REQUEST_TEMPLATE.md ├── dependabot.yml └── workflows │ ├── _internal-coding-standard.yaml │ ├── _internal-get-composer-version.yaml │ ├── _internal-get-magento-version.yaml │ ├── _internal-install.yaml │ ├── _internal-integration.yaml │ ├── _internal-semver-compare.yaml │ ├── _internal-setup-magento.yaml │ ├── _internal-unit.yaml │ ├── _internal_test_actions.yaml │ ├── integration-README.md │ ├── integration.yaml │ └── release-please.yml ├── .gitignore ├── .nvmrc ├── .release-please-manifest.json ├── .vscode └── extensions.json ├── CHANGELOG.md ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── README.md ├── _test └── demo-package │ ├── .gitignore │ ├── README.md │ ├── Test │ ├── Integration │ │ └── ItWorksTest.php │ └── Unit │ │ └── ItWorksTest.php │ ├── composer.json │ ├── composer.lock │ ├── etc │ └── module.xml │ ├── phpunit.xml │ └── registration.php ├── cache-magento ├── README.md └── action.yml ├── coding-standard-baseline ├── README.md └── action.yml ├── coding-standard ├── README.md └── action.yml ├── fix-magento-install ├── README.md └── action.yml ├── get-composer-version ├── README.md └── action.yml ├── get-magento-version ├── README.md └── action.yml ├── installation-test ├── README.md └── action.yml ├── package-lock.json ├── package.json ├── release-please-config.json ├── semver-compare ├── README.md └── action.yml ├── setup-di-compile ├── README.md └── action.yml ├── setup-magento ├── README.md └── action.yml ├── supported-version ├── README.md ├── action.yml ├── dist │ └── index.js ├── jest.config.js ├── package-lock.json ├── package.json ├── src │ ├── index.ts │ ├── kind │ │ ├── get-currently-supported.spec.ts │ │ ├── get-currently-supported.ts │ │ ├── kinds.ts │ │ ├── recent.spec.ts │ │ ├── recent.ts │ │ ├── special-versions │ │ │ ├── latest.json │ │ │ └── nightly.json │ │ ├── validate-kinds.spec.ts │ │ ├── validate-kinds.ts │ │ ├── validations │ │ │ ├── custom-versions-validator.ts │ │ │ └── is-known-kind.ts │ │ └── validator.ts │ ├── matrix │ │ ├── get-matrix-for-kind.spec.ts │ │ ├── get-matrix-for-kind.ts │ │ ├── get-matrix-for-versions.ts │ │ └── matrix-type.ts │ ├── nightly │ │ ├── amend-matrix-for-next.spec.ts │ │ ├── amend-matrix-for-next.ts │ │ ├── get-day-before.ts │ │ ├── get-next-version.spec.ts │ │ ├── get-next-version.ts │ │ ├── repository.ts │ │ ├── unify-next-package-name.spec.ts │ │ └── unify-next-package-name.ts │ ├── project │ │ ├── projects.ts │ │ ├── validate-projects.spec.ts │ │ ├── validate-projects.ts │ │ ├── validations │ │ │ ├── is-known-project.spec.ts │ │ │ └── is-known-project.ts │ │ └── validator.ts │ └── versions │ │ ├── get-versions-for-project.spec.ts │ │ ├── get-versions-for-project.ts │ │ ├── mage-os │ │ ├── composite.json │ │ └── individual.json │ │ └── magento-open-source │ │ ├── composite.json │ │ └── individual.json └── tsconfig.json └── unit-test ├── README.md └── action.yml /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'], 3 | parser: '@typescript-eslint/parser', 4 | plugins: ['@typescript-eslint'], 5 | root: true, 6 | }; -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report or Regression 3 | about: Create a report to help us fix an issue or regression 4 | title: '[BUG]' 5 | labels: 'bug' 6 | assignees: 'damienwebdev' 7 | --- 8 | 9 | 14 | 15 | # :bug: Bug report 16 | 17 | ## Current Behavior 18 | 19 | 20 | 21 | ## Expected Behavior 22 | 23 | 24 | 25 | ## Minimal reproduction of the problem with instructions 26 | 27 | 28 | 29 | ## What is the motivation / use case for changing the behavior? 30 | 31 | 32 | 33 | ## Environment 34 | 35 |
36 | Magento version: X.Y.Z
37 | PHP Version version: X.Y.Z
38 |
39 |
40 | Others:
41 |
42 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/documentation.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Documentation Request
3 | about: Request additional documentation or clarification on a feature.
4 | title: '[DOCS]'
5 | labels: 'docs'
6 | assignees: 'damienwebdev'
7 | ---
8 |
9 |
14 |
15 | # :page_facing_up: Documentation Request
16 |
17 | ## What were you doing?
18 |
19 |
20 |
21 | ## Expected behavior
22 |
23 |
24 |
25 | ## Existing Documentation
26 |
27 |
28 | ## Environment
29 |
30 |
31 | Magento version: X.Y.Z
32 | PHP Version version: X.Y.Z
33 |
34 |
35 | Others:
36 |
37 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature Request
3 | about: Ask for a new feature, or something that you'd like to see changed.
4 | title: '[FEAT]'
5 | labels: 'feat'
6 | assignees: 'damienwebdev'
7 | ---
8 |
9 |
14 |
15 | # :bulb: Feature request
16 |
17 | ## Feature Name
18 |
19 |
20 |
21 | ## The Desired Behavior
22 |
23 |
24 |
25 | ## Your Use Case
26 |
27 |
28 |
29 | ## Prior Work
30 |
31 |
32 |
33 | ## Environment
34 |
35 |
36 | Magento version: X.Y.Z
37 | PHP Version version: X.Y.Z
38 |
39 |
40 | Others:
41 |
42 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/other.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Other
3 | about: Report a general issue that isn't covered by other issue templates.
4 | title: '[OTHER]'
5 | labels: ''
6 | assignees: ''
7 | ---
8 |
9 |
14 |
15 | # :question: Other
16 |
17 |
18 |
19 | ## Environment
20 |
21 |
22 | Magento version: X.Y.Z
23 | PHP Version version: X.Y.Z
24 |
25 |
26 | Others:
27 |
28 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/performance_issue.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Performance Issue
3 | about: Create a report about a performance problem.
4 | title: '[PERF]'
5 | labels: 'perf'
6 | assignees: 'damienwebdev'
7 | ---
8 |
9 |
14 |
15 | # :turtle: Performance Issue
16 |
17 | ## Current behavior
18 |
19 |
20 |
21 | ## Expected behavior
22 |
23 |
24 |
25 | ## Minimal reproduction of the problem with instructions
26 |
27 |
28 |
29 | ## What is the motivation / use case for changing the behavior?
30 |
31 |
32 |
33 | ## Environment
34 |
35 |
36 | Magento version: X.Y.Z
37 | PHP Version version: X.Y.Z
38 |
39 |
40 | Others:
41 |
42 |
--------------------------------------------------------------------------------
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | ## PR Checklist
2 | Please check if your PR fulfills the following requirements:
3 |
4 | - [ ] The commit message follows our guidelines: https://github.com/graycoreio/github-actions-magento2/blob/main/CONTRIBUTING.md#commit
5 | - [ ] Tests for the changes have been added (for bug fixes / features)
6 | - [ ] Docs have been added / updated (for bug fixes / features)
7 |
8 |
9 | ## PR Type
10 | What kind of change does this PR introduce?
11 |
12 |
13 | - [ ] Bugfix
14 | - [ ] Feature
15 | - [ ] Code style update (formatting, local variables)
16 | - [ ] Refactoring (no functional changes, no api changes)
17 | - [ ] Build related changes
18 | - [ ] CI related changes
19 | - [ ] Documentation content changes
20 | - [ ] Other... Please describe:
21 |
22 | ## What is the current behavior?
23 |
24 |
25 | Fixes: N/A
26 |
27 |
28 | ## What is the new behavior?
29 |
30 |
31 | ## Does this PR introduce a breaking change?
32 | - [ ] Yes
33 | - [ ] No
34 |
35 |
36 |
37 |
38 | ## Other information
39 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | # Maintain dependencies for GitHub Actions
4 | - package-ecosystem: "github-actions"
5 | directory: "/"
6 | schedule:
7 | interval: "weekly"
8 | - package-ecosystem: "npm"
9 | directory: "/"
10 | schedule:
11 | interval: "weekly"
--------------------------------------------------------------------------------
/.github/workflows/_internal-coding-standard.yaml:
--------------------------------------------------------------------------------
1 | name: Coding Standard
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | paths:
8 | - "_test/demo-package/**"
9 | - ".github/workflows/_internal-coding-standard.yaml"
10 | - "coding-standard/**"
11 | - "!(**/*.md)"
12 | pull_request:
13 | branches:
14 | - main
15 | paths:
16 | - "_test/demo-package/**"
17 | - ".github/workflows/_internal-coding-standard.yaml"
18 | - "coding-standard/**"
19 | - "!(**/*.md)"
20 | workflow_dispatch:
21 | inputs:
22 | version:
23 | type: string
24 | default: '*'
25 | description: The version of the coding standard to use.
26 | required: false
27 | path:
28 | type: string
29 | default: '_test/demo-package'
30 | description: Path to run the coding standard on.
31 | required: true
32 |
33 | jobs:
34 | compute_matrix:
35 | runs-on: ubuntu-latest
36 | outputs:
37 | matrix: ${{ steps.supported-version.outputs.matrix }}
38 | steps:
39 | - uses: actions/checkout@v4
40 | - uses: ./supported-version
41 | with:
42 | kind: currently-supported
43 | id: supported-version
44 | - run: echo ${{ steps.supported-version.outputs.matrix }}
45 |
46 | coding-standard:
47 | needs: compute_matrix
48 | strategy:
49 | matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }}
50 | fail-fast: false
51 | runs-on: ubuntu-latest
52 | steps:
53 | - uses: actions/checkout@v4
54 | - uses: './coding-standard'
55 | with:
56 | version: ${{ github.event.inputs.version || '*' }}
57 | path: ${{ github.event.inputs.path || '_test/demo-package' }}
58 | composer_version: ${{ matrix.composer }}
59 | php_version: ${{ matrix.php }}
--------------------------------------------------------------------------------
/.github/workflows/_internal-get-composer-version.yaml:
--------------------------------------------------------------------------------
1 | name: Get Composer Version
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | - testing
8 | paths:
9 | - ".github/workflows/_internal-get-composer-version.yaml"
10 | - "get-composer-version/**"
11 | - "!(**/*.md)"
12 | pull_request:
13 | branches:
14 | - main
15 | paths:
16 | - ".github/workflows/_internal-get-composer-version.yaml"
17 | - "get-composer-version/**"
18 | - "!(**/*.md)"
19 |
20 | jobs:
21 | get-composer-version:
22 | runs-on: ubuntu-latest
23 | steps:
24 | - uses: actions/checkout@v4
25 | - name: Set PHP Version
26 | uses: shivammathur/setup-php@v2
27 | with:
28 | php-version: 8.1
29 | tools: composer:v2.4.2
30 |
31 | - uses: ./get-composer-version
32 | id: composer-version
33 |
34 |
35 | - name: Fail if versions do not match
36 | if: steps.composer-version.outputs.version != '2.4.2'
37 | shell: bash
38 | run: echo "${{ steps.composer-version.outputs.version }}" && exit 1
39 |
--------------------------------------------------------------------------------
/.github/workflows/_internal-get-magento-version.yaml:
--------------------------------------------------------------------------------
1 | name: Get Magento Version
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | paths:
8 | - ".github/workflows/_internal-get-magento-version.yaml"
9 | - "get-magento-version/**"
10 | - "!(**/*.md)"
11 | pull_request:
12 | branches:
13 | - main
14 | paths:
15 | - ".github/workflows/_internal-get-magento-version.yaml"
16 | - "get-magento-version/**"
17 | - "!(**/*.md)"
18 |
19 | jobs:
20 | get-magento-version:
21 | runs-on: ubuntu-latest
22 | steps:
23 | - uses: actions/checkout@v4
24 | - name: Set PHP Version
25 | uses: shivammathur/setup-php@v2
26 | with:
27 | php-version: 8.1
28 | tools: composer:v2.4.2
29 |
30 | - run: composer create-project --repository-url="https://mirror.mage-os.org" "magento/project-community-edition:2.4.5-p1" ../magento2 --no-install
31 | shell: bash
32 | name: Create Magento ${{ matrix.magento }} Project
33 |
34 | - uses: ./get-magento-version
35 | id: magento-version
36 | with:
37 | working-directory: ../magento2
38 |
39 | - name: Fail if key does not match
40 | if: steps.magento-version.outputs.version != '"2.4.5-p1"'
41 | shell: bash
42 | run: echo "${{ steps.magento-version.outputs.version }}" && exit 1
43 |
--------------------------------------------------------------------------------
/.github/workflows/_internal-install.yaml:
--------------------------------------------------------------------------------
1 | name: Installation Test
2 |
3 | on:
4 | workflow_dispatch: {}
5 | push:
6 | branches:
7 | - main
8 | paths:
9 | - "_test/demo-package/**"
10 | - "installation-test/**"
11 | - ".github/workflows/_internal-install.yaml"
12 | - "supported-version/**"
13 | - "!(**/*.md)"
14 | pull_request:
15 | branches:
16 | - main
17 | paths:
18 | - "_test/demo-package/**"
19 | - "installation-test/**"
20 | - ".github/workflows/_internal-install.yaml"
21 | - "supported-version/**"
22 | - "!(**/*.md)"
23 |
24 | env:
25 | MAGENTO_COMPOSER_REPO: "https://mirror.mage-os.org/"
26 |
27 | jobs:
28 | compute_matrix:
29 | runs-on: ubuntu-latest
30 | outputs:
31 | matrix: ${{ steps.supported-version.outputs.matrix }}
32 | steps:
33 | - uses: actions/checkout@v4
34 | - uses: ./supported-version
35 | with:
36 | kind: currently-supported
37 | id: supported-version
38 | - run: echo ${{ steps.supported-version.outputs.matrix }}
39 |
40 | install-test:
41 | needs: compute_matrix
42 | strategy:
43 | matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }}
44 | fail-fast: false
45 | runs-on: ubuntu-latest
46 | steps:
47 | - uses: actions/checkout@v4
48 | - uses: ./installation-test
49 | with:
50 | composer_version: ${{ matrix.composer }}
51 | php_version: ${{ matrix.php }}
52 | magento_version: ${{ matrix.magento }}
53 | package_name: mage-os/magento2-demo-package
54 | source_folder: $GITHUB_WORKSPACE/_test/demo-package
55 | composer_auth: ${{ secrets.COMPOSER_AUTH }}
56 | magento_repository: ${{ env.MAGENTO_COMPOSER_REPO }}
--------------------------------------------------------------------------------
/.github/workflows/_internal-integration.yaml:
--------------------------------------------------------------------------------
1 | name: Integration Test
2 |
3 | on:
4 | workflow_dispatch: {}
5 | push:
6 | branches:
7 | - main
8 | paths:
9 | - "_test/demo-package/**"
10 | - ".github/workflows/_internal-integration.yaml"
11 | - ".github/workflows/integration.yaml"
12 | - "supported-version/**"
13 | - "!(**/*.md)"
14 | pull_request:
15 | branches:
16 | - main
17 | paths:
18 | - "_test/demo-package/**"
19 | - ".github/workflows/_internal-integration.yaml"
20 | - ".github/workflows/integration.yaml"
21 | - "supported-version/**"
22 | - "!(**/*.md)"
23 |
24 | jobs:
25 | compute_matrix:
26 | runs-on: ubuntu-latest
27 | outputs:
28 | matrix: ${{ steps.supported-version.outputs.matrix }}
29 | steps:
30 | - uses: actions/checkout@v4
31 | - uses: ./supported-version
32 | with:
33 | kind: currently-supported
34 | id: supported-version
35 | - run: echo ${{ steps.supported-version.outputs.matrix }}
36 | integration-workflow:
37 | needs: compute_matrix
38 | uses: ./.github/workflows/integration.yaml
39 | with:
40 | package_name: mage-os/magento2-demo-package
41 | source_folder: $GITHUB_WORKSPACE/_test/demo-package
42 | matrix: ${{ needs.compute_matrix.outputs.matrix }}
43 | test_command: ../../../vendor/bin/phpunit ../../../vendor/mage-os/magento2-demo-package/Test/Integration
44 | fail-fast: false
45 | secrets:
46 | composer_auth: ${{ secrets.COMPOSER_AUTH }}
47 |
--------------------------------------------------------------------------------
/.github/workflows/_internal-semver-compare.yaml:
--------------------------------------------------------------------------------
1 | name: Test semvar-compare action
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | paths:
8 | - ".github/workflows/_internal-semver-compare.yaml"
9 | - "semver-compare/**"
10 | - "!(**/*.md)"
11 | pull_request:
12 | branches:
13 | - main
14 | paths:
15 | - ".github/workflows/_internal-semver-compare.yaml"
16 | - "semver-compare/**"
17 | - "!(**/*.md)"
18 |
19 | jobs:
20 | semver-compare:
21 | runs-on: ubuntu-latest
22 | steps:
23 | - uses: actions/checkout@v4
24 |
25 | - uses: ./semver-compare
26 | id: version-compare-1
27 | with:
28 | version: 2.2.3
29 | compare_against: 2.3
30 |
31 | - uses: ./semver-compare
32 | id: version-compare-2
33 | with:
34 | version: 2
35 | compare_against: 2.0.1
36 |
37 | - uses: ./semver-compare
38 | id: version-compare-3
39 | with:
40 | version: 2.2.1
41 | compare_against: 2.2
42 |
43 |
44 | - uses: ./semver-compare
45 | id: version-compare-4
46 | with:
47 | version: 2.2.0
48 | compare_against: 2.2.0
49 |
50 | - name: Fail if 2.3 is not higher than 2.2.3
51 | if: steps.version-compare-1.outputs.result != -1
52 | shell: bash
53 | run: echo "FAIL because 2.3 must be higher than 2.2.3 Compare 2.2.3 to 2.3 renders ${{ steps.version-compare-1.outputs.result }}" && exit 1
54 |
55 |
56 | - name: Fail if 2.0.1 is not higher than 2
57 | if: steps.version-compare-2.outputs.result != -1
58 | shell: bash
59 | run: echo "FAIL because 2.0.1 must be higher than 2 Compare 2 to 2.0.1 renders ${{ steps.version-compare-2.outputs.result }}" && exit 1
60 |
61 | - name: Fail if 2.2.1 is not higher than 2.2
62 | if: steps.version-compare-3.outputs.result != 1
63 | shell: bash
64 | run: echo "FAIL because 2.2.1 must be higher than 2.2 Compare 2.2.1 to 2.2 renders ${{ steps.version-compare-3.outputs.result }}" && exit 1
65 |
66 | - name: Fail if 2.2.0 is not equals to 2.2.0
67 | if: steps.version-compare-4.outputs.result != 0
68 | shell: bash
69 | run: echo "FAIL because 2.2.0 must be equal to 2.2.0 Compare 2.2.0 to 2.2.0 renders ${{ steps.version-compare-4.outputs.result }}" && exit 1
70 |
--------------------------------------------------------------------------------
/.github/workflows/_internal-setup-magento.yaml:
--------------------------------------------------------------------------------
1 | name: Setup Magento Test
2 |
3 | on:
4 | workflow_dispatch: {}
5 | push:
6 | branches:
7 | - main
8 | paths:
9 | - "setup-magento/**"
10 | - ".github/workflows/_internal-setup-magento.yaml"
11 | - "supported-version/**"
12 | - "!(**/*.md)"
13 | pull_request:
14 | branches:
15 | - main
16 | paths:
17 | - "setup-magento/**"
18 | - ".github/workflows/_internal-setup-magento.yaml"
19 | - "supported-version/**"
20 | - "!(**/*.md)"
21 |
22 | env:
23 | PSEUDO_REPO_FOLDER: ../magento_repo
24 | magento_folder: ../magento2
25 | MAGENTO_COMPOSER_REPO: "https://mirror.mage-os.org/"
26 |
27 | jobs:
28 | compute_matrix:
29 | runs-on: ubuntu-latest
30 | outputs:
31 | matrix: ${{ steps.supported-version.outputs.matrix }}
32 | steps:
33 | - uses: actions/checkout@v4
34 | - uses: ./supported-version
35 | with:
36 | kind: currently-supported
37 | id: supported-version
38 | - run: echo ${{ steps.supported-version.outputs.matrix }}
39 |
40 | setup-magento-store:
41 | needs: compute_matrix
42 | strategy:
43 | matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }}
44 | fail-fast: false
45 | runs-on: ubuntu-latest
46 | steps:
47 | - uses: actions/checkout@v4
48 |
49 | - run: |
50 | PSEUDO_STORE_FULL_PATH=$(realpath "${{ env.PSEUDO_REPO_FOLDER }}")
51 | echo "PSEUDO_STORE_FULL_PATH=$PSEUDO_STORE_FULL_PATH" >> $GITHUB_ENV
52 | name: Generate Full Pseudo Store Path
53 | shell: bash
54 |
55 | - name: Set PHP Version
56 | uses: shivammathur/setup-php@v2
57 | with:
58 | php-version: ${{ matrix.php }}
59 | tools: composer:v${{ matrix.composer }}
60 |
61 | - uses: actions/cache@v4
62 | id: setup-magento-store-cache
63 | with:
64 | key: setup-magento-ci | ${{ runner.os }} | ${{ matrix.magento }}
65 | path: ${{ env.PSEUDO_STORE_FULL_PATH }}
66 |
67 | - run: composer create-project --repository-url="${{ env.MAGENTO_COMPOSER_REPO }}" "${{ matrix.magento }}" "${{ env.PSEUDO_REPO_FOLDER }}" --no-install
68 | name: Create Store to simulate a real Magento store in a real repo.
69 | if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
70 | env:
71 | COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
72 |
73 | - uses: ./fix-magento-install
74 | name: Fix Magento Out of Box Install Issues
75 | with:
76 | magento_directory: ${{ env.PSEUDO_REPO_FOLDER }}
77 | if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
78 | env:
79 | COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
80 |
81 | - run: composer install
82 | shell: bash
83 | working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
84 | if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
85 | env:
86 | COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
87 |
88 | - 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
89 | working-directory: "${{ env.PSEUDO_REPO_FOLDER }}"
90 | if: steps.setup-magento-store-cache.outputs.cache-hit != 'true'
91 |
92 | - run: cp -R ${{ env.PSEUDO_REPO_FOLDER }} ${{ env.magento_folder }}
93 | shell: bash
94 |
95 | - uses: ./setup-magento
96 | id: setup-magento
97 | with:
98 | php-version: ${{ matrix.php }}
99 | tools: composer:v${{ matrix.composer }}
100 | mode: store
101 | working-directory: ${{ env.magento_folder }}
102 | composer_auth: ${{ secrets.COMPOSER_AUTH }}
103 |
104 | - uses: graycoreio/github-actions-magento2/cache-magento@main
105 | with:
106 | mode: 'store'
107 | composer_cache_key: '${{ matrix.magento }}'
108 |
109 | - run: composer install
110 | name: Composer install
111 | shell: bash
112 | working-directory: ${{ steps.setup-magento.outputs.path }}
113 | env:
114 | COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
115 |
116 | setup-magento-extension:
117 | runs-on: ubuntu-latest
118 | steps:
119 | - uses: actions/checkout@v4
120 |
121 | - uses: ./setup-magento
122 | id: setup-magento
123 | with:
124 | php-version: 8.4
125 | tools: composer:v2
126 | mode: extension
127 | magento_repository: ${{ env.MAGENTO_COMPOSER_REPO }}
128 | composer_auth: ${{ secrets.COMPOSER_AUTH }}
129 | magento_version: magento/project-community-edition:2.4.8
130 |
131 | - uses: graycoreio/github-actions-magento2/cache-magento@main
132 | with:
133 | mode: 'extension'
134 | composer_cache_key: 'magento/project-community-edition:2.4.8'
135 |
136 | - run: composer install
137 | name: Composer install
138 | shell: bash
139 | working-directory: ${{ steps.setup-magento.outputs.path }}
140 | env:
141 | COMPOSER_AUTH: ${{ secrets.COMPOSER_AUTH }}
142 |
--------------------------------------------------------------------------------
/.github/workflows/_internal-unit.yaml:
--------------------------------------------------------------------------------
1 | name: Unit Test
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | paths:
8 | - "_test/demo-package/**"
9 | - ".github/workflows/_internal-unit.yaml"
10 | - "unit-test/**"
11 | - "!(**/*.md)"
12 | pull_request:
13 | branches:
14 | - main
15 | paths:
16 | - "_test/demo-package/**"
17 | - ".github/workflows/_internal-unit.yaml"
18 | - "unit-test/**"
19 | - "!(**/*.md)"
20 |
21 | jobs:
22 | unit-test:
23 | strategy:
24 | matrix:
25 | php_version:
26 | - 7.4
27 | - 8.1
28 | runs-on: ubuntu-latest
29 | steps:
30 | - uses: actions/checkout@v4
31 | - uses: ./unit-test
32 | with:
33 | source_folder: _test/demo-package
34 | php_version: ${{ matrix.php_version }}
35 |
--------------------------------------------------------------------------------
/.github/workflows/_internal_test_actions.yaml:
--------------------------------------------------------------------------------
1 | name: Test Actions
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | paths:
8 | - ".github/workflows/_internal-supported-version.yaml"
9 | - "supported-version/**"
10 | - "package-lock.json"
11 | - "!(**/*.md)"
12 | pull_request:
13 | branches:
14 | - main
15 | paths:
16 | - ".github/workflows/_internal-supported-version.yaml"
17 | - "supported-version/**"
18 | - "package-lock.json"
19 | - "!(**/*.md)"
20 |
21 | jobs:
22 | unit-test:
23 | runs-on: ubuntu-latest
24 | steps:
25 | - uses: actions/checkout@v4
26 |
27 | - run: npm ci
28 | shell: bash
29 |
30 | - run: npm test
31 | shell: bash
--------------------------------------------------------------------------------
/.github/workflows/integration-README.md:
--------------------------------------------------------------------------------
1 | # Integration Tests for a Magento Package
2 |
3 | A Github Workflow that runs the Integration Tests of a Magento Package
4 |
5 | ## Inputs
6 |
7 | See the [integration.yaml](./integration.yaml)
8 |
9 | | Input | Description | Required | Default |
10 | | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ----------------------------- |
11 | | matrix | JSON string of [version matrix for Magento](./#matrix-format) | true | NULL |
12 | | fail-fast | Same as Github's [fail-fast](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategyfail-fast) | false | true |
13 | | package_name | The name of the package | true | NULL |
14 | | source_folder | The source folder of the package | false | $GITHUB_WORKSPACE |
15 | | magento_directory | The folder where Magento will be installed | false | ../magento2 |
16 | | magento_repository | Where to install Magento from | false | https://mirror.mage-os.org/ |
17 | | test_command | The integration test command to run | false | "../../../vendor/bin/phpunit" |
18 | | composer_cache_key | A key to version the composer cache. Can be incremented if you need to bust the cache. | false | "" |
19 |
20 | ## Secrets
21 | | Input | Description | Required | Default |
22 | | ------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- |
23 | | composer_auth | JSON string of [composer credentials](https://devdocs.magento.com/guides/v2.4/install-gde/prereq/connect-auth.html) | false | NULL |
24 |
25 | ### Matrix Format
26 |
27 | The Magento matrix format outlined by the [supported versions action.](https://github.com/graycoreio/github-actions-magento2/tree/main/supported-version/supported.json)
28 |
29 |
30 | ## Usage
31 |
32 | ```yml
33 | name: Integration Test
34 |
35 | on:
36 | push:
37 | branches:
38 | - main
39 | pull_request:
40 | branches:
41 | - main
42 |
43 | jobs:
44 | compute_matrix:
45 | runs-on: ubuntu-latest
46 | outputs:
47 | matrix: ${{ steps.supported-version.outputs.matrix }}
48 | steps:
49 | - uses: actions/checkout@v2
50 | - uses: graycoreio/github-actions-magento2/supported-version@main
51 | id: supported-version
52 | - run: echo ${{ steps.supported-version.outputs.matrix }}
53 | integration-workflow:
54 | needs: compute_matrix
55 | uses: graycoreio/github-actions-magento2/.github/workflows/integration.yaml@main
56 | with:
57 | package_name: my-vendor/package
58 | matrix: ${{ needs.compute_matrix.outputs.matrix }}
59 | test_command: ../../../vendor/bin/phpunit ../../../vendor/my-vendor/package/Test/Integration
60 | secrets:
61 | composer_auth: ${{ secrets.COMPOSER_AUTH }}
62 | ```
63 |
--------------------------------------------------------------------------------
/.github/workflows/integration.yaml:
--------------------------------------------------------------------------------
1 | on:
2 | workflow_call:
3 | inputs:
4 | use_local_source:
5 | type: boolean
6 | required: false
7 | default: true
8 | description: "Whether or not you want to test your local package or not."
9 |
10 | source_folder:
11 | type: string
12 | required: false
13 | default: $GITHUB_WORKSPACE
14 | description: "The source folder of the package"
15 |
16 | package_name:
17 | type: string
18 | required: true
19 | description: "The name of the package"
20 |
21 | magento_directory:
22 | type: string
23 | required: false
24 | default: "../magento2"
25 | description: "The folder where Magento will be installed"
26 |
27 | magento_repository:
28 | type: string
29 | required: false
30 | default: "https://mirror.mage-os.org/"
31 | description: "Where to install Magento from"
32 |
33 | matrix:
34 | type: string
35 | required: true
36 | description: "The matrix of Magento versions to test against"
37 |
38 | fail-fast:
39 | type: boolean
40 | required: false
41 | default: true
42 |
43 | test_command:
44 | type: string
45 | required: false
46 | default: ../../../vendor/bin/phpunit
47 | description: "The integration test command to run"
48 |
49 | composer_cache_key:
50 | type: string
51 | required: false
52 | default: ''
53 | description: A key to version the composer cache. Can be incremented if you need to bust the cache.
54 |
55 | secrets:
56 | composer_auth:
57 | required: false
58 |
59 | jobs:
60 | integration_test:
61 | runs-on: ${{ matrix.os }}
62 | strategy:
63 | fail-fast: ${{ inputs.fail-fast }}
64 | matrix: ${{ fromJSON(inputs.matrix) }}
65 | services:
66 | elasticsearch:
67 | image: ${{ matrix.elasticsearch }}
68 | env:
69 | # By default, ElasticSearch refuses to spawn in single node configuration, as it expects redundancy.
70 | # This is a dev environment, so redundancy is just wasteful.
71 | discovery.type: single-node
72 | # Disable HTTPS and password authentication
73 | # this is a local dev environment, so the added CA chain complexity is an extreme overkill
74 | xpack.security.enabled: false
75 | xpack.security.http.ssl.enabled: false
76 | xpack.security.transport.ssl.enabled: false
77 |
78 | options: >-
79 | --health-cmd "curl http://localhost:9200/_cluster/health"
80 | --health-interval 10s
81 | --health-timeout 5s
82 | --health-retries 10
83 | ports:
84 | - 9200:9200
85 |
86 | mysql:
87 | image: ${{ matrix.mysql }}
88 | env:
89 | MYSQL_DATABASE: magento_integration_tests
90 | MYSQL_USER: user
91 | MYSQL_PASSWORD: password
92 | MYSQL_ROOT_PASSWORD: rootpassword
93 | ports:
94 | - 3306:3306
95 | options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
96 |
97 | rabbitmq:
98 | image: ${{ matrix.rabbitmq }}
99 | env:
100 | RABBITMQ_DEFAULT_USER: guest
101 | RABBITMQ_DEFAULT_PASS: guest
102 | ports:
103 | - 5672:5672
104 | steps:
105 | - uses: actions/checkout@v4
106 | - name: Set PHP Version
107 | uses: shivammathur/setup-php@v2
108 | with:
109 | php-version: ${{ matrix.php }}
110 | tools: composer:v${{ matrix.composer }}
111 | coverage: none
112 |
113 | - run: composer create-project --repository-url="${{ inputs.magento_repository }}" "${{ matrix.magento }}" ${{ inputs.magento_directory }} --no-install
114 | shell: bash
115 | env:
116 | COMPOSER_AUTH: ${{ secrets.composer_auth }}
117 | name: Create Magento ${{ matrix.magento }} Project
118 |
119 | - uses: graycoreio/github-actions-magento2/get-magento-version@main
120 | id: magento-version
121 | with:
122 | working-directory: ${{ inputs.magento_directory }}
123 |
124 | - name: Get Composer Cache Directory
125 | shell: bash
126 | working-directory: ${{ inputs.magento_directory }}
127 | id: composer-cache
128 | run: |
129 | echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
130 |
131 |
132 | - name: "Cache Composer Packages"
133 | uses: actions/cache@v4
134 | with:
135 | key: "composer | v5 | ${{ inputs.composer_cache_key }} | ${{ hashFiles('composer.lock') }} | ${{ matrix.os }} | ${{ matrix.composer }} | ${{ matrix.php }} | ${{ matrix.magento }}"
136 | path: ${{ steps.composer-cache.outputs.dir }}
137 |
138 | - run: composer config repositories.local path ${{ inputs.source_folder }}
139 | name: Add Github Repo for Testing
140 | working-directory: ${{ inputs.magento_directory }}
141 | shell: bash
142 | if: ${{ inputs.use_local_source == true }}
143 |
144 | - run: composer require monolog/monolog:"<2.7.0" --no-update
145 | name: Fixup Monolog (https://github.com/magento/magento2/pull/35596)
146 | working-directory: ${{ inputs.magento_directory }}
147 | if: |
148 | steps.magento-version.outputs.version == '"2.4.4"'
149 |
150 | - run: composer require "dotmailer/dotmailer-magento2-extension-package:4.6.0-p2 as 4.6.0" --no-update
151 | name: Fixup Dotmailer (https://devdocs.magento.com/guides/v2.4/release-notes/release-notes-2-4-0-commerce.html#dotdigital-1)
152 | working-directory: ${{ inputs.magento_directory }}
153 | if: |
154 | steps.magento-version.outputs.version == '"2.4.0"'
155 |
156 | - run: |
157 | composer config --no-interaction allow-plugins.dealerdirect/phpcodesniffer-composer-installer true
158 | composer config --no-interaction allow-plugins.laminas/laminas-dependency-plugin true
159 | composer config --no-interaction allow-plugins.magento/* true
160 | name: Fixup Composer Plugins
161 | working-directory: ${{ inputs.magento_directory }}
162 | if: ${{ !startsWith(matrix.composer, '1') }}
163 |
164 | - run: |
165 | composer global require hirak/prestissimo
166 | name: Install composer plugin for parallel downloads
167 | working-directory: ${{ inputs.magento_directory }}
168 | if: ${{ startsWith(matrix.composer, '1') }}
169 |
170 | - run: composer require ${{ inputs.package_name }} "@dev" --no-update && composer install
171 | name: Require and attempt install
172 | working-directory: ${{ inputs.magento_directory }}
173 | shell: bash
174 | env:
175 | COMPOSER_CACHE_DIR: ${{ steps.composer-cache.outputs.dir }}
176 | COMPOSER_AUTH: ${{ secrets.composer_auth }}
177 |
178 | - name: Replace Configuration Settings for env
179 | working-directory: ${{ inputs.magento_directory }}/dev/tests/integration
180 | run: |
181 | sed -i "s/'db-host' => 'localhost'/'db-host' => '127.0.0.1'/" etc/install-config-mysql.php.dist
182 | sed -i "s/'db-user' => 'root'/'db-user' => 'user'/" etc/install-config-mysql.php.dist
183 | sed -i "s/'db-password' => '123123q'/'db-password' => 'password'/" etc/install-config-mysql.php.dist
184 | sed -i "s/'elasticsearch-host' => 'localhost'/'elasticsearch-host' => '127.0.0.1'/" etc/install-config-mysql.php.dist
185 | sed -i "s/'amqp-host' => 'localhost'/'amqp-host' => '127.0.0.1'/" etc/install-config-mysql.php.dist
186 |
187 | # mysql server 5.7 doesn't have the column-statistics expected by mysql client 8 (failing 2.3.7-p* builds)
188 | # ref: https://gist.github.com/tobias-khs/8dcf82f719a2b3a7c3b9604b4df53bbf
189 | - name: Switch from mysql-client 8 to mysql-client 5.7
190 | if: |
191 | steps.magento-version.outputs.version == '"2.3.7-p3"' || steps.magento-version.outputs.version == '"2.3.7-p4"'
192 | run: |
193 | mkdir -p /tmp/mysql-5.7
194 | cd /tmp/mysql-5.7
195 | sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
196 | sudo rm -rf /etc/mysql /var/lib/mysql
197 | sudo apt-get autoremove
198 | sudo apt-get autoclean
199 | wget --quiet https://downloads.mysql.com/archives/get/p/23/file/mysql-server_5.7.30-1ubuntu18.04_amd64.deb-bundle.tar
200 | tar -xf mysql-server_5.7.30-1ubuntu18.04_amd64.deb-bundle.tar
201 | sudo dpkg -i mysql-common_5.7.30-1ubuntu18.04_amd64.deb
202 | sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
203 | sudo dpkg -i mysql-community-client_5.7.30-1ubuntu18.04_amd64.deb
204 | sudo dpkg -i mysql-client_5.7.30-1ubuntu18.04_amd64.deb
205 | sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb
206 | mysqldump --version
207 |
208 | - name: Enable log-bin-trust-function-creators
209 | run: |
210 | mysql -h127.0.0.1 -uroot -prootpassword -e "SET GLOBAL log_bin_trust_function_creators = 1;"
211 |
212 |
213 | - run: ${{ inputs.test_command }}
214 | working-directory: ${{ inputs.magento_directory }}/dev/tests/integration
215 | name: Run Integration Tests
216 |
217 | - name: Upload test sandbox dir
218 | uses: actions/upload-artifact@v4
219 | if: failure()
220 | with:
221 | name: sandbox-data-${{ steps.magento-version.outputs.version }}
222 | path: /home/runner/work/infrastructure/magento2/dev/tests/integration/tmp/sandbox-*
223 | retention-days: 3
224 |
225 |
--------------------------------------------------------------------------------
/.github/workflows/release-please.yml:
--------------------------------------------------------------------------------
1 | name: Create Release
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 |
8 | jobs:
9 | release-please:
10 | runs-on: ubuntu-latest
11 | steps:
12 | - uses: google-github-actions/release-please-action@v4
13 | with:
14 | token: ${{ secrets.GRAYCORE_GITHUB_TOKEN }}
15 | command: manifest
16 | default-branch: main
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | .idea/
3 |
--------------------------------------------------------------------------------
/.nvmrc:
--------------------------------------------------------------------------------
1 | v18.18.0
--------------------------------------------------------------------------------
/.release-please-manifest.json:
--------------------------------------------------------------------------------
1 | {".":"3.0.0"}
2 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "dbaeumer.vscode-eslint"
4 | ]
5 | }
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | 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.
4 |
5 | ## [3.0.0](https://github.com/graycoreio/github-actions-magento2/compare/v2.0.0...v3.0.0) (2025-04-09)
6 |
7 |
8 | ### ⚠ BREAKING CHANGES
9 |
10 | * **coding-standard:** use magento/php-compatibility-fork ([#190](https://github.com/graycoreio/github-actions-magento2/issues/190))
11 |
12 | ### Features
13 |
14 | * **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))
15 | * **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))
16 | * **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))
17 |
18 |
19 | ### Bug Fixes
20 |
21 | * **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))
22 | * **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))
23 |
24 | ## [2.0.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.6.0...v2.0.0) (2025-03-25)
25 |
26 |
27 | ### ⚠ BREAKING CHANGES
28 |
29 | * replace mage-os/github-actions with graycoreio/github-actions-magento2
30 | * remove unmaintained workflows
31 |
32 | ### Features
33 |
34 | * add `cache-magento` action ([#87](https://github.com/graycoreio/github-actions-magento2/issues/87)) ([f5d43a5](https://github.com/graycoreio/github-actions-magento2/commit/f5d43a5184d20dc60b5e45d47b9d14300eb14754))
35 | * add `fix-magento` action ([#86](https://github.com/graycoreio/github-actions-magento2/issues/86)) ([856d2df](https://github.com/graycoreio/github-actions-magento2/commit/856d2df4819a5d0cdff6087a005ca966c7d409c0))
36 | * add coding standard action ([#51](https://github.com/graycoreio/github-actions-magento2/issues/51)) ([2a102c2](https://github.com/graycoreio/github-actions-magento2/commit/2a102c253d319fc463b1006ea7cc020b2ffdcb6c))
37 | * add Installation Test Action ([#1](https://github.com/graycoreio/github-actions-magento2/issues/1)) ([4bc0854](https://github.com/graycoreio/github-actions-magento2/commit/4bc0854cfcc6f527c678f8e712f79500524efde6))
38 | * add integration test workflow ([#3](https://github.com/graycoreio/github-actions-magento2/issues/3)) ([d638c02](https://github.com/graycoreio/github-actions-magento2/commit/d638c02ecab005d2541d0480522d4c5e823156f2))
39 | * add magento releases 2.4.4-p9, 2.4.5-p8, 2.4.6-p6, and 2.4.7-p1 ([#226](https://github.com/graycoreio/github-actions-magento2/issues/226)) ([a326271](https://github.com/graycoreio/github-actions-magento2/commit/a3262710f1f605bf468b6fe70d5f1a5bd47b6bb4))
40 | * add matrix to integration-test workflow ([#7](https://github.com/graycoreio/github-actions-magento2/issues/7)) ([fb1ac5f](https://github.com/graycoreio/github-actions-magento2/commit/fb1ac5f41aa183408aa32ec944536cf225831191))
41 | * add new releases to the version matrix ([#232](https://github.com/graycoreio/github-actions-magento2/issues/232)) ([b633b21](https://github.com/graycoreio/github-actions-magento2/commit/b633b2120a2157aa13c3e7dd71b1cdbc0045e5d9))
42 | * add project versions ([#110](https://github.com/graycoreio/github-actions-magento2/issues/110)) ([f7f0504](https://github.com/graycoreio/github-actions-magento2/commit/f7f0504691b19689227b4db17d333bca62f80cc0))
43 | * 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))
44 | * add releases 2.4.4-p6, 2.4.5-p5 and 2.4.6-p3 ([#169](https://github.com/graycoreio/github-actions-magento2/issues/169)) ([2086708](https://github.com/graycoreio/github-actions-magento2/commit/2086708ffc708b7685b579027163340a4ddfa44f))
45 | * add runner version to supported version ([#7](https://github.com/graycoreio/github-actions-magento2/issues/7)) ([dd1a36b](https://github.com/graycoreio/github-actions-magento2/commit/dd1a36b2345cd9596b5d2688d5c6e1bc8725ffbd))
46 | * add support for v2.3.7 on new vms ([#67](https://github.com/graycoreio/github-actions-magento2/issues/67)) ([2824849](https://github.com/graycoreio/github-actions-magento2/commit/28248496e0979dff3cb255abbfff84cdebd5697b))
47 | * 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))
48 | * add supported version matrix action ([#6](https://github.com/graycoreio/github-actions-magento2/issues/6)) ([6e81ef9](https://github.com/graycoreio/github-actions-magento2/commit/6e81ef96c7a0c8a1aa59554bf20ab202d7da4140))
49 | * add unit test action ([#2](https://github.com/graycoreio/github-actions-magento2/issues/2)) ([72b1f25](https://github.com/graycoreio/github-actions-magento2/commit/72b1f25310b4918b4702526e2b45d5e99f063ebb))
50 | * add upcoming release for mage-os 1.0.2 ([#223](https://github.com/graycoreio/github-actions-magento2/issues/223)) ([f1b13e8](https://github.com/graycoreio/github-actions-magento2/commit/f1b13e8984ec13e1a154e737c8494470f88b9a21))
51 | * add upcoming release Mage-OS 1.0.3 to supported-version matrix ([#229](https://github.com/graycoreio/github-actions-magento2/issues/229)) ([6e50d0d](https://github.com/graycoreio/github-actions-magento2/commit/6e50d0d8de09da49ce12473b2577a2277e4d701e))
52 | * allow fail-fast as an input argument ([#25](https://github.com/graycoreio/github-actions-magento2/issues/25)) ([2405cd1](https://github.com/graycoreio/github-actions-magento2/commit/2405cd1db7ff70a00c2e1ce58a20d0834bb39f33))
53 | * 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))
54 | * automatically allow the default Magento composer plugins ([#12](https://github.com/graycoreio/github-actions-magento2/issues/12)) ([d6e6688](https://github.com/graycoreio/github-actions-magento2/commit/d6e6688ead710b705198e7a7d1eda7004dc86070))
55 | * **coding-standard:** add `ignore_warnings` flag ([#147](https://github.com/graycoreio/github-actions-magento2/issues/147)) ([4e21b18](https://github.com/graycoreio/github-actions-magento2/commit/4e21b18ee9187253fc5d172d0ad1439bf304872e))
56 | * **get-composer-version:** create new action ([#145](https://github.com/graycoreio/github-actions-magento2/issues/145)) ([bc840e1](https://github.com/graycoreio/github-actions-magento2/commit/bc840e13727b4273aa9c22e4116a05cde58b046d))
57 | * **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))
58 | * install composer via shivammathur/setup-php github action ([#23](https://github.com/graycoreio/github-actions-magento2/issues/23)) ([49bbcc8](https://github.com/graycoreio/github-actions-magento2/commit/49bbcc89a7d7103fda34820ab165ec2cd1366123))
59 | * **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))
60 | * **integration:** Install composer plugin for parallel downloads ([#24](https://github.com/graycoreio/github-actions-magento2/issues/24)) ([97b4223](https://github.com/graycoreio/github-actions-magento2/commit/97b4223c0c1f441b5567ca606bff84181218d03a))
61 | * make cache key consistent (and configurable) ([#38](https://github.com/graycoreio/github-actions-magento2/issues/38)) ([cbbba62](https://github.com/graycoreio/github-actions-magento2/commit/cbbba628dd290c81ed4708d3d3bb87abadb0c7ce))
62 | * make phpcs severity level configurable ([#130](https://github.com/graycoreio/github-actions-magento2/issues/130)) ([81a1eb2](https://github.com/graycoreio/github-actions-magento2/commit/81a1eb2273864842286a4427519c9d29146c5ac8))
63 | * remove COMPOSER_AUTH requirement ([#18](https://github.com/graycoreio/github-actions-magento2/issues/18)) ([e92a242](https://github.com/graycoreio/github-actions-magento2/commit/e92a242f0af477623421949ade130ab316281142))
64 | * remove unmaintained workflows ([4c536e3](https://github.com/graycoreio/github-actions-magento2/commit/4c536e3d96f78355ed7b37388564f3468040172b))
65 | * replace mage-os/github-actions with graycoreio/github-actions-magento2 ([9c06178](https://github.com/graycoreio/github-actions-magento2/commit/9c06178b30d156338b5ced8bd8bdbaec79982291))
66 | * run setup:di:compile on push ([#116](https://github.com/graycoreio/github-actions-magento2/issues/116)) ([22aca78](https://github.com/graycoreio/github-actions-magento2/commit/22aca78cc8c648549b7a139fd2739ac9e8db916d))
67 | * **semver-compare:** add new Github action ([#146](https://github.com/graycoreio/github-actions-magento2/issues/146)) ([01e4ccb](https://github.com/graycoreio/github-actions-magento2/commit/01e4ccbc54ebe8996c3f25d777a0b4fdc1288e13))
68 | * **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))
69 | * **supported-version:** add all kind ([#36](https://github.com/graycoreio/github-actions-magento2/issues/36)) ([26c354d](https://github.com/graycoreio/github-actions-magento2/commit/26c354d8d4d1f7ce689f37236b7b0ee27b11221f))
70 | * **supported-version:** add support for v2.4.5 ([#35](https://github.com/graycoreio/github-actions-magento2/issues/35)) ([affb1ce](https://github.com/graycoreio/github-actions-magento2/commit/affb1ce1f942799647f57eb6b1096bf0e4afd560))
71 | * **supported-version:** add user-defined kind ([#28](https://github.com/graycoreio/github-actions-magento2/issues/28)) ([664360e](https://github.com/graycoreio/github-actions-magento2/commit/664360ede2ef775a6e0c7876dd103e66a977c4eb))
72 | * **supported-version:** dynamically compute ([#120](https://github.com/graycoreio/github-actions-magento2/issues/120)) ([dbc889f](https://github.com/graycoreio/github-actions-magento2/commit/dbc889f7cea548d319a5cd206269b007319d53ec))
73 | * **supported-version:** Magento v2.4.6 ([d3b1ab6](https://github.com/graycoreio/github-actions-magento2/commit/d3b1ab6b344b6a1ff705d2e57ad400ab506456be))
74 | * **supported-version:** package @actions/core:1.10.0 ([e4f0f85](https://github.com/graycoreio/github-actions-magento2/commit/e4f0f85e38ac6e342780d2bdaac28a19c1cab49d))
75 | * **supported-versions:** add release date ([#100](https://github.com/graycoreio/github-actions-magento2/issues/100)) ([5599a0d](https://github.com/graycoreio/github-actions-magento2/commit/5599a0d2e790952fbdfbbc23b9a1c92aa26eed35))
76 | * **supported-version:** validate custom_versions ([5c19804](https://github.com/graycoreio/github-actions-magento2/commit/5c198049f7002fff785d07f344f3773ce92e2c0f))
77 | * update actions/checkout to v3 ([#23](https://github.com/graycoreio/github-actions-magento2/issues/23)) ([8a209b9](https://github.com/graycoreio/github-actions-magento2/commit/8a209b982b5dbf22b6f620d9c6061577e29d0dcb))
78 | * use Mage-OS by default ([#17](https://github.com/graycoreio/github-actions-magento2/issues/17)) ([d1cced8](https://github.com/graycoreio/github-actions-magento2/commit/d1cced897a3008e53b4e3b9827d9c9853d70cfa4))
79 |
80 |
81 | ### Bug Fixes
82 |
83 | * add missing build for 1.4.0 of supported versions ([#64](https://github.com/graycoreio/github-actions-magento2/issues/64)) ([e48a346](https://github.com/graycoreio/github-actions-magento2/commit/e48a3463c5054012f748bb64eca2bab51220cdc0))
84 | * coding-standard-baseline: Run baseline test on modified files only (fixes [#227](https://github.com/graycoreio/github-actions-magento2/issues/227)) ([#228](https://github.com/graycoreio/github-actions-magento2/issues/228)) ([e29ea44](https://github.com/graycoreio/github-actions-magento2/commit/e29ea44597d69cf743bc172fd84b8f9f238ff3b6))
85 | * continue to use elasticsearch instead of opensearch for now ([#224](https://github.com/graycoreio/github-actions-magento2/issues/224)) ([dd47d22](https://github.com/graycoreio/github-actions-magento2/commit/dd47d22478c7fae917f48261d9a32b0ca04aec3c))
86 | * **installation-test:** handle non-range composer versions ([c136c11](https://github.com/graycoreio/github-actions-magento2/commit/c136c111d923fa3c9d4f3fbeb38cd81d593168da))
87 | * **installation:** allow plugins in installation tests ([#14](https://github.com/graycoreio/github-actions-magento2/issues/14)) ([fcc0b85](https://github.com/graycoreio/github-actions-magento2/commit/fcc0b854448b5ca7de72000fce3f1f3a4266cd33))
88 | * **integration:** force to explicitly older monolog versions ([#12](https://github.com/graycoreio/github-actions-magento2/issues/12)) ([#16](https://github.com/graycoreio/github-actions-magento2/issues/16)) ([e9ea198](https://github.com/graycoreio/github-actions-magento2/commit/e9ea198bbe945bac89f80b600804b0d481c88917))
89 | * **integration:** only run monolog fixup on v2.4.4 ([#37](https://github.com/graycoreio/github-actions-magento2/issues/37)) ([841670a](https://github.com/graycoreio/github-actions-magento2/commit/841670a97fccd29d52b760bf0989ac5bb224ba3d))
90 | * make es8 run correctly in integration tests ([#66](https://github.com/graycoreio/github-actions-magento2/issues/66)) ([85d11af](https://github.com/graycoreio/github-actions-magento2/commit/85d11af76e15b6728c3cd1e4d8fb45289b2b1c8c))
91 | * pass correct repo url for nightly ([#158](https://github.com/graycoreio/github-actions-magento2/issues/158)) ([b645c23](https://github.com/graycoreio/github-actions-magento2/commit/b645c2327debb49615e1110064c35732aa1b59f4))
92 | * PHPcs baseline composer conflicts ([bf34ec4](https://github.com/graycoreio/github-actions-magento2/commit/bf34ec4964e683e47b442f82d1cdb0d74b01de69))
93 | * **supported-version:** falsiness of custom_versions ([c9b7f41](https://github.com/graycoreio/github-actions-magento2/commit/c9b7f41525923edd1fc40b635d776ad5c2ebf6ec))
94 | * **supported-version:** matrix innaccessible outside of repo ([#8](https://github.com/graycoreio/github-actions-magento2/issues/8)) ([56cff9d](https://github.com/graycoreio/github-actions-magento2/commit/56cff9de0b3bb16e4d921bca6a69ea28eae237e2))
95 | * **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))
96 | * **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))
97 | * **supported-versions:** nightly build matrix tag ([#152](https://github.com/graycoreio/github-actions-magento2/issues/152)) ([7f1821f](https://github.com/graycoreio/github-actions-magento2/commit/7f1821f6ac3faff2e2384212f33fcfdcc8cf4573))
98 | * switch from tj-actions/changed-files to dorny/paths-filter ([87fe77f](https://github.com/graycoreio/github-actions-magento2/commit/87fe77f8a8dcf6828317894c4b849c4be041853f))
99 | * use exact version of elasticsearch since there is no 8.11 tag ([#225](https://github.com/graycoreio/github-actions-magento2/issues/225)) ([b4f27f1](https://github.com/graycoreio/github-actions-magento2/commit/b4f27f19e5196ba6be3b6007cd3e71a40471aa4f))
100 |
101 | ## [1.6.0](https://github.com/mage-os/github-actions/compare/v1.5.0...v1.6.0) (2025-03-07)
102 |
103 |
104 | ### Features
105 |
106 | * run setup:di:compile on push ([#116](https://github.com/mage-os/github-actions/issues/116)) ([22aca78](https://github.com/mage-os/github-actions/commit/22aca78cc8c648549b7a139fd2739ac9e8db916d))
107 |
108 | ## [1.5.0](https://github.com/mage-os/github-actions/compare/v1.4.0...v1.5.0) (2024-12-30)
109 |
110 |
111 | ### Features
112 |
113 | * add magento releases 2.4.4-p9, 2.4.5-p8, 2.4.6-p6, and 2.4.7-p1 ([#226](https://github.com/mage-os/github-actions/issues/226)) ([a326271](https://github.com/mage-os/github-actions/commit/a3262710f1f605bf468b6fe70d5f1a5bd47b6bb4))
114 | * add new releases to the version matrix ([#232](https://github.com/mage-os/github-actions/issues/232)) ([b633b21](https://github.com/mage-os/github-actions/commit/b633b2120a2157aa13c3e7dd71b1cdbc0045e5d9))
115 | * add project versions ([#110](https://github.com/mage-os/github-actions/issues/110)) ([f7f0504](https://github.com/mage-os/github-actions/commit/f7f0504691b19689227b4db17d333bca62f80cc0))
116 | * add releases 2.4.4-p6, 2.4.5-p5 and 2.4.6-p3 ([#169](https://github.com/mage-os/github-actions/issues/169)) ([2086708](https://github.com/mage-os/github-actions/commit/2086708ffc708b7685b579027163340a4ddfa44f))
117 | * add support for v2.3.7 on new vms ([#67](https://github.com/mage-os/github-actions/issues/67)) ([2824849](https://github.com/mage-os/github-actions/commit/28248496e0979dff3cb255abbfff84cdebd5697b))
118 | * add upcoming release for mage-os 1.0.2 ([#223](https://github.com/mage-os/github-actions/issues/223)) ([f1b13e8](https://github.com/mage-os/github-actions/commit/f1b13e8984ec13e1a154e737c8494470f88b9a21))
119 | * add upcoming release Mage-OS 1.0.3 to supported-version matrix ([#229](https://github.com/mage-os/github-actions/issues/229)) ([6e50d0d](https://github.com/mage-os/github-actions/commit/6e50d0d8de09da49ce12473b2577a2277e4d701e))
120 | * **coding-standard:** add `ignore_warnings` flag ([#147](https://github.com/mage-os/github-actions/issues/147)) ([4e21b18](https://github.com/mage-os/github-actions/commit/4e21b18ee9187253fc5d172d0ad1439bf304872e))
121 | * **get-composer-version:** create new action ([#145](https://github.com/mage-os/github-actions/issues/145)) ([bc840e1](https://github.com/mage-os/github-actions/commit/bc840e13727b4273aa9c22e4116a05cde58b046d))
122 | * **semver-compare:** add new Github action ([#146](https://github.com/mage-os/github-actions/issues/146)) ([01e4ccb](https://github.com/mage-os/github-actions/commit/01e4ccbc54ebe8996c3f25d777a0b4fdc1288e13))
123 | * **supported-versions:** add release date ([#100](https://github.com/mage-os/github-actions/issues/100)) ([5599a0d](https://github.com/mage-os/github-actions/commit/5599a0d2e790952fbdfbbc23b9a1c92aa26eed35))
124 |
125 |
126 | ### Bug Fixes
127 |
128 | * add missing build for 1.4.0 of supported versions ([#64](https://github.com/mage-os/github-actions/issues/64)) ([e48a346](https://github.com/mage-os/github-actions/commit/e48a3463c5054012f748bb64eca2bab51220cdc0))
129 | * coding-standard-baseline: Run baseline test on modified files only (fixes [#227](https://github.com/mage-os/github-actions/issues/227)) ([#228](https://github.com/mage-os/github-actions/issues/228)) ([e29ea44](https://github.com/mage-os/github-actions/commit/e29ea44597d69cf743bc172fd84b8f9f238ff3b6))
130 | * continue to use elasticsearch instead of opensearch for now ([#224](https://github.com/mage-os/github-actions/issues/224)) ([dd47d22](https://github.com/mage-os/github-actions/commit/dd47d22478c7fae917f48261d9a32b0ca04aec3c))
131 | * make es8 run correctly in integration tests ([#66](https://github.com/mage-os/github-actions/issues/66)) ([85d11af](https://github.com/mage-os/github-actions/commit/85d11af76e15b6728c3cd1e4d8fb45289b2b1c8c))
132 | * pass correct repo url for nightly ([#158](https://github.com/mage-os/github-actions/issues/158)) ([b645c23](https://github.com/mage-os/github-actions/commit/b645c2327debb49615e1110064c35732aa1b59f4))
133 | * PHPcs baseline composer conflicts ([bf34ec4](https://github.com/mage-os/github-actions/commit/bf34ec4964e683e47b442f82d1cdb0d74b01de69))
134 | * **supported-versions:** nightly build matrix tag ([#152](https://github.com/mage-os/github-actions/issues/152)) ([7f1821f](https://github.com/mage-os/github-actions/commit/7f1821f6ac3faff2e2384212f33fcfdcc8cf4573))
135 | * switch from tj-actions/changed-files to dorny/paths-filter ([87fe77f](https://github.com/mage-os/github-actions/commit/87fe77f8a8dcf6828317894c4b849c4be041853f))
136 | * use exact version of elasticsearch since there is no 8.11 tag ([#225](https://github.com/mage-os/github-actions/issues/225)) ([b4f27f1](https://github.com/mage-os/github-actions/commit/b4f27f19e5196ba6be3b6007cd3e71a40471aa4f))
137 |
138 | ## [1.4.0](https://github.com/mage-os/github-actions/compare/v1.3.0...v1.4.0) (2023-06-20)
139 |
140 |
141 | ### Features
142 |
143 | * make phpcs severity level configurable ([#130](https://github.com/mage-os/github-actions/issues/130)) ([81a1eb2](https://github.com/mage-os/github-actions/commit/81a1eb2273864842286a4427519c9d29146c5ac8))
144 | * **supported-version:** validate custom_versions ([5c19804](https://github.com/mage-os/github-actions/commit/5c198049f7002fff785d07f344f3773ce92e2c0f))
145 |
146 |
147 | ### Bug Fixes
148 |
149 | * **supported-version:** falsiness of custom_versions ([c9b7f41](https://github.com/mage-os/github-actions/commit/c9b7f41525923edd1fc40b635d776ad5c2ebf6ec))
150 |
151 | ## [1.3.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.2.0...v1.3.0) (2023-03-15)
152 |
153 |
154 | ### Features
155 |
156 | * add `cache-magento` action ([#87](https://github.com/graycoreio/github-actions-magento2/issues/87)) ([f5d43a5](https://github.com/graycoreio/github-actions-magento2/commit/f5d43a5184d20dc60b5e45d47b9d14300eb14754))
157 | * add `fix-magento` action ([#86](https://github.com/graycoreio/github-actions-magento2/issues/86)) ([856d2df](https://github.com/graycoreio/github-actions-magento2/commit/856d2df4819a5d0cdff6087a005ca966c7d409c0))
158 | * 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))
159 | * **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))
160 | * **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))
161 | * **supported-version:** dynamically compute ([#120](https://github.com/graycoreio/github-actions-magento2/issues/120)) ([dbc889f](https://github.com/graycoreio/github-actions-magento2/commit/dbc889f7cea548d319a5cd206269b007319d53ec))
162 | * **supported-version:** Magento v2.4.6 ([d3b1ab6](https://github.com/graycoreio/github-actions-magento2/commit/d3b1ab6b344b6a1ff705d2e57ad400ab506456be))
163 |
164 |
165 | ### Bug Fixes
166 |
167 | * **installation-test:** handle non-range composer versions ([c136c11](https://github.com/graycoreio/github-actions-magento2/commit/c136c111d923fa3c9d4f3fbeb38cd81d593168da))
168 | * **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))
169 |
170 | ## [1.2.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.1.0...v1.2.0) (2022-10-11)
171 |
172 |
173 | ### Features
174 |
175 | * add coding standard action ([#51](https://github.com/graycoreio/github-actions-magento2/issues/51)) ([2a102c2](https://github.com/graycoreio/github-actions-magento2/commit/2a102c253d319fc463b1006ea7cc020b2ffdcb6c))
176 | * 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))
177 | * 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))
178 | * **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))
179 | * **supported-version:** package @actions/core:1.10.0 ([e4f0f85](https://github.com/graycoreio/github-actions-magento2/commit/e4f0f85e38ac6e342780d2bdaac28a19c1cab49d))
180 |
181 |
182 | ### Bug Fixes
183 |
184 | * **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))
185 |
186 | ## [1.1.0](https://github.com/graycoreio/github-actions-magento2/compare/v1.0.0...v1.1.0) (2022-08-14)
187 |
188 |
189 | ### Features
190 |
191 | * make cache key consistent (and configurable) ([#38](https://github.com/graycoreio/github-actions-magento2/issues/38)) ([cbbba62](https://github.com/graycoreio/github-actions-magento2/commit/cbbba628dd290c81ed4708d3d3bb87abadb0c7ce))
192 | * **supported-version:** add all kind ([#36](https://github.com/graycoreio/github-actions-magento2/issues/36)) ([26c354d](https://github.com/graycoreio/github-actions-magento2/commit/26c354d8d4d1f7ce689f37236b7b0ee27b11221f))
193 | * **supported-version:** add support for v2.4.5 ([#35](https://github.com/graycoreio/github-actions-magento2/issues/35)) ([affb1ce](https://github.com/graycoreio/github-actions-magento2/commit/affb1ce1f942799647f57eb6b1096bf0e4afd560))
194 |
195 |
196 | ### Bug Fixes
197 |
198 | * **integration:** only run monolog fixup on v2.4.4 ([#37](https://github.com/graycoreio/github-actions-magento2/issues/37)) ([841670a](https://github.com/graycoreio/github-actions-magento2/commit/841670a97fccd29d52b760bf0989ac5bb224ba3d))
199 |
200 | ## 1.0.0 (2022-08-06)
201 |
202 |
203 | ### Features
204 |
205 | * add Installation Test Action ([#1](https://github.com/graycoreio/github-actions-magento2/issues/1)) ([4bc0854](https://github.com/graycoreio/github-actions-magento2/commit/4bc0854cfcc6f527c678f8e712f79500524efde6))
206 | * add integration test workflow ([#3](https://github.com/graycoreio/github-actions-magento2/issues/3)) ([d638c02](https://github.com/graycoreio/github-actions-magento2/commit/d638c02ecab005d2541d0480522d4c5e823156f2))
207 | * add matrix to integration-test workflow ([#7](https://github.com/graycoreio/github-actions-magento2/issues/7)) ([fb1ac5f](https://github.com/graycoreio/github-actions-magento2/commit/fb1ac5f41aa183408aa32ec944536cf225831191))
208 | * add runner version to supported version ([#7](https://github.com/graycoreio/github-actions-magento2/issues/7)) ([dd1a36b](https://github.com/graycoreio/github-actions-magento2/commit/dd1a36b2345cd9596b5d2688d5c6e1bc8725ffbd))
209 | * add supported version matrix action ([#6](https://github.com/graycoreio/github-actions-magento2/issues/6)) ([6e81ef9](https://github.com/graycoreio/github-actions-magento2/commit/6e81ef96c7a0c8a1aa59554bf20ab202d7da4140))
210 | * add unit test action ([#2](https://github.com/graycoreio/github-actions-magento2/issues/2)) ([72b1f25](https://github.com/graycoreio/github-actions-magento2/commit/72b1f25310b4918b4702526e2b45d5e99f063ebb))
211 | * allow fail-fast as an input argument ([#25](https://github.com/graycoreio/github-actions-magento2/issues/25)) ([2405cd1](https://github.com/graycoreio/github-actions-magento2/commit/2405cd1db7ff70a00c2e1ce58a20d0834bb39f33))
212 | * automatically allow the default Magento composer plugins ([#12](https://github.com/graycoreio/github-actions-magento2/issues/12)) ([d6e6688](https://github.com/graycoreio/github-actions-magento2/commit/d6e6688ead710b705198e7a7d1eda7004dc86070))
213 | * install composer via shivammathur/setup-php github action ([#23](https://github.com/graycoreio/github-actions-magento2/issues/23)) ([49bbcc8](https://github.com/graycoreio/github-actions-magento2/commit/49bbcc89a7d7103fda34820ab165ec2cd1366123))
214 | * **integration:** Install composer plugin for parallel downloads ([#24](https://github.com/graycoreio/github-actions-magento2/issues/24)) ([97b4223](https://github.com/graycoreio/github-actions-magento2/commit/97b4223c0c1f441b5567ca606bff84181218d03a))
215 | * remove COMPOSER_AUTH requirement ([#18](https://github.com/graycoreio/github-actions-magento2/issues/18)) ([e92a242](https://github.com/graycoreio/github-actions-magento2/commit/e92a242f0af477623421949ade130ab316281142))
216 | * **supported-version:** add user-defined kind ([#28](https://github.com/graycoreio/github-actions-magento2/issues/28)) ([664360e](https://github.com/graycoreio/github-actions-magento2/commit/664360ede2ef775a6e0c7876dd103e66a977c4eb))
217 | * update actions/checkout to v3 ([#23](https://github.com/graycoreio/github-actions-magento2/issues/23)) ([8a209b9](https://github.com/graycoreio/github-actions-magento2/commit/8a209b982b5dbf22b6f620d9c6061577e29d0dcb))
218 | * use Mage-OS by default ([#17](https://github.com/graycoreio/github-actions-magento2/issues/17)) ([d1cced8](https://github.com/graycoreio/github-actions-magento2/commit/d1cced897a3008e53b4e3b9827d9c9853d70cfa4))
219 |
220 |
221 | ### Bug Fixes
222 |
223 | * **installation:** allow plugins in installation tests ([#14](https://github.com/graycoreio/github-actions-magento2/issues/14)) ([fcc0b85](https://github.com/graycoreio/github-actions-magento2/commit/fcc0b854448b5ca7de72000fce3f1f3a4266cd33))
224 | * **integration:** force to explicitly older monolog versions ([#12](https://github.com/graycoreio/github-actions-magento2/issues/12)) ([#16](https://github.com/graycoreio/github-actions-magento2/issues/16)) ([e9ea198](https://github.com/graycoreio/github-actions-magento2/commit/e9ea198bbe945bac89f80b600804b0d481c88917))
225 | * **supported-version:** matrix innaccessible outside of repo ([#8](https://github.com/graycoreio/github-actions-magento2/issues/8)) ([56cff9d](https://github.com/graycoreio/github-actions-magento2/commit/56cff9de0b3bb16e4d921bca6a69ea28eae237e2))
226 |
--------------------------------------------------------------------------------
/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @Mage-OS/infrastructure
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Contributor Covenant Code of Conduct
2 |
3 | ## Our Pledge
4 |
5 | In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
6 |
7 | ## Our Standards
8 |
9 | Examples of behavior that contributes to creating a positive environment
10 | include:
11 |
12 | * Using welcoming and inclusive language
13 | * Being respectful of differing viewpoints and experiences
14 | * Gracefully accepting constructive criticism
15 | * Focusing on what is best for the community
16 | * Showing empathy towards other community members
17 |
18 | Examples of unacceptable behavior by participants include:
19 |
20 | * The use of sexualized language or imagery and unwelcome sexual attention or advances
21 | * Trolling, insulting/derogatory comments, and personal or political attacks
22 | * Public or private harassment
23 | * Publishing others' private information, such as a physical or electronic address, without explicit permission
24 | * Other conduct which could reasonably be considered inappropriate in a professional setting
25 |
26 | ## Our Responsibilities
27 |
28 | Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
29 |
30 | Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
31 |
32 | ## Scope
33 |
34 | This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
35 |
36 | ## Enforcement
37 |
38 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project lead at [board@mage-os.org](mailto:board@mage-os.org). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
39 |
40 | Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
41 |
42 | ## Attribution
43 |
44 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
45 |
46 | [homepage]: https://www.contributor-covenant.org
47 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to Github Actions for Magento 2
2 |
3 | We would love for you to contribute to "Github Actions for Magento 2" and help make it even better than it is
4 | today! As a contributor, here are the guidelines we would like you to follow:
5 |
6 | - [Code of Conduct](#coc)
7 | - [Question or Problem?](#question)
8 | - [Issues and Bugs](#issue)
9 | - [Feature Requests](#feature)
10 | - [Submission Guidelines](#submit)
11 | - [Coding Rules](#rules)
12 | - [Commit Message Guidelines](#commit)
13 |
14 | ## Code of Conduct
15 | Help us keep "Github Actions for Magento 2" open and inclusive. Please read and follow our [Code of Conduct][coc].
16 |
17 | ## Got a Question or Problem?
18 |
19 | Do not open issues for general support questions as we want to keep GitHub issues for bug reports and feature requests. You've got much better chances of getting your question answered on [Discussions](https://github.com/graycoreio/github-actions-magento2/discussions).
20 |
21 | To save your and our time, we will systematically close all issues that are requests for general support and redirect people to [Discussions](https://github.com/graycoreio/github-actions-magento2/discussions).
22 |
23 | ## Found a Bug?
24 | If you find a bug in the source code, you can help us by
25 | [submitting an issue](#submit-issue) to our [GitHub Repository][github]. Even better, you can
26 | [submit a Pull Request](#submit-pr) with a fix.
27 |
28 | ## Missing a Feature?
29 | You can *request* a new feature by [submitting an issue](#submit-issue) to our GitHub
30 | Repository. If you would like to *implement* a new feature, please submit an issue with
31 | a proposal for your work first, to be sure that we can use it.
32 | Please consider what kind of change it is:
33 |
34 | * For a **Major Feature**, first open an issue and outline your proposal so that it can be
35 | discussed. This will also allow us to better coordinate our efforts, prevent duplication of work,
36 | and help you to craft the change so that it is successfully accepted into the project.
37 | * **Small Features** can be crafted and directly [submitted as a Pull Request](#submit-pr).
38 |
39 | ## Submission Guidelines
40 |
41 | ### Submitting an Issue
42 |
43 | Before you submit an issue, please search the issue tracker, maybe an issue for your problem already exists and the discussion might inform you of workarounds readily available.
44 |
45 | We want to fix all the issues as soon as possible, but before fixing a bug we need to reproduce and confirm it. In order to reproduce bugs, we will systematically ask you to provide a minimal reproduction scenario using https://github.com/. Having a live, reproducible scenario gives us a wealth of important information without going back & forth to you with additional questions like:
46 |
47 | - version of "Github Actions for Magento 2" used
48 | - 3rd-party libraries and their versions
49 | - and most importantly - a use-case that fails
50 |
51 | A minimal reproduce scenario using https://github.com/ allows us to quickly confirm a bug (or point out coding problem) as well as confirm that we are fixing the right problem.
52 |
53 | We will be insisting on a minimal reproduce scenario in order to save maintainers time and ultimately be able to fix more bugs. Interestingly, from our experience users often find coding problems themselves while preparing a minimal reproduction. We understand that sometimes it might be hard to extract essentials bits of code from a larger code-base but we really need to isolate the problem before we can fix it.
54 |
55 | Unfortunately, we are not able to investigate / fix bugs without a minimal reproduction, so if we don't hear back from you we are going to close an issue that doesn't have enough info to be reproduced.
56 |
57 | You can file new issues by filling out our [new issue form](https://github.com/graycoreio/github-actions-magento2/issues/new/choose).
58 |
59 |
60 | ### Submitting a Pull Request (PR)
61 | Before you submit your Pull Request (PR) consider the following guidelines:
62 |
63 | 1. Search [GitHub](https://github.com/graycoreio/github-actions-magento2/pulls) for an open or closed PR
64 | that relates to your submission. You don't want to duplicate effort.
65 | 1. Fork the [graycoreio/github-actions-magento2](https://github.com/graycoreio/github-actions-magento2) repo.
66 | 1. Make your changes in a new git branch:
67 |
68 | ```shell
69 | git checkout -b my-fix-branch master
70 | ```
71 |
72 | 1. Create your patch, **including appropriate test cases**.
73 | 1. Follow our [Coding Rules](#rules).
74 | 1. Run the full test suite, as described in the [developer documentation][dev-doc],
75 | and ensure that all tests pass.
76 | 1. Commit your changes using a descriptive commit message that follows our
77 | [commit message conventions](#commit). Adherence to these conventions
78 | is necessary because release notes are automatically generated from these messages.
79 |
80 | ```shell
81 | git commit -a
82 | ```
83 | Note: the optional commit `-a` command line option will automatically "add" and "rm" edited files.
84 |
85 | 1. Push your branch to GitHub:
86 |
87 | ```shell
88 | git push origin my-fix-branch
89 | ```
90 |
91 | 1. In GitHub, send a pull request to `github-actions-magento2:main`.
92 | * If we suggest changes then:
93 | * Make the required updates.
94 | * Re-run the "Github Actions for Magento 2" test suites to ensure tests are still passing.
95 | * Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
96 |
97 | ```shell
98 | git rebase main -i
99 | git push -f
100 | ```
101 | * Note: don't squash your branch until after the reviewers comment "lgtm", so they don't need to re-review your entire branch every commit.
102 |
103 | That's it! Thank you for your contribution!
104 |
105 | #### After your pull request is merged
106 |
107 | After your pull request is merged, you can safely delete your branch and pull the changes
108 | from the main (upstream) repository:
109 |
110 | * Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
111 |
112 | ```shell
113 | git push origin --delete my-fix-branch
114 | ```
115 |
116 | * Check out the main branch:
117 |
118 | ```shell
119 | git checkout main -f
120 | ```
121 |
122 | * Delete the local branch:
123 |
124 | ```shell
125 | git branch -D my-fix-branch
126 | ```
127 |
128 | * Update your main with the latest upstream version:
129 |
130 | ```shell
131 | git pull --ff upstream main
132 | ```
133 |
134 | ## Coding Rules
135 | To ensure consistency throughout the source code, keep these rules in mind as you are working:
136 |
137 | * All features or bug fixes **must be tested** by one or more specs (unit-tests).
138 | * All public API methods **must be documented**. (Details TBC).
139 |
140 | ## Commit Message Guidelines
141 |
142 | We have very precise rules over how our git commit messages can be formatted. This leads to **more
143 | readable messages** that are easy to follow when looking through the **project history**.
144 |
145 | ### Commit Message Format
146 | Each commit message consists of a **header**, a **body** and a **footer**. The header has a special
147 | format that includes a **type**, a **scope** and a **subject**:
148 |
149 | ```
150 |