Skip to content

Request for Entrypoint to be included in the Spec #422

@BBialeckiACR

Description

@BBialeckiACR

Entrypoint - Entrypoints describe how data is accepted and results are emitted. Entrypoints and their security are defined as part of a Components Workload.
For DICOM Use Case
DimseInEntrypoint, DimseOutEntrypoint, WadoRsInEntrypoint, StowRsInEntrypoint, StowRsOutEntrypoint, OperatorInEntrypoint, OperatorOutEntrypoint or DicomRestApiEntrypoint are reserved names with standardized schemas defined within this standard. These are also defined within the Standard Scope definitions of OAM. Definitions at this level are made with default values. Mutability is defined when the entrypoint is applied to a component.
For Example:

DICOM DIMSE In Entrypoint Schematic

apiVersion: standard.oam.dev/v1alpha2
kind: EntrypointDefintion
metadata:
  name: DimseInEntrypoint
spec:
  definitionRef:
    name: schema.dimseinentrypoint.oam.dev

image
image

Example DIMSE In Entrypoint Definition

apiVersion: standard.oam.dev/v1alpha2
kind: DimseInEntrypoint
metadata:
  name: example-app-dimse-in-entrypoint
spec:
  inputAet: MYAPPAET
  inputPort: 11112
  inputHost: 192.168.10.10
  security: 
    type: tls
    properties:
      version: 1.2
      clientCertCn: client.hospital.org
      serverCertCn: server.app.com
      cipherSuite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

Usage in Component Spec
image
image

Example Component with mutable parameters for Entrypoint

apiVersion: core.oam.dev/v2
kind: Component
metadata:
    name: dimseserver
spec:
    type: DicomServerWorkload
    settings:
        livenessProbe:
            httpGet:
                port: 8080
                path: /live
        readinessProbe:
            httpGet:
                port: 8080
                path: /ready        
        logAccess:
            httpGet:
                port: 8080
                path: /log
                httpHeaders:
                    - name: systemToken
                      value: sampleheadertoken
        env:
        - name: inputHost
          value: samplehost.domain.com
        - name: ip
          value: 10.20.30.40
    entrypoints:
        - entrypointRef:
              apiVersion: standard.oam.dev/v1alpha2
              kind: DimseInEntrypoint
              name: example-app-dimse-in-entrypoint
    parameters:
        - name: inputHost
          description: Input Host Name
          fieldPaths: 
          - "spec.settings.env[0].value"
          - "spec.entrypoints[0].spec.inputHost.value"
          required: false
        - name: ip
          description: IP
          fieldPaths: 
          - "spec.settings.env[1].value"
          required: false
        - name: inputAet
          description: Input AET
          fieldPaths:
          - "spec.entrypoints[0].spec.inputAet.value"
          required: false
        - name: inputPort
          description: Input Port
          fieldPaths:
          - "spec.entrypoints[0].spec.inputPort.value"
          required: false 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions