serii81
@serii81
Я люблю phр...

Как задать динамичные параметры в Makefile?

Добрый день.
В ларавере можно запустить команды через Makefile, если работаешь с докером.
Я уже настроил несколько команд, но как добавить динмаические команды.
Допустим комнада:
docker-container exec php php artisan make:seed UserSeeder -> make seed UserSeeder


Вот мои команды

up:
	sudo docker-compose up -d

down:
	sudo docker-compose down

down-orphan:
	sudo docker-compose down --remove-orphans

build:
	sudo docker-compose build

ps:
	sudo docker-compose ps

list:
	sudo docker-compose exec php-fpm php artisan route:list -c --name=users

migrate:
	docker-compose exec php-fpm php artisan migrate

clear:
	docker-compose exec php-fpm php artisan view:clear
	docker-compose exec php-fpm php artisan cache:clear
	docker-compose exec php-fpm php artisan config:clear
	docker-compose exec php-fpm php artisan route:clear

seed:
	docker-compose exec php-fpm php artisan db:seed

make-seed:
	docker-compose exec php-fpm php artisan make:seeder UsersTableSeeder

tinker:
	docker-compose exec php-fpm php artisan tinker

ide-generate:
	php artisan ide-helper:generate

install:
	docker-compose exec node npm install
prod:
	docker-compose exec node npm run prod
dev:
	docker-compose exec node npm run dev
watch:
	docker-compose exec node npm mix watch

perm:
	sudo chown ${USER}:${USER} bootstrap/cache -R
	sudo chown ${USER}:${USER} storage -R
  • Вопрос задан
  • 304 просмотра
Решения вопроса 1
shurshur
@shurshur
Сисадмин, просто сисадмин...
make принимает список отдельных целей для сборки, там нельзя передать параметр на несколько слов. Можно передавать define через -D, например:

make -DARGS="UserSeeder" seed

В Makefile:

seed:
  docker-container exec php php artisan make:seed $(ARGS)


Но в целом проще написать свой скрипт, чем сражаться с ограничениями make.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы