[ARVADOS] updated: d9f8f46ccd5a418dcf7b5f43aeb59cd2d9d424ba
git at public.curoverse.com
git at public.curoverse.com
Thu Dec 3 13:28:52 EST 2015
Summary of changes:
.../arvados/v1/container_requests_controller.rb | 4 +++
.../arvados/v1/containers_controller.rb | 5 ++++
services/api/app/models/container.rb | 29 +++++++++++++++++-----
services/api/app/models/container_request.rb | 26 +++++++++++++++----
4 files changed, 53 insertions(+), 11 deletions(-)
via d9f8f46ccd5a418dcf7b5f43aeb59cd2d9d424ba (commit)
from 2858d8075d2178fa252af4e585687855e3b30dc2 (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 d9f8f46ccd5a418dcf7b5f43aeb59cd2d9d424ba
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date: Thu Dec 3 13:07:52 2015 -0500
Declare serialize / accept json fields, start working on states
diff --git a/services/api/app/controllers/arvados/v1/container_requests_controller.rb b/services/api/app/controllers/arvados/v1/container_requests_controller.rb
index a92afe4..fe4696e 100644
--- a/services/api/app/controllers/arvados/v1/container_requests_controller.rb
+++ b/services/api/app/controllers/arvados/v1/container_requests_controller.rb
@@ -1,2 +1,6 @@
class Arvados::V1::ContainerRequestsController < ApplicationController
+ accept_attribute_as_json :environment, Hash
+ accept_attribute_as_json :mounts, Hash
+ accept_attribute_as_json :runtime_constraints, Hash
+ accept_attribute_as_json :command, Array
end
diff --git a/services/api/app/controllers/arvados/v1/containers_controller.rb b/services/api/app/controllers/arvados/v1/containers_controller.rb
index 67ec5b9..04a5ed0 100644
--- a/services/api/app/controllers/arvados/v1/containers_controller.rb
+++ b/services/api/app/controllers/arvados/v1/containers_controller.rb
@@ -1,2 +1,7 @@
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 :command, Array
+
end
diff --git a/services/api/app/models/container.rb b/services/api/app/models/container.rb
index 2e8bfff..66b33cd 100644
--- a/services/api/app/models/container.rb
+++ b/services/api/app/models/container.rb
@@ -3,6 +3,16 @@ class Container < ArvadosModel
include KindAndEtag
include CommonApiTemplate
+ serialize :properties, Hash
+ serialize :environment, Hash
+ serialize :mounts, Hash
+ serialize :runtime_constraints, Hash
+ serialize :command, Array
+
+ has_many :container_requests, :foreign_key => :container_uuid, :class_name => 'ContainerRequest', :primary_key => :uuid
+
+ before_create :set_state_before_save
+
api_accessible :user, extend: :common do |t|
t.add :command
t.add :container_image
@@ -21,11 +31,18 @@ class Container < ArvadosModel
t.add :uuid
end
- serialize :properties, Hash
- serialize :environment, Hash
- serialize :mounts, Hash
- serialize :runtime_constraints, Hash
- serialize :command, Array
+ # Supported states for a container
+ States =
+ [
+ (Queued = 'Queued'),
+ (Running = 'Running'),
+ (Complete = 'Complete'),
+ (Cancelled = 'Cancelled')
+ ]
+
+ def set_state_before_save
+ self.state ||= Queued
+ end
+
- has_many :container_requests, :foreign_key => :container_uuid, :class_name => 'ContainerRequest', :primary_key => :uuid
end
diff --git a/services/api/app/models/container_request.rb b/services/api/app/models/container_request.rb
index 352e414..9356a70 100644
--- a/services/api/app/models/container_request.rb
+++ b/services/api/app/models/container_request.rb
@@ -3,6 +3,14 @@ class ContainerRequest < ArvadosModel
include KindAndEtag
include CommonApiTemplate
+ serialize :properties, Hash
+ serialize :environment, Hash
+ serialize :mounts, Hash
+ serialize :runtime_constraints, Hash
+ serialize :command, Array
+
+ before_create :set_state_before_save
+
api_accessible :user, extend: :common do |t|
t.add :command
t.add :container_count_max
@@ -23,10 +31,18 @@ class ContainerRequest < ArvadosModel
t.add :state
end
- serialize :properties, Hash
- serialize :environment, Hash
- serialize :mounts, Hash
- serialize :runtime_constraints, Hash
- serialize :command, Array
+ # Supported states for a container request
+ States =
+ [
+ (Uncommitted = 'Uncommitted'),
+ (Committed = 'Committed'),
+ (Final = 'Final'),
+ ]
+
+ def set_state_before_save
+ self.state ||= Uncommitted
+ end
+
+
end
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list