Uploaded image for project: 'Okapi'
  1. Okapi
  2. OKAPI-969

API for Okapi timer task management

    XMLWordPrintable

Details

    • CP: sprint 110, CP: sprint 111
    • 5
    • Core: Platform

    Description

      Currently, the only way to "disable" an Okapi timer task or to change its run interval is to POST a modified module descriptor for the affected module with an updated _timer interface, POST a deployment descriptor to route the requests to the right module instance, and enable the modified module for the tenant (with ?invoke=false to avoid calling the _tenant interface). This is a little bit error-prone, and makes upgrades tricky, as well. It would be very convenient to have an API for managing tasks that are registered via the Okapi _timer system interface.

      The API would probably need to define a new descriptor (a "timer descriptor"), and might be defined thus:

      GET /_/proxy/tenants/{tenantId}/timers: get a list of all registered timer descriptors for the tenant
      GET /_/proxy/tenants/{tenantId}/timers/{id}: get a registered timer descriptor
      PUT /_/proxy/tenants/{tenantId}/timers/{id}: put an updated timer descriptor

      One of the fields in the timer descriptor might be something like status with an enum of ["enabled","disabled"] to allow for temporarily disabling a timer.

      I leave it up for discussion if the API should allow POST and DELETE. Also up for discussion is what should happen on module upgrade.

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                adam Adam Dickmeiss (Inactive)
                wayne Wayne Schneider
                Votes:
                3 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases