Skip to content

Dynamic Documentation Discovery based on Plugins #808

@jakobmoellerdev

Description

@jakobmoellerdev

Description

Integrate the documentation system with the OCM plugin architecture. Plugins should be able to provide the same rich guides and schema documentation as core types.

Plugins contribute types via the capabilities call. The types.Type struct is extended to support documentation:

// [MODIFY] bindings/go/plugin/manager/types/types.go
type Type struct {
    Type       runtime.Type   `json:"type"`
    Aliases    []runtime.Type `json:"aliases"`
    JSONSchema []byte         `json:"jsonSchema"`
    Title       string  `json:"title,omitempty"`
    Description string  `json:"description,omitempty"`
    Guides      []Guide `json:"guides,omitempty"` 
}

This can then be dynamically registered into our documentation subsystem and be provided by the documentation.

Acceptance Criteria:

  • manager.PluginManager extended to discover Guide metadata.
  • Plugin subsystems are automatically registered and namespaced.
  • Documentation output includes clear source attribution (Plugin ID and Path).

Done Criteria

  • Code has been reviewed by other team members
  • Analysis of existing tests (Unit and Integration)
  • Unit Tests created for new code or existing Unit Tests updated
  • Integration Test Suite updated (includes deletion of existing unnecessary Integration Test and/or creation of new ones if required)
  • Enduser Documentation updated (if applicable)
  • Internal technical Documentation created/updated (if applicable)
  • Successful demonstration in Review

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/ipceiImportant Project of Common European Interestkind/tasksmall task, normally part of feature or epic

    Type

    Projects

    Status

    🍺 Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions