Class AppDetailsController

java.lang.Object
org.apache.hadoop.yarn.appcatalog.controller.AppDetailsController

@Path("/app_details") public class AppDetailsController extends Object
Application catalog REST API for displaying application details.
  • Constructor Details

    • AppDetailsController

      public AppDetailsController()
  • Method Details

    • getDetails

      @Path("config/{id}") @GET @Produces("application/json") public AppEntry getDetails(@PathParam("id") String id)
      List detail information about the deployed application.
      
       @apiGroup AppDetailController
       @apiName getDetails
       @api {get} /app_details/config/{id}  Check config of application instance.
       @apiParam {String} id Application ID to fetch configuration.
       @apiSuccess {Object} AppEntry Application configuration.
       @apiSuccessExample {json} Success-Response:
           HTTP/1.1 200 OK
           {
             "id":"howita_man",
              "name":"howita_man",
              "app":"Jenkins-ci.org/Jenkins",
              "yarnfile":{
                 "name":"howita_man",
                 "lifetime":3600,
                 "containers":[
                 ],
                 "components":[
                    {
                       "name":"jenkins",
                       "dependencies":[
                       ],
                       "artifact":{
                          "id":"eyang-1.openstacklocal:5000/jenkins:latest",
                          "type":"DOCKER"
                       },
                       "launch_command":"",
                       "resource":{
                          "uri":null,
                          "profile":null,
                          "cpus":1,
                          "memory":"2048"
                       },
                       "number_of_containers":1,
                       "run_privileged_container":false,
                       "configuration":{
                          "properties":{
                          },
                          "env":{
                          },
                          "files":[
                          ]
                       },
                       "quicklinks":[
                       ],
                       "containers":[
                       ]
                    }
                 ],
                 "configuration":{
                    "properties":{
                    },
                    "env":{
                    },
                    "files":[
                    ]
                 },
                 "quicklinks":{
                    "Jenkins UI":"http://jenkins.howita_man.yarn.${DOMAIN}:8080/"
                 }
              }
           }
       
      Parameters:
      id - Application ID
      Returns:
      application entry
    • getStatus

      @Path("status/{id}") @GET @Produces("application/json") public AppEntry getStatus(@PathParam("id") String id)
      Check application status.
      
       @apiGroup AppDetailController
       @apiName getStatus
       @api {get} /app_details/status/{id}  Check status of application instance.
       @apiParam {String} id Application ID to check.
       @apiSuccess {Object} text Give status
       @apiSuccessExample {json} Success-Response:
           HTTP/1.1 200 OK
           {
             "id":"howita_man",
              "name":"howita_man",
              "app":"Jenkins-ci.org/Jenkins",
              "yarnfile":{
                 "name":"howita_man",
                 "lifetime":3099,
                 "containers":[
                 ],
                 "id":"application_1503694240849_0043",
                 "components":[
                    {
                       "name":"jenkins",
                       "dependencies":[
                       ],
                       "artifact":{
                          "id":"eyang-1.openstacklocal:5000/jenkins:latest",
                          "type":"DOCKER"
                       },
                       "launch_command":"",
                       "resource":{
                          "uri":null,
                          "profile":null,
                          "cpus":1,
                          "memory":"2048"
                       },
                       "number_of_containers":1,
                       "run_privileged_container":false,
                       "configuration":{
                          "properties":{
                          },
                          "env":{
                          },
                          "files":[
                          ]
                       },
                       "quicklinks":[
                       ],
                       "containers":[
                          {
                             "id":"container_1503694240849_0043_01_000002",
                             "launch_time":1504630535403,
                             "bare_host":"eyang-4.openstacklocal",
                             "state":"READY",
                             "component_name":"jenkins-0"
                          }
                       ]
                    }
                 ],
                 "configuration":{
                    "properties":{
                    },
                    "env":{
                    },
                    "files":[
                    ]
                 },
                 "quicklinks":{
                    "Jenkins UI":"http://jenkins.howita_man.yarn.${DOMAIN}:8080/"
                 }
              }
           }
       
      Parameters:
      id - Application ID
      Returns:
      application entry
    • stopApp

      @Path("stop/{id}") @POST @Produces("application/json") public javax.ws.rs.core.Response stopApp(@PathParam("id") String id)
      Stop an application.
      
       @apiGroup AppDetailController
       @apiName stopApp
       @api {post} /app_details/stop/{id}  Stop one instance of application.
       @apiParam {String} id Application ID to stop.
       @apiSuccess {String} text Give deployment status
       @apiError BadRequest Requested application does not stop.
       
      Parameters:
      id - Application ID
      Returns:
      Web response code
    • restartApp

      @Path("restart/{id}") @POST @Produces("application/json") public javax.ws.rs.core.Response restartApp(@PathParam("id") String id)
      Restart an application.
      
       @apiGroup AppDetailController
       @apiName restartApp
       @api {post} /app_details/restart/{id}  Restart one instance of application.
       @apiParam {String} id Application ID to restart.
       @apiSuccess {String} text Give deployment status
       @apiError BadRequest Requested application does not restart.
       
      Parameters:
      id - Application ID
      Returns:
      Web response code
    • upgradeApp

      @Path("upgrade/{id}") @PUT @Consumes("application/json") @Produces("application/json") public javax.ws.rs.core.Response upgradeApp(@PathParam("id") String id, org.apache.hadoop.yarn.service.api.records.Service app)
      Upgrade an application.
      
       @apiGroup AppDetailController
       @apiName upgradeApp
       @api {put} /app_details/upgrade/{id} Upgrade one instance of application.
       @apiParam {String} id Application Name to upgrade.
       @apiSuccess {String} text
       @apiError BadRequest Requested application does not upgrade.
       
      Returns:
      Web response code