Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use eos driver for /eos namespace #484

Merged
merged 1 commit into from
Aug 27, 2020
Merged

Conversation

butonic
Copy link
Member

@butonic butonic commented Aug 24, 2020

when accessing /eos we need to use the eos driver that does not apply the home layout. The first path segment is provided by clients accessing the /dav/files/<userid> endpoint. This PR will make the current configuration work with the existing code in reva for the eos driver as well as the ocdav implementation for the /dav/files endpoint.

  • submit PR to reva that applies the user layout in ocdav when accessing via /dav/files so we can route to any users files. access permissions are checked in the storage provider but the dav endpoint is needed to access other users storage. was already possible, but i forgot it. and it is not needed for the setup.

The /Shared folder only makes sense for the /home namespace. when accessing /eos it is not part of the tree.

@update-docs
Copy link

update-docs bot commented Aug 24, 2020

Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes.

docs/eos.md Outdated Show resolved Hide resolved
docs/eos.md Outdated Show resolved Hide resolved
@PVince81
Copy link
Contributor

with the env var change proposed in the comment, creating shares do work

however listing shares still has a 500 error with panic, due to:

ocis          | 2020-08-25T09:35:01Z ERR eos: resource is outside the directory of the logged-in user: internal=/eos/dockertest/reva/users/einstein/sha2 trim=/eos/dockertest/reva/users/marie namespace=/eos/dockertest/reva/users pkg=rgrpc service=reva traceid=87be475afa5bc67d51a2403ad87bee8a
ocis          | 2020-08-25T09:35:01Z ERR unary code=Internal end="25/Aug/2020:09:35:01 +0000" from=tcp://127.0.0.1:53804 pkg=rgrpc service=reva start="25/Aug/2020:09:35:01 +0000" time_ns=39223765 traceid=87be475afa5bc67d51a2403ad87bee8a uri=/cs3.storage.provider.v1beta1.ProviderAPI/Stat user-agent=grpc-go/1.26.0

strange that now we see "marie" instead of her uuid...

@PVince81
Copy link
Contributor

ah, maybe instead of replacing I need both... adjusting...

@PVince81
Copy link
Contributor

PVince81 commented Aug 25, 2020

according to our discussion, the EOS layout must be an empty string.
I suspect this cannot work because an empty string for a config would result in a default value.
I'm now trying this trick: REVA_STORAGE_EOS_LAYOUT='{{""}}'

@PVince81
Copy link
Contributor

seems with a truly empty storage layout for EOS, it breaks:
image

REVA_FRONTEND_URL: https://${OCIS_DOMAIN:-localhost}:9200
REVA_DATAGATEWAY_URL: https://${OCIS_DOMAIN:-localhost}:9200/data

# TODO dav/files namespace is broken because it should use /home not /oc or /eos
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've moved all those to owncloud/product#129 (comment), please remove these lines

@PVince81
Copy link
Contributor

PVince81 commented Aug 26, 2020

so we managed to have something working with the setup from this PR, see owncloud/product#129 (comment)

next up:

  • get rid of todo entries
  • split names.md to a separate ticket/pr
  • get this merged!

@PVince81
Copy link
Contributor

@butonic please undraft and squash

@PVince81 PVince81 marked this pull request as ready for review August 27, 2020 09:10
@butonic
Copy link
Member Author

butonic commented Aug 27, 2020

raised #499 for the namespaces docs

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

make home provider return eos storageid

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

add hint about REVA_STORAGE_HOME_MOUNT_ID

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

use ishanks shetup

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

hmm

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

working setup

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

use correct env vars for data provider

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

remove names.md

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

cleanup env vars

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Copy link
Contributor

@PVince81 PVince81 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've retested sharing on ocis master with this config and it still works 👍

@PVince81 PVince81 merged commit 5d3eb1d into owncloud:master Aug 27, 2020
ownclouders pushed a commit that referenced this pull request Aug 27, 2020
Merge: fe73c6a 3dc3241
Author: Vincent Petry <pvince81@owncloud.com>
Date:   Thu Aug 27 11:59:23 2020 +0200

    Merge pull request #484 from butonic/use-eos-driver

    use eos driver for /eos namespace
@butonic butonic deleted the use-eos-driver branch August 27, 2020 11:08
OCIS_DOMAIN: ${OCIS_DOMAIN:-localhost}
PROXY_OIDC_ISSUER: https://${OCIS_DOMAIN:-localhost}:9200
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

originally added by @jnweiger in #468

PHOENIX_OIDC_AUTHORITY: https://${OCIS_DOMAIN:-localhost}:9200
PHOENIX_OIDC_METADATA_URL: https://${OCIS_DOMAIN:-localhost}:9200/.well-known/openid-configuration
PHOENIX_WEB_CONFIG_SERVER: https://${OCIS_DOMAIN:-localhost}:9200
PROXY_HTTP_ADDR: 0.0.0.0:9200
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is the dafault

KONNECTD_ISS: https://${OCIS_DOMAIN:-localhost}:9200
KONNECTD_LOG_LEVEL: debug
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

log level will be taken from OCIS_LOG_LEVEL. if not that is a bug and should be fixed properly

KONNECTD_ISS: https://${OCIS_DOMAIN:-localhost}:9200
KONNECTD_LOG_LEVEL: debug
KONNECTD_TLS: '0'
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the default is already falseas is necessary because TLS handling is offloaded to the proxy

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be a fan of leaving all the defaults. Or document the defaults as a comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants