ligato / osseus Goto Github PK
View Code? Open in Web Editor NEWA visual tool to create Ligato app skeletons
License: Apache License 2.0
A visual tool to create Ligato app skeletons
License: Apache License 2.0
Currently, watching using Node Webhooks has an issue when using Etcd's api-gateway, specifically with watching. Using the watch api request used to work but stopped randomly after working with the node error:
MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 connection listeners added. Use emitter.setMaxListeners() to increase limit
Change the following code in /client/server.js to that of how Etcd's doc uses watching to see that nothing is returned:
This: webHooks.add('etcd', http://${etcd}/v3beta/kv/range)
To this: webHooks.add('etcd', http://${etcd}/v3beta/watch)
Loading of template is done in 'client/src/components/GeneratorApp/GeneratorApp.js' lines 59-69.
Loading of tar is done in 'client/src/components/GeneratorApp/Header/GeneratorAppHeader.js' lines 77-82.
Current implementation, due to time constraints, was to use a setTimeout() before attempting to retrieve data from the node.js server in server.js. This is an issue due to not being fault tolerant. ie. a slow connection might create a situation where the data isn't ready to be retrieved after the setTimeout() has expired or a large template generation might take longer, hence not be ready to be retrieved in time.
Methods to try:
Redux connect()
Redux subscribe()
Using Promises to wait until state changes
Loading all projects saved by the user is currently only partially implemented. Progress is blocked by the broker's listKeys() method not listing the keys of prefix '/config/generator/v1/projects/' in etcd. ListValues() works, given the correct key.
Relevant code can be found in
https://github.com/sctsui/osseus/blob/feature/loadAll/plugins/restapi/handlers.go
method getAlProjects() (line 308)
Frontend recieving allProjects json will be done in line 77-79 of client/server.js
Currently the web app runs on localhost
a. Add default plugins
b. Plugins to be used
Which plugins are going to be used by default and why?
What plugins are going to be needed in the future and why?
I think an accurate README would be very useful to describe our system. If we could update it to show objectives, requirements, installation, & how to run it locally, it would help a lot for those seeing our project for the first time. Please look at CN-Infra or Gatsby as a reference on how to do it correctly.
UI
-Create a way of capturing user input on plugin click. A possible method would be to use a swal2 popup and have input fields for each configurable option of the given plugin.
-This user input needs to be reflected in the model ('client/src/components/Model.js') sent to the backend.
Backend
-Generate a template for each configuration file with the values sent from the frontend model.
-Add the generated template files for each conf.go into the tar file and template structure object under cmd/agent.
Link to compiled configurations:
https://docs.google.com/document/d/1enneGXDEmkgr_Gm0UvLTEeiHsl2YK6VxFSyXWWYGqhE/edit?usp=sharing
example. Draggable plugin boxes will essentially be the same component
Pick a KV store of your choice (why did you choose it)
Describe user interaction and provide with E2E examples
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.