-
Notifications
You must be signed in to change notification settings - Fork 13.8k
[FLINK-1938] Add Grunt for building the front-end #623
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
The build is failing because of the license checker (RAT) hanging, not sure why it's happening. When building locally I get the same issue both on master as well as my topic branch. For testing I had to comment out the RAT section, does anyone know why this is happening? |
|
Wow, this comes with a bit of a surprise, given that it is a followup to a year-old discussion in the pre-Apache project "Stratosphere". It consists of two parts:
You can have a look at (1) here "https://github.com/StephanEwen/incubator-flink/commits/web_frontend_2" It supports queries for example like "http://localhost:8082/running//vertices" to get the vertex statuses for all vertices of a job. The nice thing is that it is extremely lightweight, by being a minimal layer on top of netty (which we use for data transport anyways). Before, I was trying to go for jersey/grizzly, but these are heavyweight (25+ dependencies) there were many version conflicts with other dependencies (like YARN). I hope to be able to share a few screenshots for (2) on the mailing list next week. How much have you implemented on your side? Can we find a way to bundle the two works together? |
|
Sorry about that, I had given up on my last attempt because I couldn't figure out how to do the Maven-Grunt integration. After working on a few other Maven-based projects since then I figured I'd give it another shot. I am sure we can bundle the two together, should I start working off the |
|
You are definitely welcome to participate in the new web frontend development. Have a look at the branch I sent you and see if you find your way around the new code (it is not too much so far, so it is okay, hopefully). I am not familiar with Grunt. It says it is a JavaScript automation framework. What is it for, in the context of the web frontend? |
|
Grunt is basically a front-end build tool. It is useful for things like
|
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
- Adds a separate Maven project for easier maintenance. Also allows users to refer to runtime without web libraries. - Simple HTTP server based on Netty HTTP (slim dependency, since we use netty anyways) - REST URL parsing via Netty Router - Abstract stubs for handlers that deal with errors and request/response - First set of URL request handlers that produce JSON responses This closes apache#677 This closes apache#623 This closes apache#297
This is the first step towards implementing the web interface refactoring I proposed last year: https://groups.google.com/forum/#!topic/stratosphere-dev/GeXmDXF9DOY
Once this is merged, I can get started with the rest of the refactoring. For now, the actual interface is kept the same, the only change is to how the build is done.