-
Notifications
You must be signed in to change notification settings - Fork 173
Open
Labels
Description
To ease maintenance and reduce technical debt we'd like to have reva and opencloud would live in the same repository. But before just merging both it would make sense to clean up reva and remove/rework unneeded pieces.
Benefits:
- No
go mod replacemagic needed for implementing/testing new features. Just a single PR to theopencloudrepo - better testing during development (currently the acceptance test in reva are just a subset of what is tested in opencloud)
- potentially get rid of duplicated code (e.g. in the webdav service)
- less steep learning curve for newcomers and external contributors
Steps towards merging the repos
- remove unneeded managers from the services (sharing, app-token, users, groups, public shares, ocm, auth, token) and only keep those that a really needed (e.g. jsoncs3, memory(?), depending on the service)
- remove unneeded store implementations (which ones do we really need?)
- check code base for unused services and remove them (what's the
preferencesserver good for?) - remove unused/unsupported storage drivers, we only need: decomposed, decomposeds3, posix. What about ocis and s3ng?
- remove everything related to
eos - remove cli tools
- get rid of
pkg/sharedconf - Do we still need:
-
pkg/mentix -
pkg/metrics -
pkg/micro -
pkg/sdk
-
- Remove
pkg/plugin
After merging:
- get rid of service config abstraction ("opencloud config struct" -> "mapstructure" -> "reva config struct")
- remove code duplication in reva and opencloud (e.g. webdav/ocdav or LDAP code in the graph service)
Other (long term):
- avoid using
Opaqueproperties in CS3 APIs, extend the CS3API where needed (fork CS3API?)
Reactions are currently unavailable