The HSP Agent (Marketplace Platform Integration Agent – aka “Health Services Platform Agent”, “HSP Agent” or "Agent" ) connects a – connects a /wiki/spaces/GM/pages/2334916612 instance to Graphite Marketplace.
Functional Requirements
The Agent is run once per /wiki/spaces/GM/pages/2334916612 instance. Functionally, it:
MUST maintains a stateful SSE connection to Graphite Marketplace to receive realtime push events.
MUST integrate with the local Platform’s container orchestration controller to request deployment and undeployment events, e.g. Swarm, Kubernetes, OpenShift etc
MUST validate product licensing against Graphite Marketplace's licensing API.
MUST receive whitelisted analytics events from deployed products.
MUST relay received whitelisted analytics and logging events to the Graphite Marketplace metering API.
MUST report provisioning changes outcomes and usage metrics to Graphite Marketplace so the Marketplace can compute dependency and billing targets correctly.
SHOULD relay received whitelisted analytics and logging events to any local, member-specific log aggregation systems.
SHOULD temporarily store message to retry in the event of failure.
The Agent is thus a lightweight component designed mostly as an event dispatcher between Graphite Marketplace, /wiki/spaces/GM/pages/2334916612 and local logging systems. The Agent:
MUST NOT support intentional transmission of PHI to Graphite Marketplace
MUST support direct integration with the market leading container orchestration controllers.
local HIT infrastructure to one or more trusted HSP Marketplace instances, receiving deployment commands from the marketplace(s) and issuing platform-specific commands to the local devops platform.
...