|
1 | 1 | current-dir := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
|
2 | 2 |
|
3 |
| -.PHONY: build |
4 |
| -build: deps start |
5 |
| - |
6 |
| -.PHONY: deps |
7 |
| -deps: composer-install |
8 |
| - |
9 |
| -# 🐘 Composer |
10 |
| -composer-env-file: |
11 |
| - @if [ ! -f .env.local ]; then echo '' > .env.local; fi |
12 |
| - |
13 |
| -.PHONY: composer-install |
14 |
| -composer-install: CMD=install |
15 |
| - |
16 |
| -.PHONY: composer-update |
17 |
| -composer-update: CMD=update |
18 |
| - |
19 |
| -.PHONY: composer-require |
20 |
| -composer-require: CMD=require |
21 |
| -composer-require: INTERACTIVE=-ti --interactive |
22 |
| - |
23 |
| -.PHONY: composer-require-module |
24 |
| -composer-require-module: CMD=require $(module) |
25 |
| -composer-require-module: INTERACTIVE=-ti --interactive |
26 |
| - |
27 |
| -.PHONY: composer |
28 |
| -composer composer-install composer-update composer-require composer-require-module: composer-env-file |
| 3 | +composer-install: |
29 | 4 | @docker run --rm $(INTERACTIVE) --volume $(current-dir):/app --user $(id -u):$(id -g) \
|
30 |
| - composer:2.3.7 $(CMD) \ |
| 5 | + composer:2.6.4 install \ |
31 | 6 | --ignore-platform-reqs \
|
32 | 7 | --no-ansi
|
33 | 8 |
|
34 |
| -.PHONY: reload |
35 |
| -reload: composer-env-file |
36 |
| - @docker-compose exec php-fpm kill -USR2 1 |
37 |
| - @docker-compose exec nginx nginx -s reload |
38 |
| - |
39 |
| -.PHONY: test |
40 |
| -test: composer-env-file |
| 9 | +test: |
41 | 10 | docker exec codely-php_ddd_skeleton-mooc_backend-php ./vendor/bin/phpunit --testsuite mooc
|
42 | 11 | docker exec codely-php_ddd_skeleton-mooc_backend-php ./vendor/bin/phpunit --testsuite shared
|
43 | 12 | docker exec codely-php_ddd_skeleton-mooc_backend-php ./vendor/bin/behat -p mooc_backend --format=progress -v
|
44 | 13 | docker exec codely-php_ddd_skeleton-backoffice_backend-php ./vendor/bin/phpunit --testsuite backoffice
|
45 | 14 |
|
46 |
| -.PHONY: static-analysis |
47 |
| -static-analysis: composer-env-file |
| 15 | +static-analysis: |
48 | 16 | docker exec codely-php_ddd_skeleton-mooc_backend-php ./vendor/bin/psalm
|
49 | 17 |
|
50 |
| -.PHONY: lint |
51 | 18 | lint:
|
52 | 19 | docker exec codely-php_ddd_skeleton-mooc_backend-php ./vendor/bin/ecs check
|
53 | 20 |
|
54 |
| -.PHONY: run-tests |
55 |
| -run-tests: composer-env-file |
56 |
| - mkdir -p build/test_results/phpunit |
57 |
| - ./vendor/bin/phpunit --exclude-group='disabled' --log-junit build/test_results/phpunit/junit.xml --testsuite backoffice |
58 |
| - ./vendor/bin/phpunit --exclude-group='disabled' --log-junit build/test_results/phpunit/junit.xml --testsuite mooc |
59 |
| - ./vendor/bin/phpunit --exclude-group='disabled' --log-junit build/test_results/phpunit/junit.xml --testsuite shared |
60 |
| - ./vendor/bin/behat -p mooc_backend --format=progress -v |
61 |
| - |
62 |
| -# 🐳 Docker Compose |
63 |
| -.PHONY: start |
64 |
| -start: CMD=up --build -d |
65 |
| - |
66 |
| -.PHONY: stop |
67 |
| -stop: CMD=stop |
| 21 | +start: |
| 22 | + @if [ ! -f .env.local ]; then echo '' > .env.local; fi |
| 23 | + UID=${shell id -u} GID=${shell id -g} docker compose up --build -d |
| 24 | + make clean-cache |
68 | 25 |
|
69 |
| -.PHONY: destroy |
70 |
| -destroy: CMD=down |
| 26 | +stop: |
| 27 | + UID=${shell id -u} GID=${shell id -g} docker compose stop |
71 | 28 |
|
72 |
| -# Usage: `make doco CMD="ps --services"` |
73 |
| -# Usage: `make doco CMD="build --parallel --pull --force-rm --no-cache"` |
74 |
| -.PHONY: doco |
75 |
| -doco start stop destroy: composer-env-file |
76 |
| - UID=${shell id -u} GID=${shell id -g} docker-compose $(CMD) |
| 29 | +destroy: |
| 30 | + UID=${shell id -u} GID=${shell id -g} docker compose down |
77 | 31 |
|
78 |
| -.PHONY: rebuild |
79 |
| -rebuild: composer-env-file |
80 |
| - docker-compose build --pull --force-rm --no-cache |
81 |
| - make deps |
| 32 | +rebuild: |
| 33 | + docker compose build --pull --force-rm --no-cache |
| 34 | + make install |
82 | 35 | make start
|
83 | 36 |
|
84 |
| -.PHONY: ping-mysql |
85 | 37 | ping-mysql:
|
86 | 38 | @docker exec codely-php_ddd_skeleton-mooc-mysql mysqladmin --user=root --password= --host "127.0.0.1" ping --silent
|
87 | 39 |
|
88 |
| -.PHONY: ping-elasticsearch |
89 | 40 | ping-elasticsearch:
|
90 | 41 | @curl -I -XHEAD localhost:9200
|
91 | 42 |
|
92 |
| -.PHONY: ping-rabbitmq |
93 | 43 | ping-rabbitmq:
|
94 | 44 | @docker exec codely-php_ddd_skeleton-rabbitmq rabbitmqctl ping --silent
|
95 | 45 |
|
96 | 46 | clean-cache:
|
97 | 47 | @rm -rf apps/*/*/var
|
98 |
| - @docker exec codely-php_ddd_skeleton-backoffice_backend-php ./apps/backoffice/backend/bin/console cache:warmup |
99 |
| - @docker exec codely-php_ddd_skeleton-backoffice_frontend-php ./apps/backoffice/frontend/bin/console cache:warmup |
100 | 48 | @docker exec codely-php_ddd_skeleton-mooc_backend-php ./apps/mooc/backend/bin/console cache:warmup
|
0 commit comments