Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Code Freeze:  Oct 28, 2020

Release:  Nov 18, 2020

Namer:  Joan Duran


The Hanoi release is anticipated to be dot release (v 1.3); with experimental V2 APIs for some services.  This release shall have no non-backward compatible changes (with 1.0,1.1 or 1.2 releases). 

Release Themes and Objectives

  • Start of the implementation of the V2 API
    • Preparing EdgeX for some major new features and version 2.0 in 2021
  • Support running a service on a different host than the other services.  Specifically making it easier to run a device service on a different host that the rest of Edge.   As a stretch to this goal, allow for select service high availability.
  • Securing the REST communications between services (HTTPS)
  • Automating performance testings
  • Include a data filter between DS and Core Data (align with and share App Service filter function if possible

General

  • Most important features we are currently working on (in priority order)
    • V2 API (partially deliver in Hanoi)
    • Allow device services to be distributed to alternate hosts
    • Implement a message bus between device services and application services
  • Move to Go 1.15 when available in August
  • Design a message bus implementation between device services and application service (stretch goal to provide implementation)
  • Allow device services to be distributed to alternate hosts
  • V2 API - “experimental”
    • For core, device services, application services, and SDKs V2 API minus security
    • Supporting services may remain at V1
  • Stretch: explore possible collapse of core command and metadata
  • Stretch: deprecate Mongo

Core and Supporting Services

  • V2 API for core services
  • Stretch: dropping the log service
  • Establish a roadmap for the UI
  • Determine if UI should be in separate repo
  • UI secrets management
  • UI incorporation of new rules engine

Test/QA

  • EdgeX V2 API Blackbox tests (TAF)
  • Stretch: User guidance on platform needs (want it badly but not under current V2 API and TAF work)
  • More performance statistics

Device Service & SDKs

  • Add V2 API
  • Message bus (DS to appl service; design first and stretch impl)
  • Protect the device from harmful commands, there should be the possibility to set a Min and Max limit (or other profile checks to protect the device).
  • Data filter design between DS and Core Data
  • Stretch: design bound checking (lead an ADR proposal)

Application Services and App Functions SDK

  • Add V2 API
  • Message bus (DS to appl service; design first and stretch impl)
  • Deprecate Drools rules engine
  • Design metadata about the “gateway” or host platform (identity, location, …)
  • Develop a Kuiper road map; explore project's roadmap for additional requests
  • Add EdgeX specific Kuiper documentation
  • Address issues with binary data and Kuiper

System Management

  • Service list fix - SMA errors when supporting service is not running
  • Review and improve how SMA polls services
  • CLI improvements

Security

  • Provide “HOW-TO” guides for following in priority order:
    • SSH Tunnel (needs document and docker compose file snippets and may need some special containers for ssh/sshd or instructions for their setup)
    • Overlay network (needs document and docker compose file examples/snippets)
    • Service mesh (needs document and script on how to automate)
  • An abstraction and pluggable mechanism to provide generation of secrets
  • Address containers security issues
  • Design secure subsystem launch/bootstrap dependencies
  • Review design of Hardware Root of Trust - API with pluggable implementation
  • Kong: enable CORS for API Gateway
  • Kong: Secure admin port with TLS
  • Design enablement of Vault PKI secret engine
  • Develop process for security vetting of 3rd party components

DevOps

  • Performance Optimizations
    • Jenkins Pipeline optimizations for edgex-go
    • Explore options from LF for supporting Jenkins on K8s
  • Develop process for security and license vetting of 3rd party components
  • Stretch: Restructuring our compose files to take advantage of compose file overrides, which removed the duplication in all our compose files.
  • Stretch: code Coverage for Jenkins Global Libraries (codecov.io)
  • Stretch: Snap improvements (WIP)

Miscellaneous

  • Certification/Endorsement process of device services
  • Next steps in Ideation/Topcoder challenge (virtual hackathon challenges)
  • Exploration of how to facilitate Kubernetes with the Open Horizon sister project

Decisions, actions and notes taken from Hanoi planing meeting (April 2020)

View file
nameDecisions, Action Items, Wrap up.pptx
height250