Я написал собственный модуль, который использует jwt.транскодер
обслуживание от jwt модуль. В свою очередь, он предоставляет еще одну услугу:
$ cat mymodule.services.yml
Сервисы:
мой модуль.jwt:
класс: Drupal\mymodule\Services\Jwt
аргументы: [ '@jwt.transcoder', '@event_dispatcher' ]
В процессе разработки все прошло гладко. Однако ни модуль jwt, ни мой новый пользовательский модуль не были установлены на нашем сайте до того, как я начал разрабатывать эту функцию.
Я добавил оба модуля с композитором и сделал экспорт конфигурации, чтобы включить их (и настроить криптографические ключи и т. д.). Однако, когда я иду выполнять развертывание, я получаю сообщение об ошибке при импорте конфигурации, которое, по-видимому, происходит из-за зависимости от jwt.транскодер
сервис, который еще не установлен на данный момент.
В строке 86 CheckExceptionOnInvalidReferenceBehaviorPass.php:
Служба «mymodule.jwt» зависит от несуществующей службы «jwt.transcoder».
С нашим процессом развертывания мы можем развертывать только одну кодовую базу за раз — это означает, что если я хочу выполнить импорт конфигурации, чтобы получить jwt
установлен первым, и еще один импорт конфигурации с включением моего пользовательского модуля, мне пришлось бы выполнить второе развертывание, чтобы получить эту вторую кодовую базу конфигурации на сервере.
Есть ли способ заставить импорт конфигурации сначала установить jwt, а затем мой пользовательский модуль в одной кодовой базе, чтобы эта зависимость была устранена?