GitHub user sachingoel0101 opened a pull request:

    https://github.com/apache/flink/pull/1338

    [FLINK-2978][web-dashboard][webclient] Integrate web client into Web 
Frontend

    This PR creates an interface on the dashboard to perform the tasks the 
webclient is doing right now, including displaying plans, submitting jobs and 
uploading jars.
    
    Here's a quick summary of changes:
    1. GET `/jars/list`: List of all available jars
    2. GET `/jars/:jarid/plan`: Plan for a job. Takes `entry-class`, 
`parallelism` and `program-args` as query parameters.
    3. DELETE `/jars/:jarid`: Delete a jar.
    4. POST `/jars/upload`: Upload a new jar, limited to 10 MB size. 
    5. POST `/jars/:jarid/run`: Run a jar, and takes arguments just as in GET 
`/jars/:jarid/plan`.
    
    A new state is introduced on the dashboard, named `submit` which allows all 
these operations.
    
    Detailed screenshots:
    1. Overview page:
    
    
![overview](https://cloud.githubusercontent.com/assets/8874261/11020609/3ed0b3e4-864a-11e5-8832-a689ac725bcf.png)
    
    2. Disabled mode [via config key `jobmanager.web.submit.allow`], for 
security purposes:
    
    
![disabled](https://cloud.githubusercontent.com/assets/8874261/11020610/65a29f46-864a-11e5-8fbf-c7d8c05e9803.png)
    
    3. Default state with no jars:
    
    
![no_jars_uploaded](https://cloud.githubusercontent.com/assets/8874261/11020613/71e0b824-864a-11e5-9b53-29d3325f0d65.png)
    
    4. Uploading a jar:
    
    
![uploading](https://cloud.githubusercontent.com/assets/8874261/11020616/7df20802-864a-11e5-8c4b-2fc1bd796e40.png)
    
    5. Arguments passing interface for the programs. This is shown only when a 
Jar has been selected. At this point, the upload new button disappears, which 
can be brought back again by unselecting.
    Entry classes can be loaded to the `entry-class` input box by clicking on 
the list items under Entry Class.
    
    
![argument_passing_interface](https://cloud.githubusercontent.com/assets/8874261/11020622/b1aa81f6-864a-11e5-93ac-100e7fb06564.png)
    
    
    6. Plan, as a result of `Show Plan` button:
    
    
![plan](https://cloud.githubusercontent.com/assets/8874261/11020626/c8e172a8-864a-11e5-9c26-fa12e57edabc.png)
    
    7. Error reporting:
    Invalid entry class:
    
    
![invalid_entry_class](https://cloud.githubusercontent.com/assets/8874261/11020632/fbb36f4c-864a-11e5-98c0-3f98caf8ecfd.png)
    
    Invalid parallelism:
    
    
![invalid_parallelism](https://cloud.githubusercontent.com/assets/8874261/11020633/0d6f2172-864b-11e5-8ac7-b5bfa22db56f.png)
    
    
    8. After clicking on submit, if the job was submitted successfully, it 
automatically redirects to that job's page.
    
    
![transition_to_job_after_submit](https://cloud.githubusercontent.com/assets/8874261/11020635/291ec12a-864b-11e5-9d69-37dd9de693b0.png)
    
    9. Program arguments:
    
    
![program_args](https://cloud.githubusercontent.com/assets/8874261/11020637/338b30d0-864b-11e5-8797-0e24cc914a93.png)
    
    10. Invalid file uploads:
    
    
![invalid_file_upload](https://cloud.githubusercontent.com/assets/8874261/11020641/447074dc-864b-11e5-907b-7fd80237ee7f.png)
    
    11. Disallow too large files:
    
    
![max_limit_on_upload](https://cloud.githubusercontent.com/assets/8874261/11020644/54b9159c-864b-11e5-90e4-117173ece9a0.png)
    
    
    Of course, the best way to get the feel of it is to use it. :') Looking 
forward to comments and suggestions. 

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/sachingoel0101/flink client

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/1338.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1338
    
----
commit 80c538f5a55220a1cf04a8b79f8377fd0a7936b5
Author: Sachin Goel <sachingoel0...@gmail.com>
Date:   2015-11-05T05:10:44Z

    [FLINK-2978][web-dashboard][webclient] Integrate web client into Web
    Frontend. Allow security settings to disallow job submission from web.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to