Merge pull request #6303 from owncloud/update-reva

[full-ci] update reva
This commit is contained in:
Michael Barz
2023-05-15 17:10:02 +02:00
committed by GitHub
7 changed files with 35 additions and 50 deletions

2
go.mod
View File

@@ -13,7 +13,7 @@ require (
github.com/coreos/go-oidc v2.2.1+incompatible
github.com/coreos/go-oidc/v3 v3.4.0
github.com/cs3org/go-cs3apis v0.0.0-20221012090518-ef2996678965
github.com/cs3org/reva/v2 v2.13.3-0.20230515075524-e00c55c0a4d3
github.com/cs3org/reva/v2 v2.13.3-0.20230515105000-30125f104ba1
github.com/disintegration/imaging v1.6.2
github.com/dutchcoders/go-clamd v0.0.0-20170520113014-b970184f4d9e
github.com/egirna/icap-client v0.1.1

6
go.sum
View File

@@ -626,8 +626,8 @@ github.com/crewjam/httperr v0.2.0 h1:b2BfXR8U3AlIHwNeFFvZ+BV1LFvKLlzMjzaTnZMybNo
github.com/crewjam/httperr v0.2.0/go.mod h1:Jlz+Sg/XqBQhyMjdDiC+GNNRzZTD7x39Gu3pglZ5oH4=
github.com/crewjam/saml v0.4.13 h1:TYHggH/hwP7eArqiXSJUvtOPNzQDyQ7vwmwEqlFWhMc=
github.com/crewjam/saml v0.4.13/go.mod h1:igEejV+fihTIlHXYP8zOec3V5A8y3lws5bQBFsTm4gA=
github.com/cs3org/reva/v2 v2.13.3-0.20230515075524-e00c55c0a4d3 h1:6aAwxGKm0PvQDHC0aV/Fq8/JiMfEKAbA2vPOOwfABVs=
github.com/cs3org/reva/v2 v2.13.3-0.20230515075524-e00c55c0a4d3/go.mod h1:MoymB39kU/myG7LFkaCwqtoXQHct+/8uoZAvJEmNi+I=
github.com/cs3org/reva/v2 v2.13.3-0.20230515105000-30125f104ba1 h1:M3+4wZvZolLs90wCjkJYslakQ3JAp/zs16mOwxvieJQ=
github.com/cs3org/reva/v2 v2.13.3-0.20230515105000-30125f104ba1/go.mod h1:MoymB39kU/myG7LFkaCwqtoXQHct+/8uoZAvJEmNi+I=
github.com/cubewise-code/go-mime v0.0.0-20200519001935-8c5762b177d8 h1:Z9lwXumT5ACSmJ7WGnFl+OMLLjpz5uR2fyz7dC255FI=
github.com/cubewise-code/go-mime v0.0.0-20200519001935-8c5762b177d8/go.mod h1:4abs/jPXcmJzYoYGF91JF9Uq9s/KL5n1jvFDix8KcqY=
github.com/cyberdelia/templates v0.0.0-20141128023046-ca7fffd4298c/go.mod h1:GyV+0YP4qX0UQ7r2MoYZ+AvYDp12OF5yg4q8rGnyNh4=
@@ -1267,6 +1267,8 @@ github.com/maxymania/go-system v0.0.0-20170110133659-647cc364bf0b h1:Q53idHrTuQD
github.com/maxymania/go-system v0.0.0-20170110133659-647cc364bf0b/go.mod h1:KirJrATYGbTyUwVR26xIkaipRqRcMRXBf8N5dacvGus=
github.com/mendsley/gojwk v0.0.0-20141217222730-4d5ec6e58103 h1:Z/i1e+gTZrmcGeZyWckaLfucYG6KYOXLWo4co8pZYNY=
github.com/mendsley/gojwk v0.0.0-20141217222730-4d5ec6e58103/go.mod h1:o9YPB5aGP8ob35Vy6+vyq3P3bWe7NQWzf+JLiXCiMaE=
github.com/micbar/reva/v2 v2.0.0-20230513191305-7e887c838c63 h1:dyZ5M/M1x6NGkMiagInLclbWPWCBycJpc9COtzDTOyM=
github.com/micbar/reva/v2 v2.0.0-20230513191305-7e887c838c63/go.mod h1:MoymB39kU/myG7LFkaCwqtoXQHct+/8uoZAvJEmNi+I=
github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso=
github.com/miekg/dns v1.1.40/go.mod h1:KNUDUusw/aVsxyTYZM1oqvCicbwhgbNgztCETuNZ7xM=

View File

@@ -1,4 +1,4 @@
@api
@api
Feature: Propfind test
As a user
I want to check the PROPFIND response
@@ -19,12 +19,12 @@ Feature: Propfind test
When user "Alice" sends PROPFIND request to space "new-space" using the WebDAV API
Then the HTTP status code should be "207"
And the "PROPFIND" response should contain a space "new-space" with these key and value pairs:
| key | value |
| oc:fileid | UUIDof:new-space |
| oc:name | new-space |
| oc:permissions | SRDNVCKZ |
| oc:privatelink | |
| oc:size | 12 |
| key | value |
| oc:fileid | UUIDof:new-space |
| oc:name | new-space |
| oc:permissions | RDNVCKZ |
| oc:privatelink | |
| oc:size | 12 |
Scenario Outline: space member with a different role checks the PROPFIND request of a space
@@ -43,6 +43,6 @@ Feature: Propfind test
| oc:size | 12 |
Examples:
| role | oc_permission |
| manager | SRDNVCKZ |
| editor | SDNVCK |
| viewer | S |
| manager | RDNVCKZ |
| editor | DNVCK |
| viewer | |

View File

@@ -3110,7 +3110,6 @@ class SpacesContext implements Context {
foreach ($table->getHash() as $row) {
$findItem = $row['key'];
$responseValue = $xmlRes->xpath("//d:response/d:propstat/d:prop/$findItem")[0]->__toString();
Assert::assertNotEmpty($responseValue, "response doesn't contain $findItem or empty");
$value = str_replace('UUIDof:', '', $row['value']);
switch ($findItem) {
case "oc:fileid":

View File

@@ -282,10 +282,7 @@ func (s *service) InitiateFileDownload(ctx context.Context, req *provider.Initia
protocol := &provider.FileDownloadProtocol{Expose: s.conf.ExposeDataServer}
if utils.IsRelativeReference(req.Ref) {
// fill in storage provider id if it is missing
if req.GetRef().GetResourceId().GetStorageId() == "" {
req.GetRef().GetResourceId().StorageId = s.conf.MountID
}
s.addMissingStorageProviderID(req.GetRef().GetResourceId(), nil)
protocol.Protocol = "spaces"
u.Path = path.Join(u.Path, "spaces", storagespace.FormatResourceID(*req.Ref.ResourceId), req.Ref.Path)
} else {
@@ -517,9 +514,7 @@ func (s *service) CreateStorageSpace(ctx context.Context, req *provider.CreateSt
}, nil
}
if resp.StorageSpace != nil {
s.addMissingStorageProviderID(resp.StorageSpace.Root, resp.StorageSpace.Id)
}
s.addMissingStorageProviderID(resp.GetStorageSpace().GetRoot(), resp.GetStorageSpace().GetId())
return resp, nil
}
@@ -563,7 +558,7 @@ func (s *service) ListStorageSpaces(ctx context.Context, req *provider.ListStora
continue
}
s.addMissingStorageProviderID(sp.Root, sp.Id)
s.addMissingStorageProviderID(sp.GetRoot(), sp.GetId())
}
return &provider.ListStorageSpacesResponse{
@@ -582,9 +577,7 @@ func (s *service) UpdateStorageSpace(ctx context.Context, req *provider.UpdateSt
Msg("failed to update storage space")
return nil, err
}
if res.StorageSpace != nil {
s.addMissingStorageProviderID(res.StorageSpace.Root, res.StorageSpace.Id)
}
s.addMissingStorageProviderID(res.GetStorageSpace().GetRoot(), res.GetStorageSpace().GetId())
return res, nil
}
@@ -744,15 +737,9 @@ func (s *service) Stat(ctx context.Context, req *provider.StatRequest) (*provide
}, nil
}
// The storage driver might set the mount ID by itself, in which case skip this step
if md.Id.GetStorageId() == "" {
md.Id.StorageId = s.conf.MountID
}
// The storage driver might set the mount ID by itself, in which case skip this step
if md.ParentId != nil && md.ParentId.GetStorageId() == "" {
md.ParentId.StorageId = s.conf.MountID
}
s.addMissingStorageProviderID(md.GetId(), nil)
s.addMissingStorageProviderID(md.GetParentId(), nil)
s.addMissingStorageProviderID(md.GetSpace().GetRoot(), nil)
return &provider.StatResponse{
Status: status.NewOK(ctx),
@@ -791,7 +778,9 @@ func (s *service) ListContainerStream(req *provider.ListContainerStreamRequest,
}
for _, md := range mds {
s.addMissingStorageProviderID(md.Id, nil)
s.addMissingStorageProviderID(md.GetId(), nil)
s.addMissingStorageProviderID(md.GetParentId(), nil)
s.addMissingStorageProviderID(md.GetSpace().GetRoot(), nil)
res := &provider.ListContainerStreamResponse{
Info: md,
Status: status.NewOK(ctx),
@@ -816,10 +805,9 @@ func (s *service) ListContainer(ctx context.Context, req *provider.ListContainer
}
for _, i := range res.Infos {
s.addMissingStorageProviderID(i.Id, nil)
if i.ParentId != nil {
s.addMissingStorageProviderID(i.ParentId, nil)
}
s.addMissingStorageProviderID(i.GetId(), nil)
s.addMissingStorageProviderID(i.GetParentId(), nil)
s.addMissingStorageProviderID(i.GetSpace().GetRoot(), nil)
}
return res, nil
}
@@ -879,9 +867,7 @@ func (s *service) ListRecycleStream(req *provider.ListRecycleStreamRequest, ss p
// TODO(labkode): CRITICAL: fill recycle info with storage provider.
for _, item := range items {
if item.Ref != nil && item.Ref.ResourceId != nil {
s.addMissingStorageProviderID(item.Ref.GetResourceId(), nil)
}
s.addMissingStorageProviderID(item.GetRef().GetResourceId(), nil)
res := &provider.ListRecycleStreamResponse{
RecycleItem: item,
Status: status.NewOK(ctx),
@@ -920,9 +906,7 @@ func (s *service) ListRecycle(ctx context.Context, req *provider.ListRecycleRequ
}
for _, i := range items {
if i.Ref != nil && i.Ref.ResourceId != nil {
s.addMissingStorageProviderID(i.Ref.GetResourceId(), nil)
}
s.addMissingStorageProviderID(i.GetRef().GetResourceId(), nil)
}
res := &provider.ListRecycleResponse{
Status: status.NewOK(ctx),
@@ -1220,7 +1204,7 @@ func (s *service) GetQuota(ctx context.Context, req *provider.GetQuotaRequest) (
func (s *service) addMissingStorageProviderID(resourceID *provider.ResourceId, spaceID *provider.StorageSpaceId) {
// The storage driver might set the mount ID by itself, in which case skip this step
if resourceID.GetStorageId() == "" {
if resourceID != nil && resourceID.GetStorageId() == "" {
resourceID.StorageId = s.conf.MountID
if spaceID != nil {
rid, _ := storagespace.ParseID(spaceID.GetOpaqueId())

View File

@@ -897,7 +897,7 @@ func (fs *Decomposedfs) storageSpaceFromNode(ctx context.Context, n *node.Node,
&provider.Reference{
ResourceId: &provider.ResourceId{
SpaceId: n.SpaceRoot.SpaceID,
OpaqueId: n.ID},
OpaqueId: n.SpaceRoot.ID},
},
)
if err != nil {
@@ -923,7 +923,7 @@ func (fs *Decomposedfs) storageSpaceFromNode(ctx context.Context, n *node.Node,
Id: &provider.StorageSpaceId{OpaqueId: ssID},
Root: &provider.ResourceId{
SpaceId: n.SpaceRoot.SpaceID,
OpaqueId: n.ID,
OpaqueId: n.SpaceRoot.ID,
},
Name: sname,
// SpaceType is read from xattr below
@@ -974,7 +974,7 @@ func (fs *Decomposedfs) storageSpaceFromNode(ctx context.Context, n *node.Node,
Value: []byte(etag),
}
spaceAttributes, err := n.Xattrs()
spaceAttributes, err := n.SpaceRoot.Xattrs()
if err != nil {
return nil, err
}

2
vendor/modules.txt vendored
View File

@@ -349,7 +349,7 @@ github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1
github.com/cs3org/go-cs3apis/cs3/storage/registry/v1beta1
github.com/cs3org/go-cs3apis/cs3/tx/v1beta1
github.com/cs3org/go-cs3apis/cs3/types/v1beta1
# github.com/cs3org/reva/v2 v2.13.3-0.20230515075524-e00c55c0a4d3
# github.com/cs3org/reva/v2 v2.13.3-0.20230515105000-30125f104ba1
## explicit; go 1.19
github.com/cs3org/reva/v2/cmd/revad/internal/grace
github.com/cs3org/reva/v2/cmd/revad/runtime