In order to support end-to-end edge solution from the Akraino community, Akraino uses blueprint concept to address specific Edge use cases. Blueprint is a declarative configuration of the entire stack i.e., edge platform that can support edge workloads and edge APIs. In order to address specific use cases, a reference architecture is developed by the community. A declarative configuration is used to define all the components used within that reference architecture such as Hardware, Software, tools to manage the entire stack, and point of delivery i.e., the method used to deploy in a site. In Summary, the declarative configuration is a prescriptive configuration, which will be developed and tested by the community. The intent of this community is to support production quality integration using upstream community code and Akraino community developed code to support the entire stack.

Akraino community intends to maintain such blueprints using full CI/CD integration and testing to support the code development by the community members.

TSC will provide acceptance criteria for each release. Below figure is the pictorial definition of the blueprints.

  • No labels


  1. Are there any heuristics on what is or isn't a blueprint?

    For example, can a Powerpoint or PDF file BE a blueprint? Or can it merely be a statement of intent to create a blueprint in the future?

    Is a blueprint a machine parseable description of infrastructure (e.g. YAML, JSON, XML)?

    Can a blueprint include executable code? Should a blueprint include executable code?

    Is there a distinction between "things that are consumed by Akraino software as input" vs "plans to extend the capabilities of Akraino software"? I think it would be a really good idea to clearly distinguish between these two things and have clearly different names for one vs the other.

    Is a "blueprint proposal" a fundamentally different kind of thing than a "blueprint"? Or is a "blueprint proposal" simply a "blueprint" that hasn't been "blessed" yet by a managerial "approval"?

    Hopefully there are, or can be, very clear and concrete definitions.

    1. A "blueprint proposal" is simply a "blueprint" that hasn't been yet by a managerial "approval".

      1. Ok, so everything I've looked at under "Blueprint Proposals" on this wiki has been marketing slide decks. I haven't seen anything I'd call engineering, and certainly nothing I'd call software or machine readable specifications. Do we have an agreed upon term for the end product after the marketing slides have pointed the way towards something deployable? i.e., what do we call the YAML/JSON/XML and/or executable code that can repeatably deploy a consistent instantiation of a specific blueprint?

        1. Some code has been uploaded to gerrit. Other code will be too. YAML file will be uploaded to gerrit as well.

  2. Is it possible to take a best fit blueprint and customize it for my use case building blocks myself or I need to take the request back to community for implementation ?