[ARVADOS] updated: 2.1.0-436-g52850b253

Git user git at public.arvados.org
Thu Feb 11 20:47:47 UTC 2021


Summary of changes:
 sdk/go/arvados/api.go     | 1 +
 sdk/go/arvadostest/api.go | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

  discards  59d3907dcb95410d37300e90ddc9a79326109474 (commit)
  discards  0dac35776e9de76550203c2e1ac47cb7c2bda255 (commit)
  discards  656fa186d6f471ceec2f1c996006c31a64a14dba (commit)
       via  52850b25333b56c1d6c8c670e45a23bcb4e1d79e (commit)
       via  ba6fa2a96edde375aab6cbab0fa325c0bc08cb02 (commit)
       via  8b17f2ab7bcfcad4dcf9e3aa2cc203417053b23e (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (59d3907dcb95410d37300e90ddc9a79326109474)
            \
             N -- N -- N (52850b25333b56c1d6c8c670e45a23bcb4e1d79e)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

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 52850b25333b56c1d6c8c670e45a23bcb4e1d79e
Author: Ward Vandewege <ward at curii.com>
Date:   Thu Feb 11 11:34:35 2021 -0500

    17119: fix response type of the shared groups endpoint.
    
    Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward at curii.com>

diff --git a/lib/controller/federation/conn.go b/lib/controller/federation/conn.go
index 31faa04b8..4f1efdb56 100644
--- a/lib/controller/federation/conn.go
+++ b/lib/controller/federation/conn.go
@@ -422,7 +422,7 @@ func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOpt
 	return conn.chooseBackend(options.UUID).GroupContents(ctx, options)
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.GroupList, error) {
 	return conn.chooseBackend(options.UUID).GroupShared(ctx, options)
 }
 
diff --git a/lib/controller/rpc/conn.go b/lib/controller/rpc/conn.go
index 36411adfa..e44a8e2d3 100644
--- a/lib/controller/rpc/conn.go
+++ b/lib/controller/rpc/conn.go
@@ -451,9 +451,9 @@ func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOpt
 	return resp, err
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.GroupList, error) {
 	ep := arvados.EndpointGroupShared
-	var resp arvados.ObjectList
+	var resp arvados.GroupList
 	err := conn.requestAndDecode(ctx, &resp, ep, nil, options)
 	return resp, err
 }
diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go
index d17f8735b..aeeda55d4 100644
--- a/sdk/go/arvados/api.go
+++ b/sdk/go/arvados/api.go
@@ -239,7 +239,7 @@ type API interface {
 	GroupGet(ctx context.Context, options GetOptions) (Group, error)
 	GroupList(ctx context.Context, options ListOptions) (GroupList, error)
 	GroupContents(ctx context.Context, options ContentsOptions) (ObjectList, error)
-	GroupShared(ctx context.Context, options SharedOptions) (ObjectList, error)
+	GroupShared(ctx context.Context, options SharedOptions) (GroupList, error)
 	GroupDelete(ctx context.Context, options DeleteOptions) (Group, error)
 	GroupUntrash(ctx context.Context, options UntrashOptions) (Group, error)
 	SpecimenCreate(ctx context.Context, options CreateOptions) (Specimen, error)
diff --git a/sdk/go/arvadostest/api.go b/sdk/go/arvadostest/api.go
index f4e725f7e..c90933bc1 100644
--- a/sdk/go/arvadostest/api.go
+++ b/sdk/go/arvadostest/api.go
@@ -149,9 +149,9 @@ func (as *APIStub) GroupContents(ctx context.Context, options arvados.ContentsOp
 	as.appendCall(ctx, as.GroupContents, options)
 	return arvados.ObjectList{}, as.Error
 }
-func (as *APIStub) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (as *APIStub) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.GroupList, error) {
 	as.appendCall(ctx, as.GroupShared, options)
-	return arvados.ObjectList{}, as.Error
+	return arvados.GroupList{}, as.Error
 }
 func (as *APIStub) GroupDelete(ctx context.Context, options arvados.DeleteOptions) (arvados.Group, error) {
 	as.appendCall(ctx, as.GroupDelete, options)

commit ba6fa2a96edde375aab6cbab0fa325c0bc08cb02
Author: Ward Vandewege <ward at curii.com>
Date:   Thu Feb 11 10:25:22 2021 -0500

    17119: remove the default project_class again on the group model, it is
           not needed.
    
    Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward at curii.com>

diff --git a/services/api/app/models/arvados_model.rb b/services/api/app/models/arvados_model.rb
index 2c5dee91c..f2bae3a4b 100644
--- a/services/api/app/models/arvados_model.rb
+++ b/services/api/app/models/arvados_model.rb
@@ -889,13 +889,6 @@ class ArvadosModel < ApplicationRecord
     }.merge(attributes['scheduling_parameters'] || {})
   end
 
-  # The 'group_class' for a group should default to 'project'
-  def fill_group_defaults
-    if !attributes.key?("group_class") || attributes['group_class'].nil? || attributes['group_class'].empty?
-      self.group_class = 'project'
-    end
-  end
-
   # ArvadosModel.find_by_uuid needs extra magic to allow it to return
   # an object in any class.
   def self.find_by_uuid uuid
diff --git a/services/api/app/models/group.rb b/services/api/app/models/group.rb
index 519dcd307..870e0d0c4 100644
--- a/services/api/app/models/group.rb
+++ b/services/api/app/models/group.rb
@@ -16,7 +16,6 @@ class Group < ArvadosModel
   # already know how to properly treat them.
   attribute :properties, :jsonbHash, default: {}
 
-  before_validation :fill_group_defaults
   validate :ensure_filesystem_compatible_name
   validate :check_group_class
   before_create :assign_name

commit 8b17f2ab7bcfcad4dcf9e3aa2cc203417053b23e
Author: Ward Vandewege <ward at curii.com>
Date:   Wed Feb 10 16:19:40 2021 -0500

    17119: tweaks for groups endpoints.
    
    Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward at curii.com>

diff --git a/lib/controller/federation/conn.go b/lib/controller/federation/conn.go
index b43e79c3f..31faa04b8 100644
--- a/lib/controller/federation/conn.go
+++ b/lib/controller/federation/conn.go
@@ -418,11 +418,11 @@ func (conn *Conn) GroupList(ctx context.Context, options arvados.ListOptions) (a
 	return conn.generated_GroupList(ctx, options)
 }
 
-func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOptions) (arvados.GroupList, error) {
+func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOptions) (arvados.ObjectList, error) {
 	return conn.chooseBackend(options.UUID).GroupContents(ctx, options)
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.GroupList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
 	return conn.chooseBackend(options.UUID).GroupShared(ctx, options)
 }
 
diff --git a/lib/controller/router/request.go b/lib/controller/router/request.go
index 977a15f3a..eae9e0a8c 100644
--- a/lib/controller/router/request.go
+++ b/lib/controller/router/request.go
@@ -170,6 +170,8 @@ var boolParams = map[string]bool{
 	"redirect_to_new_user":    true,
 	"send_notification_email": true,
 	"bypass_federation":       true,
+	"recursive":               true,
+	"exclude_home_project":    true,
 }
 
 func stringToBool(s string) bool {
diff --git a/lib/controller/router/router.go b/lib/controller/router/router.go
index f5db9426b..3f4a7e30b 100644
--- a/lib/controller/router/router.go
+++ b/lib/controller/router/router.go
@@ -242,13 +242,6 @@ func (rtr *router) addRoutes() {
 				return rtr.backend.GroupUpdate(ctx, *opts.(*arvados.UpdateOptions))
 			},
 		},
-		{
-			arvados.EndpointGroupGet,
-			func() interface{} { return &arvados.GetOptions{} },
-			func(ctx context.Context, opts interface{}) (interface{}, error) {
-				return rtr.backend.GroupGet(ctx, *opts.(*arvados.GetOptions))
-			},
-		},
 		{
 			arvados.EndpointGroupList,
 			func() interface{} { return &arvados.ListOptions{Limit: -1} },
@@ -258,18 +251,32 @@ func (rtr *router) addRoutes() {
 		},
 		{
 			arvados.EndpointGroupContents,
-			func() interface{} { return &arvados.ListOptions{Limit: -1} },
+			func() interface{} { return &arvados.ContentsOptions{Limit: -1} },
+			func(ctx context.Context, opts interface{}) (interface{}, error) {
+				return rtr.backend.GroupContents(ctx, *opts.(*arvados.ContentsOptions))
+			},
+		},
+		{
+			arvados.EndpointGroupContents2,
+			func() interface{} { return &arvados.ContentsOptions{Limit: -1} },
 			func(ctx context.Context, opts interface{}) (interface{}, error) {
 				return rtr.backend.GroupContents(ctx, *opts.(*arvados.ContentsOptions))
 			},
 		},
 		{
 			arvados.EndpointGroupShared,
-			func() interface{} { return &arvados.ListOptions{Limit: -1} },
+			func() interface{} { return &arvados.SharedOptions{Limit: -1} },
 			func(ctx context.Context, opts interface{}) (interface{}, error) {
 				return rtr.backend.GroupShared(ctx, *opts.(*arvados.SharedOptions))
 			},
 		},
+		{
+			arvados.EndpointGroupGet,
+			func() interface{} { return &arvados.GetOptions{} },
+			func(ctx context.Context, opts interface{}) (interface{}, error) {
+				return rtr.backend.GroupGet(ctx, *opts.(*arvados.GetOptions))
+			},
+		},
 		{
 			arvados.EndpointGroupDelete,
 			func() interface{} { return &arvados.DeleteOptions{} },
diff --git a/lib/controller/rpc/conn.go b/lib/controller/rpc/conn.go
index 69bb06c0f..36411adfa 100644
--- a/lib/controller/rpc/conn.go
+++ b/lib/controller/rpc/conn.go
@@ -444,16 +444,16 @@ func (conn *Conn) GroupList(ctx context.Context, options arvados.ListOptions) (a
 	return resp, err
 }
 
-func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOptions) (arvados.GroupList, error) {
+func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOptions) (arvados.ObjectList, error) {
 	ep := arvados.EndpointGroupContents
-	var resp arvados.GroupList
+	var resp arvados.ObjectList
 	err := conn.requestAndDecode(ctx, &resp, ep, nil, options)
 	return resp, err
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.GroupList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
 	ep := arvados.EndpointGroupShared
-	var resp arvados.GroupList
+	var resp arvados.ObjectList
 	err := conn.requestAndDecode(ctx, &resp, ep, nil, options)
 	return resp, err
 }
diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go
index 3331be58d..d17f8735b 100644
--- a/sdk/go/arvados/api.go
+++ b/sdk/go/arvados/api.go
@@ -55,8 +55,9 @@ var (
 	EndpointGroupUpdate                   = APIEndpoint{"PATCH", "arvados/v1/groups/{uuid}", "group"}
 	EndpointGroupGet                      = APIEndpoint{"GET", "arvados/v1/groups/{uuid}", ""}
 	EndpointGroupList                     = APIEndpoint{"GET", "arvados/v1/groups", ""}
-	EndpointGroupContents                 = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/contents", ""}
-	EndpointGroupShared                   = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/shared", ""}
+	EndpointGroupContents                 = APIEndpoint{"GET", "arvados/v1/groups/contents", ""}
+	EndpointGroupContents2                = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/contents", ""}
+	EndpointGroupShared                   = APIEndpoint{"GET", "arvados/v1/groups/shared", ""}
 	EndpointGroupDelete                   = APIEndpoint{"DELETE", "arvados/v1/groups/{uuid}", ""}
 	EndpointGroupUntrash                  = APIEndpoint{"POST", "arvados/v1/groups/{uuid}/untrash", ""}
 	EndpointUserActivate                  = APIEndpoint{"POST", "arvados/v1/users/{uuid}/activate", ""}
@@ -149,6 +150,7 @@ type SharedOptions struct {
 	Filters []Filter `json:"filters"`
 	Limit   int64    `json:"limit"`
 	Offset  int64    `json:"offset"`
+	Count   string   `json:"count"`
 	Order   []string `json:"order"`
 	Include string   `json:"include"`
 }
@@ -236,8 +238,8 @@ type API interface {
 	GroupUpdate(ctx context.Context, options UpdateOptions) (Group, error)
 	GroupGet(ctx context.Context, options GetOptions) (Group, error)
 	GroupList(ctx context.Context, options ListOptions) (GroupList, error)
-	GroupContents(ctx context.Context, options ContentsOptions) (GroupList, error)
-	GroupShared(ctx context.Context, options SharedOptions) (GroupList, error)
+	GroupContents(ctx context.Context, options ContentsOptions) (ObjectList, error)
+	GroupShared(ctx context.Context, options SharedOptions) (ObjectList, error)
 	GroupDelete(ctx context.Context, options DeleteOptions) (Group, error)
 	GroupUntrash(ctx context.Context, options UntrashOptions) (Group, error)
 	SpecimenCreate(ctx context.Context, options CreateOptions) (Specimen, error)
diff --git a/sdk/go/arvados/group.go b/sdk/go/arvados/group.go
index 26bd6e187..538098815 100644
--- a/sdk/go/arvados/group.go
+++ b/sdk/go/arvados/group.go
@@ -36,6 +36,14 @@ type GroupList struct {
 	Limit          int     `json:"limit"`
 }
 
+// ObjectList is an arvados#objectList resource.
+type ObjectList struct {
+	Items          []interface{} `json:"items"`
+	ItemsAvailable int           `json:"items_available"`
+	Offset         int           `json:"offset"`
+	Limit          int           `json:"limit"`
+}
+
 func (g Group) resourceName() string {
 	return "group"
 }
diff --git a/sdk/go/arvadostest/api.go b/sdk/go/arvadostest/api.go
index fe8c32466..f4e725f7e 100644
--- a/sdk/go/arvadostest/api.go
+++ b/sdk/go/arvadostest/api.go
@@ -145,18 +145,22 @@ func (as *APIStub) GroupList(ctx context.Context, options arvados.ListOptions) (
 	as.appendCall(ctx, as.GroupList, options)
 	return arvados.GroupList{}, as.Error
 }
-func (as *APIStub) GroupContents(ctx context.Context, options arvados.GetOptions) (map[string]interface{}, error) {
+func (as *APIStub) GroupContents(ctx context.Context, options arvados.ContentsOptions) (arvados.ObjectList, error) {
 	as.appendCall(ctx, as.GroupContents, options)
-	return nil, as.Error
+	return arvados.ObjectList{}, as.Error
 }
-func (as *APIStub) GroupShared(ctx context.Context, options arvados.GetOptions) (map[string]interface{}, error) {
+func (as *APIStub) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
 	as.appendCall(ctx, as.GroupShared, options)
-	return nil, as.Error
+	return arvados.ObjectList{}, as.Error
 }
 func (as *APIStub) GroupDelete(ctx context.Context, options arvados.DeleteOptions) (arvados.Group, error) {
 	as.appendCall(ctx, as.GroupDelete, options)
 	return arvados.Group{}, as.Error
 }
+func (as *APIStub) GroupUntrash(ctx context.Context, options arvados.UntrashOptions) (arvados.Group, error) {
+	as.appendCall(ctx, as.GroupUntrash, options)
+	return arvados.Group{}, as.Error
+}
 func (as *APIStub) SpecimenCreate(ctx context.Context, options arvados.CreateOptions) (arvados.Specimen, error) {
 	as.appendCall(ctx, as.SpecimenCreate, options)
 	return arvados.Specimen{}, as.Error

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list