OXRUN – AKTUALISIERTES CLI TOOLSET FÜR OXID 6

OXRUN – AKTUALISIERTES CLI TOOLSET FÜR OXID 6

blog-oxrun-cli-toolset

Unter https://github.com/marcharding/oxrun ist bereits 2015 ein CLI (Command Line Interface) Toolset für den OXID eShop entstanden, das von Magerun (https://github.com/netz98/n98-magerun) inspiriert wurde und neben der Oxid Console (https://github.com/OXIDprojects/oxid-console/) ein sehr hilfreiches Werkzeug darstellt, um OXID über CLI in bestimmten Teilbereichen administrieren zu können. So kann man z.B. das Tmp-Verzeichnis leeren, die Datenbank-Views neu generieren, Module de-/aktivieren usw.

Unter https://github.com/smxsm/oxrun gibt es einen aktuellen Fork von oxrun, der das Tool für OXID 6 tauglich macht, Subshop-Support für die Enterprise Edition bietet und auch einige neue Kommandos enthält.

Zentral sind die neuen Kommandos „module:multiactivate“ und „config:multiset“, die jeweils Konfigurationen im YAML-Format verarbeiten können. Das Kommando „module:multiactivate“ kann beliebige Module in beliebigen Subshops per CLI aktivieren. Hierbei kann entweder mit einer Blacklist oder Whitelist gearbeitet werden. Hier ein Beispiel für eine Whitelist:

whitelist:
1:
- ocb_cleartmp
- moduleinternals
#- ddoevisualcms
#- ddoewysiwyg
2:
- ocb_cleartmp

Ein Aufruf sieht z.B. so aus:

./vendor/bin/oxrun module:multiactivate configs/modules.yml -c --shopDir=./source

wobei das „configs“-Verzeichnis in diesem Fall relativ zum „source“-Ordner, also im eigentlichen Shop-Root liegen würde.


Das Kommando „config:multiset“ kann hingegen beliebige Config-Einträge in beliebigen Subshops per CLI aktualisieren, auch hier ein Beispiel:

config:
  1:
    blReverseProxyActive:
      variableType: bool
      variableValue: false
    # simple string type
    sMallShopURL: http://myshop.dev.local
    sMallSSLShopURL: http://myshop.dev.local
    myMultiVal:
      variableType: aarr
      variableValue:
        - /foo/bar/
        - /bar/foo/
      # optional module id
      moduleId: my_module
  2:
    blReverseProxyActive:
...

Weitere neue Kommandos sind „config:export“ und „config:import“, welche aber die für OXID 6 portierte Version von „OXID Modules Config“ (https://github.com/OXIDprojects/oxid_modules_config/tree/dev-6.0-wip) voraussetzen, die ebenfalls per Composer installiert werden muss. Damit kann für alle Subshops (mit gewissen Filtern usw.) die komplett OXCONFIG im YAML-Format ex- und wieder importiert werden – die Portierung für OXID 6  ist allerdings noch nicht abgeschlossen!

Für andere Kommandos, wie z.B. „module:list“ oder „module:activate“, wurde der Parameter „–shopId“ ergänzt, z.B.

./vendor/bin/oxrun module:list --shopId=2 --shopDir=./source

./vendor/bin/oxrun module:activate oepaypal --shopId=2 --shopDir=./source

Ein weiteres hilfreiches Kommando ist z.B. „db:dump“, das einige praktische Optionen bietet, siehe https://github.com/smxsm/oxrun#dbdump. Für einen anonymisierten Export, z.B. für das Staging-System, kann „--anonymous“ genutzt werden. In Verbindung mit „db:import“ kann man hier sehr schnell z.B. die Datenbank ohne Views und Userdaten vom Live- auf den Staging-Server übertragen.

Mehr Informationen, Kommandos und Optionen findet man im README, viel Spass beim Testen!

Keine Kommentare