Ankündigung

Einklappen
Keine Ankündigung bisher.

Privates Plugin zum Testen ins eigene Repo herunterladen

Einklappen
Das ist ein wichtiges Thema.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Privates Plugin zum Testen ins eigene Repo herunterladen

    Um den Entwicklungsstand eines Plugins herunterzuladen das (noch) nicht im offiziellen Repository zu finden ist, bietet es sich an ein neues privates Plugin zu erstellen:
    1. Unterverzeichnis in smarthome/plugins mit Namen priv_<pluginnamehier> erstellen
    2. Eine Zip Datei des "fremden" Plugins erstellen lassen, dazu auf https://downgit.github.io/#/home gehen und dort als URL
      https://github.com/<owner>/<repository>/tree/<branch>/<plugindirectory>eingeben.
      <owner> muss dabei durch den Repo-Besitzer ersetzt werden
      <repository> durch den Repository Namen
      <branch> ist der Zweig in dem die Daten zu finden sind und
      <plugindirectory> der Name des Plugins
    3. Den Inhalt der Zipdatei dann in priv_<pluginnamehier> reinkopieren, darauf aufpassen, das dort dann nicht nur <pluginnamehier> drinsteht sondern die gleiche Struktur wie in anderen Plugin Ordnern auch.
    4. Nun priv_<pluginnamehier> als Plugin in der plugin.yaml eintragen und anschliessend SmartHomeNG neu starten.
    Code:
    #originalplugin:
    #     plugin_name: <pluginnamehier>
    #     key: bb7fd7dc....
    #     plugin_enabled: false
    
    testplugin:
        plugin_name: priv_<pluginnamehier>
        key: bb7fd7dc....xyz
        plugin_enabled: true
    Die Vorgehensweise wir hier am Beispiel des Plugin OpenWeatherMap gezeigt


    #2
    Danke, Bernd!

    Es wäre natürlich schön, wenn das shNG/plugins Repo mit submodules / subtrees arbeiten könnte. Das würde es für Plugin-Entwicklern deutlich einfacher machen, ihr Plugin in shNG einbinden zu lassen und up-to-date zu halten, ohne dabei in "Paralleluniversen" arbeiten zu müssen.

    Ich persönlich finde das nachträgliche Pushen von Änderungen nach 'oben' aus meinen eigenen Repos immer sehr umständlich, zumal ich hier keine vollständige Entwicklungsumgebung mit integriertem Git installiert habe.

    Und Änderungen, die 'oben' an 'meinen' Plugins von anderen vorgenommen wurden (z.B. bei der Umstellung/Erweiterung der plugin.yaml's oder die Anpassung visu_acl:r --> visu_acl: ro), sind an mir vorbeigegangen und parallel zu meinen eigenen Weiterentwicklungen gemacht worden (Mergen der beiden unabhängigen Änderungen ist dann schwierig bzw. nur in Handarbeit möglich).

    Soweit ich weiss, merkt der Endanwender von submodules / subtrees nichts und kann normal pullen, dort würde also alles beim alten bleiben ...

    /tom

    Kommentar


      #3
      Früher war das Plugin Repo mal als submodule in das shng Repo eingebunden. Aufgrund der damit auftretenden Handling-Probleme haben wir das schon vor längerem wieder aufgelöst. Meine Begeisterung für den Vorschlag der Nuzung von modules / submodules hält sich daher in Grenzen.
      Viele Grüße
      Martin

      There is no cloud. It's only someone else's computer.

      Kommentar

      Lädt...
      X