Skip to content

OpenShift Tasks Example Application for use in various ELTs and ILTs

Notifications You must be signed in to change notification settings

jameshbarton/openshift-tasks

 
 

Repository files navigation

OpenShift Tasks

What is it?

The tasks-rs quickstart demonstrates how to implement a JAX-RS service that uses JPA 2.0 persistence deployed to Red Hat JBoss Enterprise Application Platform.

The application manages User and Task JPA entities. A user represents an authenticated principal and is associated with zero or more Tasks. Service methods validate that there is an authenticated principal and the first time a principal is seen, a JPA User entity is created to correspond to the principal. JAX-RS annotated methods are provided for associating Tasks with this User and for listing and removing Tasks.

Note: This quickstart uses the H2 database included with Red Hat JBoss Enterprise Application Platform 6. It is a lightweight, relational example datasource that is used for examples only. It is not robust or scalable, is not supported, and should NOT be used in a production environment!_

Note: This quickstart uses a *-ds.xml datasource configuration file for convenience and ease of database configuration. These files are deprecated in JBoss EAP 6.4 and should not be used in a production environment. Instead, you should configure the datasource using the Management CLI or Management Console. Datasource configuration is documented in the [Administration and Configuration Guide](https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/) for Red Hat JBoss Enterprise Application Platform._

Users and Passwords

Users and passwords are defined in configuration\application-users.properties and application-roles.properties. Users can be created using the JBoss add-users.sh shell script in a JBoss EAP installation.

Currently the following users are defined:

User Password

tasks

redhat1

redhat

redhat1

gpte

redhat1

REST Endpoints on OpenShift

  • Create a task with name {task_name}

    curl -u tasks:redhat1 -H 'Content-Length: 0' -X POST http://{tasks_route}/ws/tasks/{task_name}
  • Get a task by id

    curl -u 'tasks:redhat1' -H "Accept: application/json" -X GET http://{tasks_route}/ws/tasks/{tasks_id}
  • Get all tasks for user

    curl -u 'tasks:redhat1' -H "Accept: application/json" -X GET http://{tasks_route}/ws/tasks
  • Delete a task by id

    curl -i -u 'tasks:redhat1' -X DELETE http://{tasks_route}/ws/tasks/{tasks_id}
  • Generate CPU load. Last parameter is duration of load in seconds

    # 5 seconds
    curl -X GET http://{tasks_route}/ws/demo/load/5

About

OpenShift Tasks Example Application for use in various ELTs and ILTs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 79.5%
  • Java 10.9%
  • JavaScript 9.4%
  • TSQL 0.2%