镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Add ability to download and install plugin from nuget feed #53

Open

Description

@ormico

This is probably an Epic.

One of the long running issues is how to manage installing the tool and separately having to install the plugin or plugins plus discoverability, etc.

Currently, this is just done manually but I want to get install packages going for some of the main platforms.

Do we also want to package and ship the plugins using the same mechanisms? Maybe, but that leads to a lot of other questions, plus we have to deal with dependency conflicts between the dependencies of the main executable and the plugins. For Ex. if both depend on Assembly "A".

A different alternative is to package each plugin as a nuget package and publish to nuget.org or some other nuget feed, then add a feature to search and install plugins by checking an online plugin list (or something else) and pulling the plugin nuget package from the feed, plus all dependencies (minus ones already included from main executable) and installing them in a plugins/{my-plugin} folder, or something similar.

The current v2 process is to publish the plugins online as ZIP files and the user or admin manually unzips the plugin and all dependencies into the folder where the dbpatch binaries are installed.

If the nuget approach doesn't work, we could formalize and automate the current v2 process by documenting how to build and package a plugin into a zip, how to handle dependency conflicts, and have a command to automate installing the plugin ZIP into the correct folder like plugins/{my-plugin}

Activity

  1. added this to the v3.0 milestone on Feb 21, 2024
  2. ormico commented on Feb 21, 2024

    @ormico
    OwnerAuthor
  3. ormico commented on Feb 21, 2024

    @ormico
    OwnerAuthor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions