cloud-cv / origami-daemon Goto Github PK
View Code? Open in Web Editor NEWA long running daemon for Origami to deploy and manage demos on CloudCV servers.
License: BSD 3-Clause "New" or "Revised" License
A long running daemon for Origami to deploy and manage demos on CloudCV servers.
License: BSD 3-Clause "New" or "Revised" License
This needs to have a solid logging configured, so if anything goes wrong we can easily debug and solve the problem without any delay.
For this purpose configure both *Console as well as File logging.
There are some problems when running daemon with python2 like problems with relative_imports. Make the package completely python2.7 compatible.
Add the following API routes to the daemon.
Admin routes
Add unit tests and integration tests for the following modules.
Add a feature to provide docker container build logs to user.
For this create a column of log file in database and keep populating those build logs to that directory. The logs should be served using origami-daemon.
Since the deployment for the demo is done asynchronously the deployer is sent a response stating deployment has started. So as of now, user don't get notified whether the demo has been deployed or not. As a solution to this, we can optionally ask deployer for the callback URI, which we will make a ping request to once the demo is deployed, this will notify the user that demo has been deployed and is ready for use.
Add sphinx documentation similar to https://github.com/Cloud-CV/origami-lib
For now, we are assuming that both origami-server and deploy-manager are running on the same host, so there is no need to set up authentication for this, we can simply bind the server to the loopback address and then origami-server
can communicate with it internally without being exposed outside the host. But at some point of time, we will need to extend to a different server, wherein one server will have all the demos and other running origami-server, for such cases we need some sort of authentication.
The method that I have in mind is authentication via JWT, we can simply use Nginx reverse proxy to set up TLS for origami-daemon(so we don't have to set up anything for origami-daemon) and then we can simply authenticate origami-server via JWT. This way we can also provide an admin panel sort of thing for demo deployment.
Add signal handling capability to the application so that it can handle SIG* and exit properly saving necessary states.
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.