Feature #10865

Updated by Ward Vandewege over 7 years ago

h3. Background 

 Currently install docs say the jobs API (crunch1) is deprecated, but the installation procedure results in a system that tries to run crunch1 jobs. 

 h3. Requirements 

 A site that is already using the Jobs API should have the Jobs API enabled by default (but the sysadmin should be able to disable it). 

 A new install should have the Jobs API disabled by default (but the sysadmin should be able to enable it). 

 h3. Implementation 

 Add a config entry: 

   # Enable the legacy Jobs API. 
   # auto -- (default) enable the Jobs API only if it has been used before 
   #           (i.e., there are job records in the database) 
   # true -- enable the Jobs API despite lack of existing records. 
   # false -- disable the Jobs API despite presence of existing records. 
   enable_legacy_jobs_api: auto 

 If the legacy jobs API is disabled according to this config knob, API server should automatically disable all of the Jobs APIs, i.e., implicitly add these to Rails.configuration.disable_api_methods: 

 [jobs.create, pipeline_instances.create, pipeline_templates.create, jobs.get, pipeline_instances.get, pipeline_templates.get, jobs.list, pipeline_instances.list, pipeline_templates.list, jobs.index, pipeline_instances.index, pipeline_templates.index, jobs.update, pipeline_instances.update, pipeline_templates.update, jobs.queue, jobs.queue_size, job_tasks.create, job_tasks.get, job_tasks.list, job_tasks.index, job_tasks.update,,,,,] 

 Update the install documentation: 

 Add the enable_legacy_jobs_api option to the "Configure the API server" section on