[ARVADOS] updated: 1.2.0-180-g9af5ea015
Git user
git at public.curoverse.com
Mon Oct 15 16:21:17 EDT 2018
Summary of changes:
services/api/app/models/container.rb | 6 +++-
services/api/test/unit/container_request_test.rb | 43 ++++++++++++++++++++++++
2 files changed, 48 insertions(+), 1 deletion(-)
via 9af5ea015328af0a423bd4e7675ee7031695d1be (commit)
from 14aa2b8e0f662604248a45ab6b4db3e92e49053a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
commit 9af5ea015328af0a423bd4e7675ee7031695d1be
Author: Peter Amstutz <pamstutz at veritasgenetics.com>
Date: Mon Oct 15 16:20:39 2018 -0400
14260: Bugfix for runtime_token/secret_mounts and retries
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz at veritasgenetics.com>
diff --git a/services/api/app/models/container.rb b/services/api/app/models/container.rb
index 20158cad3..4c7ba51e1 100644
--- a/services/api/app/models/container.rb
+++ b/services/api/app/models/container.rb
@@ -648,7 +648,11 @@ class Container < ArvadosModel
container_image: self.container_image,
mounts: self.mounts,
runtime_constraints: self.runtime_constraints,
- scheduling_parameters: self.scheduling_parameters
+ scheduling_parameters: self.scheduling_parameters,
+ secret_mounts: self.secret_mounts_was,
+ runtime_token: self.runtime_token_was,
+ runtime_user_uuid: self.runtime_user_uuid,
+ runtime_auth_scopes: self.runtime_auth_scopes
}
c = Container.create! c_attrs
retryable_requests.each do |cr|
diff --git a/services/api/test/unit/container_request_test.rb b/services/api/test/unit/container_request_test.rb
index c7807826f..8ff216e28 100644
--- a/services/api/test/unit/container_request_test.rb
+++ b/services/api/test/unit/container_request_test.rb
@@ -677,6 +677,49 @@ class ContainerRequestTest < ActiveSupport::TestCase
assert_not_equal cr2.container_uuid, cr.container_uuid
end
+ test "Retry on container cancelled with runtime_token" do
+ set_user_from_auth :spectator
+ spec = api_client_authorizations(:active)
+ cr = create_minimal_req!(priority: 1, state: "Committed",
+ runtime_token: spec.token,
+ container_count_max: 2)
+ prev_container_uuid = cr.container_uuid
+
+ c = act_as_system_user do
+ c = Container.find_by_uuid(cr.container_uuid)
+ assert_equal spec.token, c.runtime_token
+ c.update_attributes!(state: Container::Locked)
+ c.update_attributes!(state: Container::Running)
+ c
+ end
+
+ cr.reload
+ assert_equal "Committed", cr.state
+ assert_equal prev_container_uuid, cr.container_uuid
+ prev_container_uuid = cr.container_uuid
+
+ act_as_system_user do
+ c.update_attributes!(state: Container::Cancelled)
+ end
+
+ cr.reload
+ assert_equal "Committed", cr.state
+ assert_not_equal prev_container_uuid, cr.container_uuid
+ prev_container_uuid = cr.container_uuid
+
+ c = act_as_system_user do
+ c = Container.find_by_uuid(cr.container_uuid)
+ assert_equal spec.token, c.runtime_token
+ c.update_attributes!(state: Container::Cancelled)
+ c
+ end
+
+ cr.reload
+ assert_equal "Final", cr.state
+ assert_equal prev_container_uuid, cr.container_uuid
+
+ end
+
test "Output collection name setting using output_name with name collision resolution" do
set_user_from_auth :active
output_name = 'unimaginative name'
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list