Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit f356812

Browse files
author
DKravtsov
committed
Updated Laravel to the latest version, Makefile improvements, performance optimization for Mac.
1 parent b735ddc commit f356812

35 files changed

+1730
-2280
lines changed

‎.dockerignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,7 @@ bootstrap/cache
1010
.phpstorm.meta.php
1111
Dockerfile
1212
_ide_helper.php
13-
Dockerfile
1413
docker-compose.yml
1514
docker-compose-test-ci.yml
1615
docker-compose-staging.yml
1716
docker-compose-prod.yml
18-
Makefile

‎.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ trim_trailing_whitespace = true
1111
[*.md]
1212
trim_trailing_whitespace = false
1313

14-
[*.{yml,yaml}]
14+
[*.yml]
1515
indent_size = 2
1616

1717
[{composer.json,Makefile}]

‎.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,8 @@ reports/*
1919
npm-debug.log
2020
yarn-error.log
2121
.phpunit.result.cache
22+
###> friendsofphp/php-cs-fixer ###
23+
.php-cs-fixer.cache
2224
.php_cs
2325
.php_cs.cache
26+
###< friendsofphp/php-cs-fixer ###

‎Dockerfile

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
FROM php:8.1-apache
22

33
# set main params
4-
ARG BUILD_ARGUMENT_DEBUG_ENABLED=false
5-
ENV DEBUG_ENABLED=$BUILD_ARGUMENT_DEBUG_ENABLED
64
ARG BUILD_ARGUMENT_ENV=dev
75
ENV ENV=$BUILD_ARGUMENT_ENV
86
ENV APP_HOME /var/www/html
9-
ARG UID=1000
10-
ARG GID=1000
7+
ARG HOST_UID=1000
8+
ARG HOST_GID=1000
119
ENV USERNAME=www-data
12-
10+
ARG INSIDE_DOCKER_CONTAINER=1
11+
ENV INSIDE_DOCKER_CONTAINER=$INSIDE_DOCKER_CONTAINER
1312

1413
# check environment
1514
RUN if [ "$BUILD_ARGUMENT_ENV" = "default" ]; then echo "Set BUILD_ARGUMENT_ENV in docker build-args like --build-arg BUILD_ARGUMENT_ENV=dev" && exit 2; \
@@ -55,8 +54,8 @@ RUN rm -r $APP_HOME
5554
# create document root, fix permissions for www-data user and change owner to www-data
5655
RUN mkdir -p $APP_HOME/public && \
5756
mkdir -p /home/$USERNAME && chown $USERNAME:$USERNAME /home/$USERNAME \
58-
&& usermod -u $UID $USERNAME -d /home/$USERNAME \
59-
&& groupmod -g $GID $USERNAME \
57+
&& usermod -o -u $HOST_UID $USERNAME -d /home/$USERNAME \
58+
&& groupmod -o -g $HOST_GID $USERNAME \
6059
&& chown -R ${USERNAME}:${USERNAME} $APP_HOME
6160

6261
# put apache and php config for Laravel, enable sites

‎Makefile

Lines changed: 149 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
dir=${CURDIR}
21
export COMPOSE_PROJECT_NAME=environment4
32

43
ifndef APP_ENV
@@ -8,53 +7,107 @@ ifndef APP_ENV
87
endif
98
endif
109

11-
laravel_user=-u www-data
12-
project=-p ${COMPOSE_PROJECT_NAME}
13-
service=${COMPOSE_PROJECT_NAME}:latest
14-
interactive:=$(shell [ -t 0 ] && echo 1)
15-
ifneq ($(interactive),1)
16-
optionT=-T
10+
ifndef INSIDE_DOCKER_CONTAINER
11+
INSIDE_DOCKER_CONTAINER = 0
1712
endif
18-
ifeq ($(GITLAB_CI),1)
13+
14+
HOST_UID := $(shell id -u)
15+
HOST_GID := $(shell id -g)
16+
PHP_USER := -u www-data
17+
PROJECT_NAME := -p ${COMPOSE_PROJECT_NAME}
18+
INTERACTIVE := $(shell [ -t 0 ] && echo 1)
19+
ERROR_ONLY_FOR_HOST = @printf "033円[33mThis command for host machine033円[39m\n"
20+
ifneq ($(INTERACTIVE), 1)
21+
OPTION_T := -T
22+
endif
23+
ifeq ($(GITLAB_CI), 1)
1924
# Determine additional params for phpunit in order to generate coverage badge on GitLabCI side
20-
phpunitOptions=--coverage-text --colors=never
25+
PHPUNIT_OPTIONS := --coverage-text --colors=never
2126
endif
2227

2328
build:
24-
@docker-compose -f docker-compose.yml build
29+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
30+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose.yml build
31+
else
32+
$(ERROR_ONLY_FOR_HOST)
33+
endif
2534

2635
build-test:
27-
@docker-compose -f docker-compose-test-ci.yml build
36+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
37+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-test-ci.yml build
38+
else
39+
$(ERROR_ONLY_FOR_HOST)
40+
endif
2841

2942
build-staging:
30-
@docker-compose -f docker-compose-staging.yml build
43+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
44+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-staging.yml build
45+
else
46+
$(ERROR_ONLY_FOR_HOST)
47+
endif
3148

3249
build-prod:
33-
@docker-compose -f docker-compose-prod.yml build
50+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
51+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-prod.yml build
52+
else
53+
$(ERROR_ONLY_FOR_HOST)
54+
endif
3455

3556
start:
36-
@docker-compose -f docker-compose.yml $(project) up -d
57+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
58+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose.yml $(PROJECT_NAME) up -d
59+
else
60+
$(ERROR_ONLY_FOR_HOST)
61+
endif
3762

3863
start-test:
39-
@docker-compose -f docker-compose-test-ci.yml $(project) up -d
64+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
65+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-test-ci.yml $(PROJECT_NAME) up -d
66+
else
67+
$(ERROR_ONLY_FOR_HOST)
68+
endif
4069

4170
start-staging:
42-
@docker-compose -f docker-compose-staging.yml $(project) up -d
71+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
72+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-staging.yml $(PROJECT_NAME) up -d
73+
else
74+
$(ERROR_ONLY_FOR_HOST)
75+
endif
4376

4477
start-prod:
45-
@docker-compose -f docker-compose-prod.yml $(project) up -d
78+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
79+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-prod.yml $(PROJECT_NAME) up -d
80+
else
81+
$(ERROR_ONLY_FOR_HOST)
82+
endif
4683

4784
stop:
48-
@docker-compose -f docker-compose.yml $(project) down
85+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
86+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose.yml $(PROJECT_NAME) down
87+
else
88+
$(ERROR_ONLY_FOR_HOST)
89+
endif
4990

5091
stop-test:
51-
@docker-compose -f docker-compose-test-ci.yml $(project) down
92+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
93+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-test-ci.yml $(PROJECT_NAME) down
94+
else
95+
$(ERROR_ONLY_FOR_HOST)
96+
endif
5297

5398
stop-staging:
54-
@docker-compose -f docker-compose-staging.yml $(project) down
99+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
100+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-staging.yml $(PROJECT_NAME) down
101+
else
102+
$(ERROR_ONLY_FOR_HOST)
103+
endif
55104

56105
stop-prod:
57-
@docker-compose -f docker-compose-prod.yml $(project) down
106+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
107+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose -f docker-compose-prod.yml $(PROJECT_NAME) down
108+
else
109+
$(ERROR_ONLY_FOR_HOST)
110+
endif
58111

59112
restart: stop start
60113
restart-test: stop-test start-test
@@ -68,28 +121,59 @@ env-test-ci:
68121
@make exec cmd="cp ./.env.test-ci ./.env"
69122

70123
ssh:
71-
@docker-compose $(project) exec $(optionT) $(laravel_user) laravel bash
124+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
125+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec $(OPTION_T) $(PHP_USER) laravel bash
126+
else
127+
$(ERROR_ONLY_FOR_HOST)
128+
endif
129+
130+
ssh-root:
131+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
132+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec $(OPTION_T) laravel bash
133+
else
134+
$(ERROR_ONLY_FOR_HOST)
135+
endif
72136

73137
ssh-supervisord:
74-
@docker-compose $(project) exec supervisord bash
138+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
139+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec supervisord bash
140+
else
141+
$(ERROR_ONLY_FOR_HOST)
142+
endif
75143

76144
ssh-mysql:
77-
@docker-compose $(project) exec mysql bash
145+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
146+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec mysql bash
147+
else
148+
$(ERROR_ONLY_FOR_HOST)
149+
endif
78150

79151
exec:
80-
@docker-compose $(project) exec $(optionT) $(laravel_user) laravel $$cmd
152+
ifeq ($(INSIDE_DOCKER_CONTAINER), 1)
153+
@$$cmd
154+
else
155+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec $(OPTION_T) $(PHP_USER) laravel $$cmd
156+
endif
81157

82158
exec-bash:
83-
@docker-compose $(project) exec $(optionT) $(laravel_user) laravel bash -c "$(cmd)"
159+
ifeq ($(INSIDE_DOCKER_CONTAINER), 1)
160+
@bash -c "$(cmd)"
161+
else
162+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec $(OPTION_T) $(PHP_USER) laravel bash -c "$(cmd)"
163+
endif
84164

85165
exec-by-root:
86-
@docker-compose $(project) exec $(optionT) laravel $$cmd
166+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
167+
@HOST_UID=$(HOST_UID) HOST_GID=$(HOST_GID) docker-compose $(PROJECT_NAME) exec $(OPTION_T) laravel $$cmd
168+
else
169+
$(ERROR_ONLY_FOR_HOST)
170+
endif
87171

88172
report-prepare:
89-
mkdir -p $(dir)/reports/coverage
173+
@make exec cmd="mkdir -p reports/coverage"
90174

91175
report-clean:
92-
rm -rf $(dir)/reports/*
176+
@make exec-by-root cmd="rm -rf reports/*"
93177

94178
wait-for-db:
95179
@make exec cmd="php artisan db:wait"
@@ -112,13 +196,25 @@ info:
112196
@make exec cmd="php --version"
113197

114198
logs:
199+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
115200
@docker logs -f ${COMPOSE_PROJECT_NAME}_laravel
201+
else
202+
$(ERROR_ONLY_FOR_HOST)
203+
endif
116204

117205
logs-supervisord:
206+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
118207
@docker logs -f ${COMPOSE_PROJECT_NAME}_supervisord
208+
else
209+
$(ERROR_ONLY_FOR_HOST)
210+
endif
119211

120212
logs-mysql:
213+
ifeq ($(INSIDE_DOCKER_CONTAINER), 0)
121214
@docker logs -f ${COMPOSE_PROJECT_NAME}_mysql
215+
else
216+
$(ERROR_ONLY_FOR_HOST)
217+
endif
122218

123219
drop-migrate:
124220
@make exec cmd="php artisan migrate:fresh"
@@ -135,31 +231,22 @@ seed:
135231
@make exec cmd="php artisan db:seed --force"
136232

137233
phpunit:
138-
@make exec cmd="./vendor/bin/phpunit -c phpunit.xml --coverage-html reports/coverage $(phpunitOptions) --coverage-clover reports/clover.xml --log-junit reports/junit.xml"
234+
@make exec cmd="./vendor/bin/phpunit -c phpunit.xml --coverage-html reports/coverage $(PHPUNIT_OPTIONS) --coverage-clover reports/clover.xml --log-junit reports/junit.xml"
139235

140-
###> php-coveralls ###
141236
report-code-coverage: ## update code coverage on coveralls.io. Note: COVERALLS_REPO_TOKEN should be set on CI side.
142237
@make exec-bash cmd="export COVERALLS_REPO_TOKEN=${COVERALLS_REPO_TOKEN} && php ./vendor/bin/php-coveralls -v --coverage_clover reports/clover.xml --json_path reports/coverals.json"
143-
###< php-coveralls ###
144238

145-
###> phpcs ###
146-
phpcs: ## Run PHP CodeSniffer
239+
phpcs: ## Runs PHP CodeSniffer
147240
@make exec-bash cmd="./vendor/bin/phpcs --version && ./vendor/bin/phpcs --standard=PSR12 --colors -p app tests"
148-
###< phpcs ###
149241

150-
###> ecs ###
151-
ecs: ## Run Easy Coding Standard
242+
ecs: ## Runs Easy Coding Standard
152243
@make exec-bash cmd="./vendor/bin/ecs --version && ./vendor/bin/ecs --clear-cache check app tests"
153244

154245
ecs-fix: ## Run The Easy Coding Standard to fix issues
155246
@make exec-bash cmd="./vendor/bin/ecs --version && ./vendor/bin/ecs --clear-cache --fix check app tests"
156-
###< ecs ###
157-
158-
###> phpmetrics ###
159-
phpmetrics:
160-
@make exec-by-root cmd="make phpmetrics-process"
161247

162-
phpmetrics-process: ## Generates PhpMetrics static analysis, should be run inside symfony container
248+
phpmetrics: ## Runs phpmetrics
249+
ifeq ($(INSIDE_DOCKER_CONTAINER), 1)
163250
@mkdir -p reports/phpmetrics
164251
@if [ ! -f reports/junit.xml ] ; then \
165252
printf "033円[32;49mjunit.xml not found, running tests...033円[39m\n" ; \
@@ -168,28 +255,30 @@ phpmetrics-process: ## Generates PhpMetrics static analysis, should be run insid
168255
@echo "033円[32mRunning PhpMetrics033円[39m"
169256
@php ./vendor/bin/phpmetrics --version
170257
@php ./vendor/bin/phpmetrics --junit=reports/junit.xml --report-html=reports/phpmetrics .
171-
###< phpmetrics ###
258+
else
259+
@make exec-by-root cmd="make phpmetrics"
260+
endif
172261

173-
###> php copy/paste detector ###
174-
phpcpd:
262+
phpcpd: ## Runs php copy/paste detector
175263
@make exec cmd="php phpcpd.phar --fuzzy app tests"
176-
###< php copy/paste detector ###
177264

178-
###> php mess detector ###
179-
phpmd:
265+
phpmd: ## Runs php mess detector
180266
@make exec cmd="php ./vendor/bin/phpmd app text phpmd_ruleset.xml --suffixes php"
181-
###< php mess detector ###
182267

183-
###> PHPStan static analysis tool ###
184-
phpstan:
268+
phpstan: ## Runs PHPStan static analysis tool
269+
ifeq ($(INSIDE_DOCKER_CONTAINER), 1)
185270
@echo "033円[32mRunning PHPStan - PHP Static Analysis Tool033円[39m"
186-
@make exec cmd="php artisan cache:clear --env=test"
187-
@make exec cmd="./vendor/bin/phpstan --version"
188-
@make exec cmd="./vendor/bin/phpstan analyze app tests"
189-
###< PHPStan static analysis tool ###
271+
@php artisan cache:clear --env=test
272+
@./vendor/bin/phpstan --version
273+
@./vendor/bin/phpstan analyze app tests
274+
else
275+
@make exec cmd="make phpstan"
276+
endif
190277

191-
###> Phpinsights PHP quality checks ###
192-
phpinsights:
278+
phpinsights: ## Runs Php Insights PHP quality checks
279+
ifeq ($(INSIDE_DOCKER_CONTAINER), 1)
193280
@echo "033円[32mRunning PHP Insights033円[39m"
194-
@make exec cmd="php -d error_reporting=0 ./vendor/bin/phpinsights analyse --no-interaction --min-quality=100 --min-complexity=80 --min-architecture=100 --min-style=100"
195-
###< Phpinsights PHP quality checks ###
281+
@php -d error_reporting=0 ./vendor/bin/phpinsights analyse --no-interaction --min-quality=100 --min-complexity=80 --min-architecture=100 --min-style=100
282+
else
283+
@make exec cmd="make phpinsights"
284+
endif

‎app/Exceptions/Handler.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class Handler extends ExceptionHandler
2424
protected $dontReport = [];
2525

2626
/**
27-
* A list of the inputs that are never flashed for validation exceptions.
27+
* A list of the inputs that are never flashed to the session on validation exceptions.
2828
*
2929
* @var array<int, string>
3030
*/

‎app/Providers/AuthServiceProvider.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
class AuthServiceProvider extends ServiceProvider
1212
{
1313
/**
14-
* The policy mappings for the application.
14+
* The model to policy mappings for the application.
1515
*
1616
* @var array<class-string, class-string>
1717
*/

‎app/Providers/EventServiceProvider.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
class EventServiceProvider extends ServiceProvider
1414
{
1515
/**
16-
* The event listener mappings for the application.
16+
* The event to listener mappings for the application.
1717
*
1818
* @var array<class-string, array<int, class-string>>
1919
*/

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /