diff --git a/.github/workflows/_internal-install.yaml b/.github/workflows/_internal-install.yaml deleted file mode 100644 index e776fa6..0000000 --- a/.github/workflows/_internal-install.yaml +++ /dev/null @@ -1,56 +0,0 @@ -name: Installation Test - -on: - workflow_dispatch: {} - push: - branches: - - main - paths: - - "_test/demo-package/**" - - "installation-test/**" - - ".github/workflows/_internal-install.yaml" - - "supported-version/**" - - "!(**/*.md)" - pull_request: - branches: - - main - paths: - - "_test/demo-package/**" - - "installation-test/**" - - ".github/workflows/_internal-install.yaml" - - "supported-version/**" - - "!(**/*.md)" - -env: - MAGENTO_COMPOSER_REPO: "https://mirror.mage-os.org/" - -jobs: - compute_matrix: - runs-on: ubuntu-latest - outputs: - matrix: ${{ steps.supported-version.outputs.matrix }} - steps: - - uses: actions/checkout@v6 - - uses: ./supported-version - with: - kind: currently-supported - id: supported-version - - run: echo ${{ steps.supported-version.outputs.matrix }} - - install-test: - needs: compute_matrix - strategy: - matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }} - fail-fast: false - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: ./installation-test - with: - composer_version: ${{ matrix.composer }} - php_version: ${{ matrix.php }} - magento_version: ${{ matrix.magento }} - package_name: mage-os/magento2-demo-package - source_folder: $GITHUB_WORKSPACE/_test/demo-package - composer_auth: ${{ secrets.COMPOSER_AUTH }} - magento_repository: ${{ env.MAGENTO_COMPOSER_REPO }} \ No newline at end of file diff --git a/README.md b/README.md index 6684db4..7a529e9 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,5 @@ Opinionated Github Actions and Workflows to make building, testing, and maintain | [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 | | [Semver Compare](./semver-compare/README.md) | A Github Action that semantically compares two versions | | [Supported Version](./supported-version/README.md) | A Github Action that computes the currently supported Github Actions Matrix for Magento 2 | diff --git a/installation-test/README.md b/installation-test/README.md deleted file mode 100644 index 82aedc6..0000000 --- a/installation-test/README.md +++ /dev/null @@ -1,48 +0,0 @@ -# Magento 2 Package Installation Test Action - -A Github Action that tests the installability of a Magento Package - -## Inputs - -See the [action.yml](./action.yml) - -## Usage - -```yml -name: Installation Test - -on: - push: - branches: - - main - pull_request: - branches: - - main - -jobs: - compute_matrix: - runs-on: ubuntu-latest - outputs: - matrix: ${{ steps.supported-version.outputs.matrix }} - steps: - - uses: actions/checkout@v6 - - uses: graycoreio/github-actions-magento2/supported-version@main - id: supported-version - - run: echo ${{ steps.supported-version.outputs.matrix }} - - install-test: - needs: compute_matrix - strategy: - matrix: ${{ fromJSON(needs.compute_matrix.outputs.matrix) }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - - uses: graycoreio/github-actions-magento2/installation-test@main - with: - composer_version: ${{ matrix.composer }} - php_version: ${{ matrix.php }} - magento_version: ${{ matrix.magento }} - composer_auth: ${{ secrets.COMPOSER_AUTH }} - package_name: vendor/package - source_folder: $GITHUB_WORKSPACE -``` diff --git a/installation-test/action.yml b/installation-test/action.yml deleted file mode 100644 index 8aae478..0000000 --- a/installation-test/action.yml +++ /dev/null @@ -1,122 +0,0 @@ -name: "Installation Test" -author: "Graycore" -description: " A Github Action that tests the installability of a Magento Package" - -inputs: - php_version: - required: true - default: "8.1" - description: "PHP Version to use" - - cache_key: - required: true - default: "2" - description: "The cache key used to hold Composer Packages" - - composer_version: - required: true - 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 - description: "The source folder of the package" - - package_name: - required: true - description: "The name of the package" - - magento_directory: - required: true - default: "../magento2" - description: "The folder where Magento will be installed" - - magento_version: - required: true - default: "magento/project-community-edition" - description: "The version of Magento to test against" - - magento_repository: - required: true - default: "https://mirror.mage-os.org/" - description: "Where to install Magento from" - - composer_cache_key: - required: false - default: '' - description: A key to version the composer cache. Can be incremented if you need to bust the cache. - - composer_auth: - required: false - description: "Composer Authentication Credentials" - -runs: - using: "composite" - steps: - - name: Set PHP Version - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ inputs.php_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 - shell: bash - env: - COMPOSER_AUTH: ${{ inputs.composer_auth }} - name: Create Magento ${{ inputs.magento_version }} Project - - - name: Get Composer Cache Directory - shell: bash - working-directory: ${{ inputs.magento_directory }} - id: composer-cache - run: | - echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - - - name: "Cache Composer Packages" - uses: actions/cache@v5 - with: - key: "composer | v5 | ${{ inputs.composer_cache_key }} | ${{ hashFiles('composer.lock') }} | ${{ runner.os }} | ${{ inputs.composer_version }} | ${{ inputs.php_version }} | ${{ inputs.magento_version }}" - path: ${{ steps.composer-cache.outputs.dir }} - - - run: composer config repositories.local path ${{ inputs.source_folder }} - 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 - 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(inputs.composer_version, '1') }} - - - run: composer require ${{ inputs.package_name }} "@dev" --no-update && composer install - name: Require and attempt install - working-directory: ${{ inputs.magento_directory }} - shell: bash - env: - COMPOSER_CACHE_DIR: ${{ steps.composer-cache.outputs.dir }} - COMPOSER_AUTH: ${{ inputs.composer_auth }} - -branding: - icon: "code" - color: "green"