X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/1441208182ced30e28f05611fbfa51674570dd1e..a3d2b8e1de5b8c785846ddc57ae9a4c02bc51adc:/services/api/app/controllers/arvados/v1/schema_controller.rb diff --git a/services/api/app/controllers/arvados/v1/schema_controller.rb b/services/api/app/controllers/arvados/v1/schema_controller.rb index c1d4b74d6d..0300b75075 100644 --- a/services/api/app/controllers/arvados/v1/schema_controller.rb +++ b/services/api/app/controllers/arvados/v1/schema_controller.rb @@ -37,7 +37,7 @@ class Arvados::V1::SchemaController < ApplicationController # format is YYYYMMDD, must be fixed width (needs to be lexically # sortable), updated manually, may be used by clients to # determine availability of API server features. - revision: "20210628", + revision: "20220510", source_version: AppVersion.hash, sourceVersion: AppVersion.hash, # source_version should be deprecated in the future packageVersion: AppVersion.package_version, @@ -406,6 +406,20 @@ class Arvados::V1::SchemaController < ApplicationController end end + # The 'replace_files' option is implemented in lib/controller, + # not Rails -- we just need to add it here so discovery-aware + # clients know how to validate it. + [:create, :update].each do |action| + discovery[:resources]['collections'][:methods][action][:parameters]['replace_files'] = { + type: 'object', + description: 'Files and directories to initialize/replace with content from other collections.', + required: false, + location: 'query', + properties: {}, + additionalProperties: {type: 'string'}, + } + end + discovery[:resources]['configs'] = { methods: { get: { @@ -427,6 +441,48 @@ class Arvados::V1::SchemaController < ApplicationController } } + discovery[:resources]['vocabularies'] = { + methods: { + get: { + id: "arvados.vocabularies.get", + path: "vocabulary", + httpMethod: "GET", + description: "Get vocabulary definition", + parameters: { + }, + parameterOrder: [ + ], + response: { + }, + scopes: [ + "https://api.arvados.org/auth/arvados", + "https://api.arvados.org/auth/arvados.readonly" + ] + }, + } + } + + discovery[:resources]['sys'] = { + methods: { + get: { + id: "arvados.sys.trash_sweep", + path: "sys/trash_sweep", + httpMethod: "POST", + description: "apply scheduled trash and delete operations", + parameters: { + }, + parameterOrder: [ + ], + response: { + }, + scopes: [ + "https://api.arvados.org/auth/arvados", + "https://api.arvados.org/auth/arvados.readonly" + ] + }, + } + } + Rails.configuration.API.DisabledAPIs.each do |method, _| ctrl, action = method.to_s.split('.', 2) discovery[:resources][ctrl][:methods].delete(action.to_sym)