@@ -21,12 +21,12 @@ jobs:
2121 - vendor/bin/phpstan --error-format=github
2222 - vendor/bin/ecs
2323 - bin/console lint:twig templates --no-interaction --format=github
24- - bin/console lint:yaml . *.yaml --parse-tags --no-interaction --format=github
2524 - bin/console lint:container --no-interaction
2625 - bin/console lint:xliff translations --no-interaction --format=github
2726 - composer validate composer.json --no-check-publish
2827 - symfony security:check
2928 # TODO: add more ci-checks
29+ # bin/console lint:yaml *.yaml --parse-tags --no-interaction --format=github
3030 # vendor/bin/parallel-lint src public migrations config
3131 # XDEBUG_MODE=off bin/composer-require-checker --no-interaction --config-file=$PWD/composer-require-checker.json
3232 # vendor/bin/config-transformer --dry-run
@@ -37,21 +37,57 @@ jobs:
3737 steps :
3838 - uses : actions/checkout@v4
3939 - uses : cachix/install-nix-action@v25
40+ with :
41+ nix_path : nixpkgs=channel:nixos-unstable
4042 # TODO: cache composer dependencies
4143 # TODO: check why --ignore-platform-req=ext-redis is needed
42- - run : composer install --ignore-platform-req=ext-redis
43- - run : bin/console cache:warmup
44+ - run : just setup-backend
4445 - run : ${{ matrix.check }}
4546
4647 phpunit :
4748 runs-on : ubuntu-latest
49+ defaults :
50+ run :
51+ shell : nix-shell --pure --run "bash -euxo pipefail {0}"
4852 steps :
4953 - uses : actions/checkout@v4
5054 - uses : cachix/install-nix-action@v25
55+ with :
56+ nix_path : nixpkgs=channel:nixos-unstable
5157 # TODO: cache the build
52- - shell : nix-shell --pure --run "bash -euxo pipefail {0}"
58+ - run : just setup-backend
59+ - run : XDEBUG_MODE=coverage vendor/bin/phpunit --order-by=random --stop-on-error --stop-on-failure
60+
61+ functional-tests :
62+ runs-on : ubuntu-latest
63+ steps :
64+ - uses : actions/checkout@v4
65+ - uses : cachix/install-nix-action@v25
66+ with :
67+ nix_path : nixpkgs=channel:nixos-unstable
68+ - uses : pnpm/action-setup@v2
69+ with :
70+ run_install : false
71+ - name : Get pnpm store directory
72+ shell : bash
5373 run : |
54- # TODO: cache composer dependencies
55- # TODO: check why --ignore-platform-req=ext-redis is needed
56- composer install --ignore-platform-req=ext-redis
57- XDEBUG_MODE=coverage vendor/bin/phpunit --order-by=random --stop-on-error --stop-on-failure
74+ echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
75+ - uses : actions/cache@v3
76+ name : Setup pnpm cache
77+ with :
78+ path : ${{ env.STORE_PATH }}
79+ key : ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
80+ restore-keys : |
81+ ${{ runner.os }}-pnpm-store-
82+ - name : Install dependencies
83+ run : pnpm install --frozen-lockfile --strict-peer-dependencies
84+ - shell : nix-shell --pure --run "bash -euxo pipefail {0}"
85+ run : just setup
86+ - shell : nix-shell --pure --run "bash -euxo pipefail {0}"
87+ run : just start-background
88+ - shell : nix-shell --pure --run "bash -euxo pipefail {0}"
89+ run : bin/console doctrine:migrations:migrate --allow-no-migration --no-interaction
90+ - uses : cypress-io/github-action@v6
91+
92+
93+
0 commit comments