-
Story
-
Resolution: Unresolved
-
Normal
-
None
-
None
-
None
Owner: Architect:
David Peraza
Story (Required)
As a Service Binding Developer, I'd like to deploy all the services from the SOA Demo Application as single solution on a kubernetes cluster.
Background (Required)
We have always being using PetClinic to demonstrate how service binding works with single deployment applications. This application is simple and it is very useful when testing simple uscases. However, to be able to see the benefits of Service Binding, it will make more sense to show how easy it is to bind an application composed of multiple micro-services (K8 Deployments and Services) and each of those depending on one or many Cloud Services (Database, Monitoring, MemCache).
We'd like to implement an e-commerce website with two exposed micro-services, one that manages Orders, the other manages the Catalog. When the user places a new order, the Catalog must be updated.
The communication between Orders and Catalog microservices should happen via a Message Broker (like Amazon SNS).
Glossary
NA
Out of scope
This is not a product, just a demo app.
In Scope
Events from the Orders micro-service must be forwarded to the Catalog one.
The demo application must be installed on a cluster as a single Helm package.
Approach(Required)
Pick modern technology for Both, Frontend and Backend. Language selection is open but try to stay with the languages we use in our projects so that the demo app can me maintained (Golang, Python, JavaScript). Make it a simple Kubernetes application that shows how the services are being used.
Demo requirements(Required){}
A great demo will show how we setup SBO, ACK and Service Mapper. Then show two or more ServiceResourceMap CR enabling 2 or more AWS service CRDs to be bindable. Then deploy the AWS resources with their corresponding SBO CRs pointing to label selector. The application will then be deployed using helm and modifying labels in their deployments to realize the binding. Check our demo repo for some references and also use that repo for our demo app.
Dependencies
APPSVC-1243: the SOA application design and front-end application are needed- APPSVC-1244: Orders microservice is needed
- APPSVC-1245: Catalog microservice is needed
Edge Case
_<Describe edge cases to consider when implementing the story and defining
tests>_
Acceptance Criteria
Source code on our demo repo
Readme file with instruction to build and package using Helm
Make file to build and package
Readme file with instruction on how to configure SBO, ACK, ServiceMapper to be able to show the value of application.
When an order is placed, an event must be placed in the message Queue
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
- depends on
-
APPSVC-1244 Create the Orders microservice
-
- New
-
-
APPSVC-1245 Create the Catalog microservice
-
- New
-
-
APPSVC-1243 Design SOA demo and develop mocked front-end
-
- Closed
-