diff --git a/interfaces/kubeflow_dashboard_links/interface/v0/README.md b/interfaces/kubeflow_dashboard_links/interface/v0/README.md index c514b2f4b..ec21511dc 100644 --- a/interfaces/kubeflow_dashboard_links/interface/v0/README.md +++ b/interfaces/kubeflow_dashboard_links/interface/v0/README.md @@ -25,6 +25,8 @@ The requirer specifies zero or more sidebar items in the required format. #### Example +The `dashboard_links` key might contain the following as a JSON-encoded string: + ```json [ { diff --git a/interfaces/kubeflow_dashboard_links/interface/v0/schema.py b/interfaces/kubeflow_dashboard_links/interface/v0/schema.py index 95fe7ce72..995f34756 100644 --- a/interfaces/kubeflow_dashboard_links/interface/v0/schema.py +++ b/interfaces/kubeflow_dashboard_links/interface/v0/schema.py @@ -3,9 +3,10 @@ """This file defines the schemas for the provider and requirer sides of the kubeflow-dashboard-links interface. Examples: - RequirerSchema: + Requirer: unit: - app: [ + app: { + "dashboard_links": '[ { "text": "Some link text", "link": "/some-relative-link", @@ -14,10 +15,10 @@ "icon": "assessment", "desc": "link description" } - ] + ]' + } """ -from interface_tester.schema_base import DataBagSchema from pydantic import BaseModel @@ -45,7 +46,12 @@ class DashboardItem(BaseModel): desc: str = "" -class RequirerSchema(DataBagSchema): - """Requirer schema for Ingress.""" +class RequirerAppData(BaseModel): + """The requirer's application databag.""" - app: list[DashboardItem] + dashboard_links: list[DashboardItem] + + +ProviderAppData = None +ProviderUnitData = None +RequirerUnitData = None