Job offer #52
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Flex Recipe | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
jobs: | |
recipe: | |
name: Flex recipe (PHP ${{ matrix.php }}, Sylius ${{ matrix.sylius }}) | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
php: ['8.2'] | |
sylius: ["~1.12.0", "~1.13.0"] | |
steps: | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
extensions: gd, intl, json | |
ini-values: date.timezone=UTC | |
tools: symfony-cli | |
- name: Set project php-version | |
run: | | |
echo ${{ matrix.php }} > .php-version | |
- uses: actions/checkout@v3 | |
with: | |
path: plugin | |
- name: Determine composer cache directory | |
id: composer-cache-directory | |
working-directory: plugin | |
run: echo "directory=$(composer config cache-dir)" >> $GITHUB_OUTPUT | |
- name: Cache dependencies installed with composer | |
uses: actions/cache@v3 | |
id: cache-composer | |
with: | |
path: ${{ steps.composer-cache-directory.outputs.directory }} | |
key: composer2-php:${{ matrix.php }}-sylius:${{ matrix.sylius }}-${{ hashFiles('**/composer.json') }} | |
restore-keys: composer2-php:${{ matrix.php }}-sylius:${{ matrix.sylius }}- | |
- name: Ensure that composer cache directory exists | |
run: mkdir -p ${{ steps.composer-cache-directory.outputs.directory }} | |
- name: Composer Github Auth | |
run: composer config -g github-oauth.github.com ${{ github.token }} | |
- name: Create Sylius-Standard project without install | |
run: | | |
composer create-project --prefer-dist --no-scripts --no-progress --no-install sylius/sylius-standard sylius "${{ matrix.sylius }}" | |
# Because the sylius-standard has a soft constraint | |
- name: Make sure to install the required version of Sylius | |
working-directory: ./sylius | |
run: | | |
composer require --no-install --no-scripts --no-progress sylius/sylius="${{ matrix.sylius }}" | |
- name: Setup some requirements | |
working-directory: ./sylius | |
run: | | |
composer config --no-plugins allow-plugins true | |
composer config --no-plugins extra.symfony.allow-contrib true | |
composer config --no-plugins secure-http false | |
composer config --no-plugins --unset platform.php | |
composer config --no-plugins extra.symfony.docker false | |
composer config --no-plugins --json extra.symfony.endpoint '["https://api.github.com/repos/monsieurbiz/symfony-recipes/contents/index.json?ref=flex/master","flex://defaults"]' | |
composer config repositories.plugin '{"type": "path", "url": "../plugin/"}' | |
- name: Require plugin & install all dependencies | |
working-directory: ./sylius | |
run: | | |
composer require monsieurbiz/sylius-ui-elements-plugin="*@dev" |