TSC Meeting

December 6, 2017

edgexfoundry.org | @edgexfoundry

Meeting Logistics

Time: December 6, 2017 7am PST – 8am PST

Join from PC, Mac, Linux, iOS or Android: https://zoom.us/j/983155298

Or iPhone one-tap (US Toll): +14086380968,983155298# or +16465588656,983155298#

Or Telephone:

Dial: +1 408 638 0968 (US Toll) or +1 646 558 8656 (US Toll)

+1 855 880 1246 (US Toll Free)

+1 877 369 0926 (US Toll Free)

Meeting ID: 983 155 298

International numbers available: https://zoom.us/zoomconference?m=mkFexUxEcqHlvXHw53PqScTDRvS48PiQ

** TSC calls are recorded and added to Wiki post-call

edgexfoundry.org | @edgexfoundry

LF Antitrust Policy Notice

EdgeX Foundry meetings involve participation by industry competitors, and it is the intention of the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws.

Examples of types of actions that are prohibited at EdgeX Foundry meetings and in connection with Linux Foundation activities are described in the Linux Foundation Antitrust Policy available at http://www.linuxfoundation.org/antitrust-policy. If you have questions about these matters, please contact your company counsel, or if you are a member of the Linux Foundation, feel free to contact Andrew Updegrove of the firm of Gesmer Updegrove LLP, which provides legal counsel to the Linux Foundation.

edgexfoundry.org | @edgexfoundry

TSC – Members Present Today

Company Name Email

IOTech Andy Foster andy@iotechsys.com

Analog Devices Doug Gardner doug.gardner@analog.com

Mainflux Janko Isidorovic janko@mainflux.com

Dell Jason Shepherd Jason.A.Shepherd@dell.com

The Linux Foundation Jeremy Phelps jphelps@linuxfoundation.org

Dell Jim White james.white2@dell.com

IOTech Keith Steele keith@iotechsys.com

Samsung MyeongGi Jeong myeong.jeong@samsung.com

VMware Salim AbiEzzi salim@vmware.com

Canonical Tony Espy espy@canonical.com

Samsung Uze Choi uzchoi@samsung.com

Note: TSC meetings shall require a quorum of two-thirds of the TSC total members to take a vote or make a decision. If a TSC meeting fails to meet the quorum requirement, discussions may proceed, however there shall be no voting or decisions.

Current quorum = 7 members

edgexfoundry.org | @edgexfoundry

need 7 for quorum

Today’s Agenda

  • TSC F2F Meeting (January)
  • Finalize Oil & Gas Work Group Setup
  • TSC Speaking Opportunity (OpenIoT Summit)
  • Core WG Update
  • QA/Test WG Update + Documentation Proposal
  • AOB

edgexfoundry.org | @edgexfoundry

TSC F2F Meeting

Brett Preston

edgexfoundry.org | @edgexfoundry

January 16-18, 2018 - Orlando, FL

edgexfoundry.org | @edgexfoundry

Early Agenda & Topics

  • Preview Release
    • Go Services and perf #’s
    • SDK Refactor(s)
    • Blackbox testing
    • CI/Build - including ARM
    • Documentation
    • Lessons Learned/Issues

  • California Release
    • Security Services/capabilities
    • System Management Services/capabilities
    • Remaining services Go replacements
    • Additional Export capability
    • Additional Device connectivity
    • SDK additions
  • Performance metrics
    • Per service
    • ingestion to export
    • ingestion to command actuation
    • footprint
    • startup
    • others?
  • Resourcing

Early Agenda & Topics (cont)

  • Roadmap review (past California)
    • QA improvements?
    • DevOp improvements?
    • EdgeX micro service improvements?
    • Certification process
    • Messaging technology (in addition to REST)
    • Orchestration
    • east/west abilities
      • failover
      • load balancing
  • Security Services
    • Overall architecture
    • Roadmap to delivery per release
  • System Management
    • EdgeX Foundry system managent
      • Micro service APIs
      • “Gateway” or system lifecycle
      • Device management
    • Roadmap to delivery per release
  • Resourcing

Early Agenda & Topics (cont)

  • Release schedule
    • April & Oct (with exception of california release)
    • Naming of releases
  • Conference Attendance
    • 2x annually business/marketing
      • Hannover Messe
      • ??
    • 1x developer focused conference
      • OpenIoT Summit
  • Hackathons

Oil & Gas Vertical Solution Project

Any issues - doc updates - etc.

edgexfoundry.org | @edgexfoundry

TSC Speaking Opportunity

Brett Preston

edgexfoundry.org | @edgexfoundry

OpenIoT Summit

edgexfoundry.org | @edgexfoundry

Core WG Update

Jim White

edgexfoundry.org | @edgexfoundry

Feedback Needed

  • Documentation (Andy)
  • Tech talks
    • Call for their resumption
    • Topics
    • Volunteers

Updates

  • Go Work
    • Core
    • Export
    • DS elements
  • Testing
  • DevOps
    • Container creation
    • Automated Testing
    • Arm Builds
    • Arm Testing
  • Documentation
  • Tutorials
    • YouTube (new Playlist: Adding a Modbus device to EdgeX)

EdgeX Product Documentation Proposal

Andrew Foster QA/Test WG Chair

edgexfoundry.org | @edgexfoundry

Background

  • Project currently uses EdgeX Foundry Wiki (Confluence) to create and maintain EdgeX related information including product level documentation (e.g. architecture, getting started, SDK pages etc.)
  • As of Barcelona release Release Notes for each EdgeX microservice are maintained in GitHub repository under source control, written in Markdown (.md files) and referenced from the Wiki
  • Proposal is to formalize the creation and management of product level documentation to enable controlled incremental improvements going forward
  • Provide a simple consistent way for project contributors to create/update product documentation
  • Provide a documentation generation system that can easily incorporated into product build/test/release process
  • Proposal is not to replace Wiki – for dynamic project related content then Wiki is most appropriate

edgexfoundry.org | @edgexfoundry

Options

  • Continue to develop additional Wiki HTML pages for product documentation using confluence – doesn’t address issue
  • Create raw HTML files that can be placed under source control in GitHub – too difficult to write/update and difficult to represent in different formats (e.g. a PDF book)
  • Choose a proprietary file based documentation format (e.g. Adobe Framemaker) – difficult to use and very costly
  • Choose a markup language with plain text formatting syntax designed for easy input with any text editor e.g. Markdown or reStructuredText (reST) each has a whole host of tools that can convert marked up text to publishing formats like HTML or PDF – most open source projects are using one of these approaches

edgexfoundry.org | @edgexfoundry

Markdown vs reStructuredText

  • Markdown
    • So the best thing about Markdown is its popularity.
    • Can find tools in almost any conceivable programming language and environment for parsing and munging it.
    • Is the default markup language for StackOverflow, Reddit and Github, Markdown is probably well familiar to most developers these days.

  • reStructuredText (reST)
    • reST stands out against Markdown it three main aspects:
      • It's more fully-featured - reST comes with more built-in features for writing more complex documents e.g. footnotes, tables, citations, tables of contents.
      • It's much more standardized and uniform.
      • It has built-in support for extensions
    • After the release of Sphinx has it seen serious uptake outside.
    • Github supports it for pages and wikis, and some major projects use it by default for their documentation - including the Linux kernel, OpenCV and LLVM/Clang.

edgexfoundry.org | @edgexfoundry

Examples from Open Source Projects

edgexfoundry.org | @edgexfoundry

Sphinx

  • Sphinx is a tool that makes it easy to create intelligent and beautiful documentation, written by Georg Brandl and licensed under the BSD license.
  • Sphinx was designed to create documents written in reST but can also work with Markdown
  • It was originally created for the Python documentation, and it has excellent facilities for the documentation of software projects in a range of languages. The following are key features of Sphinx:
    • Output formats: HTML (including Windows HTML Help), LaTeX (for printable PDF versions), ePub, Texinfo, manual pages, plain text
    • Extensive cross-references: semantic markup and automatic links for functions, classes, citations, glossary terms and similar pieces of information
    • Hierarchical structure: easy definition of a document tree, with automatic links to siblings, parents and children
    • Automatic indices: general index as well as a language-specific module indices
    • Code handling: automatic highlighting using the Pygments highlighter
    • Extensions: automatic testing of code snippets, inclusion of docstrings from Python modules (API docs), and more
    • Contributed extensions: more than 50 extensions contributed by users in a second repository; most of them installable from PyPI
    • Themes - Sphinx supports changing the appearance of its HTML output via themes.

edgexfoundry.org | @edgexfoundry

Status

  • IOTech are in the process of converting content from product related Wiki pages into reST
  • Have setup Sphinx build environment and with initial theme and are generating HTML and PDF document versions
  • Will have completed markup the Wiki sections/pages show by end of year

edgexfoundry.org | @edgexfoundry

Issue Raised on WG Meeting (11/30/17)

What documentation does the project need and where do they need it? We have a Wiki today. Others have suggested we need the documentation in GitHub. Do we need both? If we have both how do we keep them synced? How does this impact things like the code and API documentation?

What tool(s)/technology is used to produce the documentation sets?

    • reST and Sphinx are proposed.

Migration work – who is doing and what is the timeframe?

    • Target first set by end of the year – IOTech have volunteered to complete this work

What do we expect developers/contributors to do going forward? What guidelines and templates for documentation do we need for developers going forward so as to conform to the new standards. Who produces these?

    • IOTech volunteered to take action to write up guidelines
    • Agreement that documentation needs to live outside the Wiki, living alongside the code – but not a replacement for the Wiki
    • Wiki can point at the documentation generated as part of the build process
    • Consider reST and Sphinx feeding into a service such as Read the Docs
    • Going forward API documentation should be generated as part of build process (e.g. ram2html) and incorporated into the EdgeX documentation set
    • Code segments from source files in repository can be automatically incorporated/updated in reST files where needed

edgexfoundry.org | @edgexfoundry

Summary

  • IOTech are using reStructuredText + Sphinx to create our commercial product documentation

  • Will have completed initial markup in reST of selected (shown previously) Edge Wiki pages by end of year

  • Happy to donate these files + Sphinx theme (+ build artefacts) to the project as the basis of future EdgeX product documentation if the community agrees

edgexfoundry.org | @edgexfoundry

TSC Vote to Approve

  • Does the EdgeX TSC approve the documentation structure/go-forward plan, as presented?

  • Vote will proceed post-call via email (quorum not reached on call)

edgexfoundry.org | @edgexfoundry

AOB / Reminders

Brett Preston

edgexfoundry.org | @edgexfoundry

Project Resources

Quick links to most commonly used Community Resources

edgexfoundry.org | @edgexfoundry

Project Contributions Welcome!

  • Our objective is to make EdgeX use & deployment pervasive!
  • EdgeX success is 100% dependent on the vibrancy of a proactive community
  • Getting Involved
    • Project membership growing - want to join contact Philip DesAutels at LF (pdesautels@linuxfoundation.org)
    • First Priority is the MVP - potential contributors please contact keith@iotechsys.com (people, equipment, technology)
    • If interested in adding new projects please contact the relevant working group chair

edgexfoundry.org | @edgexfoundry

EdgeX - Where to learn more

EdgeX Foundry Wiki

https://wiki.edgexfoundry.org/display/FA/EdgeX+Foundry+Project+Wiki

EdgeX Foundry Rocket Chat

https://chat.edgexfoundry.org/home

Weekly EXF Technical Spin up calls by Jim White, Dell (james_white2@dell.com)

30 minute deep-dive topics followed by 30 minute open Q&A

Call recordings are available on the Wiki

edgexfoundry.org | @edgexfoundry

What is the Device Exchange?

  • A great way to put your products in the hands of other members so they can help build a better EdgeX!

Special thanks to Dave Bohlman and KMC Controls for making this awesome kit and how-to guide available to members!!

edgexfoundry.org | @edgexfoundry

Hackathon Events

  • Dec 1st, regional Startups and Entrepreneurs summit in Cairo.
  • Jim White and Tyler Cox putting together hackathon starter kit.
  • More coming

edgexfoundry.org | @edgexfoundry

Hackathons: How can you help?

  • https://wiki.edgexfoundry.org/display/FA/Hackathons
  • Provide any local volunteers onsite to help with technical work, potentially help judge, etc. (see list below of known hackathons coming up and locations)
  • Sponsor breakfast/lunch/dinner for the participants (usually things like donuts/coffee, pizza lunch or cater sandwiches)
  • Sponsor $ rewards (incentives) for teams that successfully implement projects (these could even be projects that particular sponsors want to see accomplished - we just need them scoped appropriately so as to be something that can be accomplished in a 2 day period)
  • Help provide or resource hackathon winner prizes
  • Sponsor or provide any swag (t-shirts, mugs, etc.)
  • Provide marketing assistance

edgexfoundry.org | @edgexfoundry

Meetups

edgexfoundry.org | @edgexfoundry

EdgeX Project Organization

EdgeX Foundry

Technical Steering Committee

Chair

Keith Steele

IOTech

Core

Working Group

Chair

Jim White

Dell

Device SDK

Working Group

Chair

Tony Espy

Canonical

Applications

Working Group

Chair

Janko

Isisdorovic

Mainflux

Export Services SDK MVP

Device SDK

MVP

Core

MVP

System Management

Working Group

Chair

Sallim

AbiEzzi

VMware

System

Management

Services MVP

Security

Working Group

Chair

Doug Gardner

ADI

Security

Services

MVP

Working Groups

Projects

Vertical Solutions Working Group

Additional use-case specific projects

Chair

Uze Choi

Samsung

DevOps

Continuous Integration

MVP

Chair

Jeremy Phelps

Linux F

QA and Test

Testing

MVP

Chair

Andrew

Foster

IOTech

Smart Factory

Pending: Oil and Gas (NOV)

Maintainer: MJ

Samsung

edgexfoundry.org | @edgexfoundry

Marketing

  • CTA: If your company will be demoing technologies that utilize the EdgeX framework, please email events@edgexfoundry.org so that we can add to https://www.edgexfoundry.org/events/

  • CTA: If your company will be presenting EdgeX at an upcoming event/webinar/other, please email pr@edgexfoundry.org so that we can help promote

edgexfoundry.org | @edgexfoundry

AOB/Cadence

  • Meeting Cadence Reminder
    • Currently held weekly at 7am PST on Wednesday’s
    • Calls without TSC quorum will still be used to review issues

  • Next Meeting: December 13, 2017

edgexfoundry.org | @edgexfoundry

Thank You

edgexfoundry.org | @edgexfoundry

EdgeX Foundry TSC Meeting 12/6/2017 - Google Slides