0

Ich integriere OneupFlysystemBundle, und ich frage mich, wie man den local Adapter auf meinem Entwicklungs-PC und awss3v3 auf den Produktionsservern verwenden.OneupFlysystemBundle: wie man verschiedene Adapter zwischen dev. und prod

Ich habe dies getan, aber es funktioniert nicht aus (es immer die lokale):

oneup_flysystem: 
    adapters: 
     default_adapter: 
      local: 
       directory: %flysystem.local_adapter.directory% 
      awss3v3: 
       client: flysystem_clients.s3 
       bucket: "%flysystem.s3_client.foo.bucketName%" 
       prefix: "foo/" 


    filesystems: 
     default: 
      adapter: default_adapter 

Ich denke, dass ich es mit funktioniert:

oneup_flysystem: 
    adapters: 
     default_local_adapter: 
      local: 
       directory: %flysystem.local_adapter.directory% 
     default_s3_adapter: 
      awss3v3: 
       client: flysystem_clients.s3 
       bucket: "%flysystem.s3_client.foo.bucketName%" 
       prefix: "foo/" 


    filesystems: 
     default: 
      adapter: "%choosen_adapter%" # choosen_adapter value beeing either "default_local_adapter" or "default_s3_adapter" 

aber ich don Ich mag diese Lösung nicht, hat jemand eine bessere Idee?

Antwort

1

Ihre letzte Lösung ist sehr ähnlich wie Symfony selbst die Auswahl des zu verwendenden DBMS-Treibers oder die Konfiguration des Cache-Backends erlaubt. Es sieht OK aus.

Einstellungen in Bezug auf die Ausführungsumgebung können in app/config/parameters.yml konfiguriert werden (setzen Sie den choosen_adapter Parameter darin), der Grund dafür zu sein.

Jedoch ist es normalerweise eine schlechte Praxis, die zu merkwürdigen Verhaltensweisen führt, eine andere Umgebung in der Entwicklung und in der Produktion zu verwenden. Einige Fehler können nur in der Produktion auftreten, da S3 anstelle des lokalen FS verwendet wird.

Sie sollten versuchen, an einer Entwicklungsumgebung so nah wie möglich an der Produktion zu arbeiten. S3 ist billig (selbst wenn Sie nicht viele Daten speichern), wenn es möglich ist, sollten Sie es auch in Dev verwenden.

+0

danke, du hast Recht, ich werde S3 für meine lokale Maschine verwenden. – Bruno

Verwandte Themen