Uploaded image for project: 'Service Binding'
  1. Service Binding
  2. APPSVC-1276

Define ServiceClass and DiscoveryController

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Undefined Undefined
    • Primaza 0.1
    • None
    • Service Binding
    • None
    • AppSvc Sprint 230, AppSvc Sprint 231, AppSvc Sprint 232, AppSvc Sprint 233, AppSvc Sprint 234, AppSvc Sprint 235

      Owner: Architect:

      Francesco Ilario

      Story (Required)

      As a Service Administrator, I would like to register a ServiceClass so that Primaza can manage related RegisteredServices

      Background (Required)

      We need to implement the ServiceClass API as defined in the Primaza architecture document. See Epic for link

      Glossary

      See Architecture document Glossary

      Out of scope

      For ServiceClass:

      • No Healthcheck
      • No Protocol-based discovery
      • No Serverless

      For RegisteredServices

      • No SLA
      • No Healthcheck
      • No TTL
      • No Status management
      • No SED

      In Scope

      • ServiceClassIdentity
      • Constraints
      • Resource-based Discovery

      Approach(Required)

      Implement the core functionalities among ServiceClass registration and ServiceDiscovery.
      In this story we focus on Resource-based Service discovery.

      When a ServiceClass is registered, the DiscoveryController will start looking for resources that are complaint with the ServiceClass.
      Discovery should take place in the ServiceNamespaces for the environments defined in the Constraints section of the ServiceClass. Once the DiscoveryController founds one service instance, it creates a RegisteredService with status 'registered'.
      Creation/deletion of resources that respect a registered ServiceClass specification, should trigger the creation/deletion of the related RegisteredServices.

      Demo requirements(Required)

      A good demo will show a few RegisteredServices being added to the catalog upon ServiceClass registration.

      Dependencies

      NA

      Edge Case

      NA

      Acceptance Criteria

      • Development
        ServiceClass CRD is defined
        DiscoveryController is developed with resource-based discovery implemented.
        DiscoveryController watches for creation/deletion of resources that are compliant with existing ServiceClass specification.
      • QE
        There a simple test making sure ServiceClass resources can be created.
        There are test cases for RegisteredService creation, deletion, and update.
      • Docs
        There is a page in our docs dedicated to explaining what a ServiceClass is.
        Update architecture document with any changes while implementing
        There is a link in our main readme to the ServiceClass page

      INVEST Checklist

      Dependencies identified
      Blockers noted and expected delivery timelines set
      Design is implementable
      Acceptance criteria agreed upon
      Story estimated

      v

      Legend

      Unknown
      Verified
      Unsatisfied

              ansadler@redhat.com Andy Sadler
              rh-ee-filario Francesco Ilario
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: