Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Load custom plugins from JAR files #413

Closed
1 of 5 tasks
kaklakariada opened this issue Jun 1, 2024 · 0 comments · Fixed by #416
Closed
1 of 5 tasks

Load custom plugins from JAR files #413

kaklakariada opened this issue Jun 1, 2024 · 0 comments · Fixed by #416
Assignees
Labels

Comments

@kaklakariada
Copy link
Contributor

kaklakariada commented Jun 1, 2024

OFT already includes some plugins (e.g. importers for RST & MD). These plugins are loaded automatically from the fat JAR that includes all plugins. Using OFT's plugin API, third parties could create and publish and use their own plugins independently from the OFT project. Example: AsciiDoc importer (#410).

Proposed solution

  • OFT loads plugins from folder OFT_PLUGINS (e.g. $HOME/.openfasttrace/plugins/)
  • If the plugin is a single JAR that does not need dependencies, it is directly loaded from $OFT_PLUGINS/${PLUGIN_NAME}.jar
  • If the plugin requires multiple JARs, OFT loads all JARs from $OFT_PLUGINS/${PLUGIN_NAME}/*.jar

Out of scope

  • Configuration of plugin folder via CLI option (maybe in another PR)

Tasks

  • Update loader to load plugins from external JARs
  • Plugin developer guide: document how to write plugins
  • User guide: document how to use plugins
  • User guide: add page with list of third party plugins
  • Readme: add links to list of third party plugins, plugin user guide & plugin developer guide
@kaklakariada kaklakariada self-assigned this Jun 16, 2024
kaklakariada pushed a commit that referenced this issue Jun 16, 2024
kaklakariada added a commit that referenced this issue Jun 22, 2024
kaklakariada added a commit that referenced this issue Jun 23, 2024
kaklakariada added a commit that referenced this issue Aug 11, 2024
Co-authored-by: Sebastian Bär <redcatbear@ursus-minor.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant