X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/2887fa9c26cfd4ae6379e2cf4e6c5d50aaa0dd11..efeca068c2c25ee075ee8907a1937a5d4119775c:/services/api/lib/enable_jobs_api.rb diff --git a/services/api/lib/enable_jobs_api.rb b/services/api/lib/enable_jobs_api.rb index c909ae9227..cef76f08a5 100644 --- a/services/api/lib/enable_jobs_api.rb +++ b/services/api/lib/enable_jobs_api.rb @@ -2,38 +2,52 @@ # # SPDX-License-Identifier: AGPL-3.0 -Disable_jobs_api_method_list = ["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", - "jobs.show", - "pipeline_instances.show", - "pipeline_templates.show", - "jobs.show", - "job_tasks.show"] +Disable_update_jobs_api_method_list = ConfigLoader.to_OrderedOptions({ + "jobs.create"=>{}, + "pipeline_instances.create"=>{}, + "pipeline_templates.create"=>{}, + "jobs.update"=>{}, + "pipeline_instances.update"=>{}, + "pipeline_templates.update"=>{}, + "job_tasks.create"=>{}, + "job_tasks.update"=>{} + }) + +Disable_jobs_api_method_list = ConfigLoader.to_OrderedOptions({ + "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"=>{}, + "jobs.show"=>{}, + "pipeline_instances.show"=>{}, + "pipeline_templates.show"=>{}, + "job_tasks.show"=>{}}) def check_enable_legacy_jobs_api + # Create/update is permanently disabled (legacy functionality has been removed) + Rails.configuration.API.DisabledAPIs.merge! Disable_update_jobs_api_method_list + if Rails.configuration.Containers.JobsAPI.Enable == "false" || (Rails.configuration.Containers.JobsAPI.Enable == "auto" && Job.count == 0) - Rails.configuration.API.DisabledAPIs += Disable_jobs_api_method_list + Rails.configuration.API.DisabledAPIs.merge! Disable_jobs_api_method_list end end