Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-24561

Installer crash when accessing ezpublish.api.repository

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Confirmed
    • Priority: High
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Install
    • Labels:
      None

      Description

      It happens only in eZ Studio, but the problem is in the installer.

      $ php ezpublish/console ezplatform:install studio
      Copied /tmp/ezs/vendor/ezsystems/demobundle/EzSystems/DemoBundle/Installer/../Resources/installer/config_templates/ezpublish.yml to ezpublish/config/ezpublish.yml
      Copied vendor/ezsystems/ezpublish-kernel/eZ/Bundle/PlatformInstallerBundle/src/Resources/config_templates/common/ezpublish_dev.yml to ezpublish/config/ezpublish_dev.yml
      Copied vendor/ezsystems/ezpublish-kernel/eZ/Bundle/PlatformInstallerBundle/src/Resources/config_templates/common/ezpublish_prod.yml to ezpublish/config/ezpublish_prod.yml
      Executing 659 queries from vendor/ezsystems/ezpublish-kernel/data/mysql/schema.sql on database ezs
      Executing 586 queries from /tmp/ezs/vendor/ezsystems/demobundle/EzSystems/DemoBundle/Installer/../Resources/installer/sql/demo_data.sql on database ezs
      
      
                                                                                        
        [eZ\Bundle\EzPublishCoreBundle\ApiLoader\Exception\InvalidRepositoryException]  
        Undefined repository ''. Did you forget to configure it in ezpublish_*.yml?
      

      When installer is started ezpublish*.yml config files don't exist yet. So installer process is started without ezpublish configuration. It doesn't crash in demo install, because this installer doesn't use ezpublish services (ezpublish.api.repository).

      But studio installer extends demo installer and registers additional content types using ezpublish.api.repository: StudioInstaller.php#L50. And it crashes then.

      Workaround

      Clear cache and run installer again:

      $ php ezpublish/console cache:clear
      $ php ezpublish/console ezplatform:install studio
      

      Possible solutions

      • Move copying ezpublish*.yml configs into earlier stage of installation (composer post-install hooks?).
      • Don't use ezpublish API in installer, only SQL queries (I don't like this solution).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                michal.pipa-obsolete@ez.no Michal Pipa (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated: