X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/b3f88934721fc97973b40786cae97e55e84b31d5..8d73164d5ca50e7af1b3752b4251eaf9f11a9fc8:/services/api/app/controllers/arvados/v1/containers_controller.rb diff --git a/services/api/app/controllers/arvados/v1/containers_controller.rb b/services/api/app/controllers/arvados/v1/containers_controller.rb index 3f11b4f5dd..65d8385ad5 100644 --- a/services/api/app/controllers/arvados/v1/containers_controller.rb +++ b/services/api/app/controllers/arvados/v1/containers_controller.rb @@ -1,7 +1,12 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class Arvados::V1::ContainersController < ApplicationController accept_attribute_as_json :environment, Hash accept_attribute_as_json :mounts, Hash accept_attribute_as_json :runtime_constraints, Hash + accept_attribute_as_json :runtime_status, Hash accept_attribute_as_json :command, Array accept_attribute_as_json :scheduling_parameters, Hash @@ -16,10 +21,9 @@ class Arvados::V1::ContainersController < ApplicationController show end - # Updates use row locking to resolve races between multiple - # dispatchers trying to lock the same container. def update @object.with_lock do + @object.reload super end end @@ -56,4 +60,14 @@ class Arvados::V1::ContainersController < ApplicationController end end end + + def secret_mounts + if @object && + @object.auth_uuid && + @object.auth_uuid == Thread.current[:api_client_authorization].uuid + send_json({"secret_mounts" => @object.secret_mounts}) + else + send_error("Token is not associated with this container.", status: 403) + end + end end