marcocast / scheduling-api

GraphQL API associated to ProActive Scheduling

Home Page:https://github.com/ow2-proactive/scheduling

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Scheduling API

Build Status

At this time, the Scheduling API offers a GraphQL endpoint for getting information about a ProActive Scheduler instance.

Please note the API is still experimental and may be subject to changes.

Building and deploying

You can build a WAR file as follows:

$ gradle clean build war

The last command produces a WAR file in

build/libs/scheduling-api-X.Y.Z-SNAPSHOT.war

This Web Application Archive can be deployed in the embedded Jetty container run by an instance of ProActive Server (or your own application server).

The standard procedure is to copy or to create a symlink to the WAR file in $PROACTIVE_HOME/dist/war.

Usage

Once deployed and running in a ProActive Scheduler instance, a graphical in-browser interface called GraphiQL is accessible at:

http://localhost:8080/scheduling-api/v1/graphiql

What is missing for now

  • Tests for the Java client
  • Complete Scheduler schema (i.e. returning Task progress, scripts content, etc.) See JobDataFetcherTest and TaskDataFetcherTest.
  • Schema definition and fetchers for Resource Manager
  • Field arguments refinement based on use cases (i.e. Studio, Scheduler and RM portals)
  • Sorting per field (by adding an orderBy argument) See graphql/graphql-relay-js#20 (comment)
  • Forwarding of all requests received on scheduling-api/v1 to /rest
  • Mutations (i.e. for submitting workflows, locking nodes, etc.)

About

GraphQL API associated to ProActive Scheduling

https://github.com/ow2-proactive/scheduling

License:GNU Affero General Public License v3.0


Languages

Language:Java 87.8%Language:CSS 7.3%Language:JavaScript 4.3%Language:HTML 0.6%