This is the repository for the Workflow Manager web UI . This has Dashboard where Oozie jobs can be monitored, run, stip etc..It also has a desiger which allows you to develop a oozie work flow in a graphical interface.
Technologies Used. it uses Ember as underline JS framework. JsPlbumb for designer. Dagre for layout in designer. bootstrap for css.
If you are not building using maven, you will need the following things properly installed on your computer. Maven build would download and setup the prerequisites for you.
git clone <repository-url> this repositorymvn clean packagein the main directory, just do mvn install.
Go to folder under wfmanager\src\main\resources\ui.
npm installbower installIn development mode (and in non Ambari View mode), you might want to connect the UI with already running remote/local oozie server. To do so you can run the proxy so that UI can route the requests through it.
node proxy.js <local-port> <remote-oozie-host> <remote-oozie-port>By default local port is 11002, default oozie host is localhost with default port as 11000
node proxy.jsProxy on: localhost:11002 -> localhost:11000If you want to use different local port (other than 11002) then update the API_URL in environment.js accordingly.
ember servermvn clean package (Build web ui and puts into /dist)mvn test -Pproxy (start proxy for the oozie API)mvn test -Pserver (does ember server)ssh root@127.0.0.1 -p 2222 to get into Sandboxguest user using su - guesttar -xvf /usr/hdp/current/oozie-client/doc/oozie-examples.tar.gzfind ./examples/apps/ -iname "job.properties" | xargs sed -i 's/localhost/sandbox.hortonworks.com/g'export HADOOP_USER_NAME=guesthdfs dfs -put ./examples/ /user/guest/examplesexport OOZIE_USER_NAME=guestfind ./examples/apps/ -iname "job.properties" | xargs -i oozie job -oozie http://localhost:11000/oozie -config {} -runThis UI can be built and deployed as an Ambari view. Below are the steps to build the Ambari view.
cd oozie-ambari-viewmvn clean package - This builds target/oozie-ambari-view-0.0.0.1-SNAPSHOT.jarcp target/oozie-ambari-view-0.0.0.1-SNAPSHOT.jar </var/lib/ambari-server/resources/views/>Make use of the many generators for code, try ember help generate for more details
ember testember test --serverHow the code is organized. There are 2 main components- Dashboard and Designer.
Designer
Dashboard.