Я хочу развернуть часть моего приложения Symfony, скажем, это похоже на модуль.
Я хочу сначала исключить все файлы, а затем включить только файлы
мой новый модуль.
Для развертывания я использую следующую задачу Symfony
php symfony project:deploy production -t
Параметр -t выводит на выход все файлы, которые включены в этот пробный прогон rsync.
Содержимое config / rsync_exclude.txt имеет значение только *, так как я хочу исключить все:
*
В config / rsync_include.txt я перечисляю все файлы и папки для включения:
config/
config/mysupermodule.yml
lib/model/doctrine/
lib/model/doctrine/MySuperclass.php
lib/model/doctrine/MySuperclassTable.php
lib/
lib/MySuperLibrary/
lib/MySuperLibrary/*
Задача Symfony создает следующую команду rsync:
rsync --dry-run -azC --force --delete --progress --exclude-from=config/rsync_exclude.txt --include-from=config/rsync_include.txt -e "ssh -p22" ./ user@www.server.com:/test_deployment/
Проблема 1. Задача не синхронизирует файлы.
Решение до 1: Изменить порядок: сначала включить, а затем исключить.
Я понял, что если я изменю свою потребность на эту:
Я хочу включить все файлы моего нового модуля и исключить все
другой.
Это означает использование следующей команды:
rsync --dry-run -azC --force --delete --progress --include-from=config/rsync_include.txt --exclude-from=config/rsync_exclude.txt -e "ssh -p22" ./ user@www.server.com:/test_deployment/
Rsync работает.
Проблема 2: Как изменить порядок rsync при использовании задачи Symfony?
Задача Symfony сначала исключает, чем включает.
Решение 2:?