From b64b3242e234e0f35fe3bf2e2e5a6de2a26d6161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Tue, 6 Oct 2020 16:33:32 +0200 Subject: [PATCH 01/34] update reva and refactor config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jörn Friedrich Dreyer --- ocis/go.sum | 34 ++-- .../{storagestoragehome.go => storagehome.go} | 18 +- ...estoragemetadata.go => storagemetadata.go} | 18 +- ...ragepubliclink.go => storagepubliclink.go} | 14 +- ocis/pkg/command/storagestorageeos.go | 50 ----- ocis/pkg/command/storagestorageeosdata.go | 50 ----- ocis/pkg/command/storagestoragehomedata.go | 50 ----- ocis/pkg/command/storagestorageoc.go | 50 ----- ocis/pkg/command/storagestorageocdata.go | 50 ----- ...estorageroot.go => storageuserprovider.go} | 22 +-- ocis/pkg/command/storageusers.go | 12 +- ocis/pkg/runtime/runtime.go | 14 +- storage/go.mod | 2 +- storage/go.sum | 19 ++ storage/pkg/command/authbasic.go | 8 +- storage/pkg/command/authbearer.go | 8 +- storage/pkg/command/drivers.go | 2 +- storage/pkg/command/frontend.go | 21 +-- storage/pkg/command/gateway.go | 55 +++--- storage/pkg/command/root.go | 7 +- storage/pkg/command/sharing.go | 8 +- storage/pkg/command/storageeos.go | 175 ------------------ storage/pkg/command/storageeosdata.go | 175 ------------------ storage/pkg/command/storagehome.go | 27 ++- storage/pkg/command/storagemetadata.go | 19 +- storage/pkg/command/storageoc.go | 175 ------------------ storage/pkg/command/storageocdata.go | 175 ------------------ storage/pkg/command/storagepubliclink.go | 11 +- storage/pkg/command/storageroot.go | 174 ----------------- .../{storagehomedata.go => storageusers.go} | 43 +++-- storage/pkg/command/users.go | 6 +- storage/pkg/config/config.go | 68 +++---- storage/pkg/flagset/authbasic.go | 22 +-- storage/pkg/flagset/authbearer.go | 26 +-- storage/pkg/flagset/frontend.go | 25 +-- storage/pkg/flagset/gateway.go | 170 +++++++---------- storage/pkg/flagset/sharing.go | 22 +-- storage/pkg/flagset/storageeos.go | 104 ----------- storage/pkg/flagset/storageeosdata.go | 111 ----------- storage/pkg/flagset/storagehome.go | 108 +++++++---- storage/pkg/flagset/storagehomedata.go | 118 ------------ storage/pkg/flagset/storagemetadata.go | 70 ++++--- storage/pkg/flagset/storageoc.go | 116 ------------ storage/pkg/flagset/storageocdata.go | 111 ----------- storage/pkg/flagset/storagepubliclink.go | 36 ++-- storage/pkg/flagset/storageroot.go | 105 ----------- storage/pkg/flagset/storageusers.go | 143 ++++++++++++++ storage/pkg/flagset/users.go | 29 ++- 48 files changed, 597 insertions(+), 2279 deletions(-) rename ocis/pkg/command/{storagestoragehome.go => storagehome.go} (71%) rename ocis/pkg/command/{storagestoragemetadata.go => storagemetadata.go} (72%) rename ocis/pkg/command/{storagestoragepubliclink.go => storagepubliclink.go} (76%) delete mode 100644 ocis/pkg/command/storagestorageeos.go delete mode 100644 ocis/pkg/command/storagestorageeosdata.go delete mode 100644 ocis/pkg/command/storagestoragehomedata.go delete mode 100644 ocis/pkg/command/storagestorageoc.go delete mode 100644 ocis/pkg/command/storagestorageocdata.go rename ocis/pkg/command/{storagestorageroot.go => storageuserprovider.go} (64%) delete mode 100644 storage/pkg/command/storageeos.go delete mode 100644 storage/pkg/command/storageeosdata.go delete mode 100644 storage/pkg/command/storageoc.go delete mode 100644 storage/pkg/command/storageocdata.go delete mode 100644 storage/pkg/command/storageroot.go rename storage/pkg/command/{storagehomedata.go => storageusers.go} (73%) delete mode 100644 storage/pkg/flagset/storageeos.go delete mode 100644 storage/pkg/flagset/storageeosdata.go delete mode 100644 storage/pkg/flagset/storagehomedata.go delete mode 100644 storage/pkg/flagset/storageoc.go delete mode 100644 storage/pkg/flagset/storageocdata.go delete mode 100644 storage/pkg/flagset/storageroot.go create mode 100644 storage/pkg/flagset/storageusers.go diff --git a/ocis/go.sum b/ocis/go.sum index 3cbe3bd16d..51487913bf 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -32,7 +32,6 @@ contrib.go.opencensus.io/exporter/ocagent v0.7.0/go.mod h1:IshRmMJBhDfFj5Y67nVhM contrib.go.opencensus.io/exporter/prometheus v0.1.0/go.mod h1:cGFniUXGZlKRjzOyuZJ6mgB+PgBcCIa79kEKR8YCW+A= contrib.go.opencensus.io/exporter/prometheus v0.2.0 h1:9PUk0/8V0LGoPqVCrf8fQZJkFGBxudu8jOjQSMwoD6w= contrib.go.opencensus.io/exporter/prometheus v0.2.0/go.mod h1:TYmVAyE8Tn1lyPcltF5IYYfWp2KHu7lQGIZnj8iZMys= -contrib.go.opencensus.io/exporter/zipkin v0.1.1 h1:PR+1zWqY8ceXs1qDQQIlgXe+sdiwCf0n32bH4+Epk8g= contrib.go.opencensus.io/exporter/zipkin v0.1.1/go.mod h1:GMvdSl3eJ2gapOaLKzTKE3qDgUkJ86k9k3yY2eqwkzc= contrib.go.opencensus.io/exporter/zipkin v0.1.2 h1:YqE293IZrKtqPnpwDPH/lOqTWD/s3Iwabycam74JV3g= contrib.go.opencensus.io/exporter/zipkin v0.1.2/go.mod h1:mP5xM3rrgOjpn79MM8fZbj3gsxcuytSqtH0dxSWW1RE= @@ -116,7 +115,6 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= -github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496 h1:zV3ejI06GQ59hwDQAvmK1qxOQGB3WuVTRoY0okPTAv0= github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535 h1:4daAzAu0S6Vi7/lbWECcX0j45yZReDZ56BQsrVBOEEY= github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= @@ -127,10 +125,9 @@ github.com/aws/aws-sdk-go v1.23.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.28.2/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.34.2 h1:9vCknCdTAmmV4ht7lPuda7aJXzllXwEQyCMZKJHjBrM= github.com/aws/aws-sdk-go v1.34.2/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.34.12 h1:7UbBEYDUa4uW0YmRnOd806MS1yoJMcaodBWDzvBShAI= -github.com/aws/aws-sdk-go v1.34.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.35.0 h1:Pxqn1MWNfBCNcX7jrXCCTfsKpg5ms2IMUMmmcGtYJuo= +github.com/aws/aws-sdk-go v1.35.0/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= @@ -179,6 +176,7 @@ github.com/bwmarrin/discordgo v0.19.0/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVO github.com/bwmarrin/discordgo v0.20.1/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q= github.com/bwmarrin/discordgo v0.20.2/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q= github.com/c-bata/go-prompt v0.2.3/go.mod h1:VzqtzE2ksDBcdln8G7mk2RX9QyGjH+OVqOCSiVIqS34= +github.com/c-bata/go-prompt v0.2.5/go.mod h1:vFnjEGDIIA/Lib7giyE4E9c50Lvl8j0S+7FVlAwDAVw= github.com/caddyserver/certmagic v0.10.6 h1:sCya6FmfaN74oZE46kqfaFOVoROD/mF36rTQfjN7TZc= github.com/caddyserver/certmagic v0.10.6/go.mod h1:Y8jcUBctgk/IhpAzlHKfimZNyXCkfGgRTC0orl8gROQ= github.com/cenkalti/backoff v2.1.1+incompatible h1:tKJnvO2kl0zmb/jA5UKAt4VoEVw1qxKWjE/Bpp46npY= @@ -266,10 +264,9 @@ github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666 h1:E7VsSSN/2YZLS github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v0.0.2-0.20200115110931-4c7513415ec5/go.mod h1:Hk3eCcdhtv4eIhKvRK736fQuOyS1HuHnUcz0Dq6NK1A= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= -github.com/cs3org/reva v1.2.1-0.20200826162318-c0f54e1f37ea h1:xVyJvR+GoaBrRJV6GnDflgm9bzkmjchCBBg0nMiHu6M= github.com/cs3org/reva v1.2.1-0.20200826162318-c0f54e1f37ea/go.mod h1:FvYB+UPpuPCw0hH42qHVR1R2atZyy69METZI/zEaST8= -github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e h1:khITGSnfDXtByQsLezoXgocUgGHJBBn0BPsUihGvk7w= -github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= +github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7icnWOvIyGxnGUVvSSLvtEliuIE= +github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= @@ -762,8 +759,11 @@ github.com/jedib0t/go-pretty v4.3.0+incompatible/go.mod h1:XemHduiw8R651AF9Pt4Fw github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jinzhu/copier v0.0.0-20190924061706-b57f9002281a/go.mod h1:yL958EeXv8Ylng6IfnvG4oflryUi3vgA3xPs9hmII1s= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= -github.com/jmespath/go-jmespath v0.3.0 h1:OS12ieG61fsCg5+qLJ+SsW9NicxNkg3b25OyT2yCeUc= github.com/jmespath/go-jmespath v0.3.0/go.mod h1:9QtRXoHjLGCJ5IBSaohpXITPlowMeeYCZ7fLUTSywik= +github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= +github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= +github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= +github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= github.com/jmhodges/levigo v1.0.0 h1:q5EC36kV79HWeTBWsod3mG11EgStG3qArTKcvlksN1U= github.com/jmhodges/levigo v1.0.0/go.mod h1:Q6Qx+uH3RAqyK4rFQroq9RL7mdkABMcfhEI+nNuzMJQ= github.com/jmoiron/sqlx v0.0.0-20180614180643-0dae4fefe7c0/go.mod h1:IiEW3SEiiErVyFdH8NTuWjSifiEQKUoyK3LNqr2kCHU= @@ -866,12 +866,14 @@ github.com/marten-seemann/qtls v0.3.2/go.mod h1:xzjG7avBwGGbdZ8dTGxlBnLArsVKLvwm github.com/marten-seemann/qtls v0.4.1/go.mod h1:pxVXcHHw1pNIt8Qo0pwSYQEoZ8yYOOPXTCZLQQunvRc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-colorable v0.1.4 h1:snbPLB8fVfU9iwbbo30TPtbLRzwWu6aJS6Xh4eaaviA= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-colorable v0.1.7 h1:bQGKb3vps/j0E9GfJQ03JyhRuxsvdAanXlT9BTw3mdw= +github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12 h1:wuysRhFDzyxgEmMf5xjvJ2M9dZoWAXNNr5LSBS7uHXY= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= @@ -888,6 +890,7 @@ github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsO github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U= github.com/mattn/go-sqlite3 v2.0.3+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-tty v0.0.0-20180219170247-931426f7535a/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE= +github.com/mattn/go-tty v0.0.3/go.mod h1:ihxohKRERHTVzN+aSVRwACLCeqIoZAWpoICkkvrWyR0= github.com/mattn/goveralls v0.0.2/go.mod h1:8d1ZMHsd7fW6IRPKQh46F2WRpyib5/X4FOpevwGNQEw= github.com/mattn/goveralls v0.0.5/go.mod h1:Xg2LHi51faXLyKXwsndxiW6uxEEQT9+3sjGzzwU4xy0= github.com/mattn/goveralls v0.0.6 h1:cr8Y0VMo/MnEZBjxNN/vh6G90SZ7IMb6lms1dzMoO+Y= @@ -1051,8 +1054,8 @@ github.com/ory/dockertest v3.3.5+incompatible/go.mod h1:1vX4m9wsvi00u5bseYwXaSnh github.com/ory/fosite v0.29.0/go.mod h1:0atSZmXO7CAcs6NPMI/Qtot8tmZYj04Nddoold4S2h0= github.com/ory/fosite v0.30.2/go.mod h1:Lq9qQ9Sl6mcea2Tt8J7PU+wUeFYPZ+vg7N3zPVKGbN8= github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20Q8I= -github.com/ory/fosite v0.33.0 h1:tK+3Luazv4vIBJY3uagOBryAQ3IG3cs6kfo8piGBhAY= -github.com/ory/fosite v0.33.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.34.0 h1:lCUX4f5BoiXBIRUYKeTne+aRl0v6StgWpyYKq+7ILw0= +github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= github.com/ory/go-acc v0.2.5 h1:31irXHzG2vnKQSE4weJm7AdfrnpaVjVCq3nD7viXCJE= @@ -1103,6 +1106,7 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA= github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= github.com/pkg/term v0.0.0-20200520122047-c3ffed290a03/go.mod h1:Z9+Ul5bCbBKnbCvdOWbLqTHhJiYV414CURZJba6L8qA= +github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= github.com/pkg/xattr v0.4.1 h1:dhclzL6EqOXNaPDWqoeb9tIxATfBSmjqL0b4DpSjwRw= github.com/pkg/xattr v0.4.1/go.mod h1:W2cGD0TBEus7MkUgv0tNZ9JutLtVO3cXu+IBRuHqnFs= github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -1590,11 +1594,13 @@ golang.org/x/sys v0.0.0-20190922100055-0a153f010e69/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191010194322-b09406accb47/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191105231009-c1f44814a5cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191110163157-d32e6e3b99c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191113165036-4c7a9d0fe056/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1613,8 +1619,10 @@ golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200720211630-cb9d2d5c5666 h1:gVCS+QOncANNPlmlO1AhlU3oxs4V9z+gTtPwIk3p2N8= golang.org/x/sys v0.0.0-20200720211630-cb9d2d5c5666/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200918174421-af09f7315aff h1:1CPUrky56AcgSpxz/KfgzQWzfG09u5YOL8MvPYBlrL8= +golang.org/x/sys v0.0.0-20200918174421-af09f7315aff/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/ocis/pkg/command/storagestoragehome.go b/ocis/pkg/command/storagehome.go similarity index 71% rename from ocis/pkg/command/storagestoragehome.go rename to ocis/pkg/command/storagehome.go index b065c1eb2a..a8552ea453 100644 --- a/ocis/pkg/command/storagestoragehome.go +++ b/ocis/pkg/command/storagehome.go @@ -4,22 +4,22 @@ package command import ( "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" "github.com/owncloud/ocis/storage/pkg/command" svcconfig "github.com/owncloud/ocis/storage/pkg/config" "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" ) -// StorageStorageHomeCommand is the entrypoint for the reva-storage-home command. -func StorageStorageHomeCommand(cfg *config.Config) *cli.Command { +// StorageHomeCommand is the entrypoint for the storage-home command. +func StorageHomeCommand(cfg *config.Config) *cli.Command { return &cli.Command{ - Name: "storage-storage-home", - Usage: "Start storage storage service for home mount", + Name: "storage-home", + Usage: "Start storage and data provider for /home mount", Category: "Extensions", Flags: flagset.StorageHomeWithConfig(cfg.Storage), Action: func(c *cli.Context) error { - scfg := configureStorageStorageHome(cfg) + scfg := configureStorageHome(cfg) return cli.HandleAction( command.StorageHome(scfg).Action, @@ -29,7 +29,7 @@ func StorageStorageHomeCommand(cfg *config.Config) *cli.Command { } } -func configureStorageStorageHome(cfg *config.Config) *svcconfig.Config { +func configureStorageHome(cfg *config.Config) *svcconfig.Config { cfg.Storage.Log.Level = cfg.Log.Level cfg.Storage.Log.Pretty = cfg.Log.Pretty cfg.Storage.Log.Color = cfg.Log.Color @@ -46,5 +46,5 @@ func configureStorageStorageHome(cfg *config.Config) *svcconfig.Config { } func init() { - register.AddCommand(StorageStorageHomeCommand) + register.AddCommand(StorageHomeCommand) } diff --git a/ocis/pkg/command/storagestoragemetadata.go b/ocis/pkg/command/storagemetadata.go similarity index 72% rename from ocis/pkg/command/storagestoragemetadata.go rename to ocis/pkg/command/storagemetadata.go index d55716830e..3bda908391 100644 --- a/ocis/pkg/command/storagestoragemetadata.go +++ b/ocis/pkg/command/storagemetadata.go @@ -2,22 +2,22 @@ package command import ( "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" "github.com/owncloud/ocis/storage/pkg/command" svcconfig "github.com/owncloud/ocis/storage/pkg/config" "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" ) -// StorageStorageMetadataCommand is the entrypoint for the reva-storage-metadata command. -func StorageStorageMetadataCommand(cfg *config.Config) *cli.Command { +// StorageMetadataCommand is the entrypoint for the storage-metadata command. +func StorageMetadataCommand(cfg *config.Config) *cli.Command { return &cli.Command{ - Name: "storage-storage-metadata", - Usage: "Start storage storage service for metadata mount", + Name: "storage-metadata", + Usage: "Start storage and data service for metadata", Category: "Extensions", Flags: flagset.StorageMetadata(cfg.Storage), Action: func(c *cli.Context) error { - revaStorageMetadataCommand := command.StorageMetadata(configureStorageStorageMetadata(cfg)) + revaStorageMetadataCommand := command.StorageMetadata(configureStorageMetadata(cfg)) if err := revaStorageMetadataCommand.Before(c); err != nil { return err @@ -28,7 +28,7 @@ func StorageStorageMetadataCommand(cfg *config.Config) *cli.Command { } } -func configureStorageStorageMetadata(cfg *config.Config) *svcconfig.Config { +func configureStorageMetadata(cfg *config.Config) *svcconfig.Config { cfg.Storage.Log.Level = cfg.Log.Level cfg.Storage.Log.Pretty = cfg.Log.Pretty cfg.Storage.Log.Color = cfg.Log.Color @@ -45,5 +45,5 @@ func configureStorageStorageMetadata(cfg *config.Config) *svcconfig.Config { } func init() { - register.AddCommand(StorageStorageMetadataCommand) + register.AddCommand(StorageMetadataCommand) } diff --git a/ocis/pkg/command/storagestoragepubliclink.go b/ocis/pkg/command/storagepubliclink.go similarity index 76% rename from ocis/pkg/command/storagestoragepubliclink.go rename to ocis/pkg/command/storagepubliclink.go index e35d84a736..d52347eb85 100644 --- a/ocis/pkg/command/storagestoragepubliclink.go +++ b/ocis/pkg/command/storagepubliclink.go @@ -4,22 +4,22 @@ package command import ( "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" "github.com/owncloud/ocis/storage/pkg/command" svcconfig "github.com/owncloud/ocis/storage/pkg/config" "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" ) -// StorageStoragePublicLinkCommand is the entrypoint for the reva-storage-oc command. -func StorageStoragePublicLinkCommand(cfg *config.Config) *cli.Command { +// StoragePublicLinkCommand is the entrypoint for the reva-storage-oc command. +func StoragePublicLinkCommand(cfg *config.Config) *cli.Command { return &cli.Command{ Name: "storage-storage-public-link", Usage: "Start storage public link storage", Category: "Extensions", Flags: flagset.StoragePublicLink(cfg.Storage), Action: func(c *cli.Context) error { - scfg := configureStorageStoragePublicLink(cfg) + scfg := configureStoragePublicLink(cfg) return cli.HandleAction( command.StoragePublicLink(scfg).Action, @@ -29,7 +29,7 @@ func StorageStoragePublicLinkCommand(cfg *config.Config) *cli.Command { } } -func configureStorageStoragePublicLink(cfg *config.Config) *svcconfig.Config { +func configureStoragePublicLink(cfg *config.Config) *svcconfig.Config { cfg.Storage.Log.Level = cfg.Log.Level cfg.Storage.Log.Pretty = cfg.Log.Pretty cfg.Storage.Log.Color = cfg.Log.Color @@ -46,5 +46,5 @@ func configureStorageStoragePublicLink(cfg *config.Config) *svcconfig.Config { } func init() { - register.AddCommand(StorageStoragePublicLinkCommand) + register.AddCommand(StoragePublicLinkCommand) } diff --git a/ocis/pkg/command/storagestorageeos.go b/ocis/pkg/command/storagestorageeos.go deleted file mode 100644 index 06edff5e75..0000000000 --- a/ocis/pkg/command/storagestorageeos.go +++ /dev/null @@ -1,50 +0,0 @@ -// +build !simple - -package command - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" - "github.com/owncloud/ocis/storage/pkg/command" - svcconfig "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" -) - -// StorageStorageEOSCommand is the entrypoint for the reva-storage-oc command. -func StorageStorageEOSCommand(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-storage-eos", - Usage: "Start storage storage service for eos mount", - Category: "Extensions", - Flags: flagset.StorageEOSWithConfig(cfg.Storage), - Action: func(c *cli.Context) error { - scfg := configureStorageStorageEOS(cfg) - - return cli.HandleAction( - command.StorageEOS(scfg).Action, - c, - ) - }, - } -} - -func configureStorageStorageEOS(cfg *config.Config) *svcconfig.Config { - cfg.Storage.Log.Level = cfg.Log.Level - cfg.Storage.Log.Pretty = cfg.Log.Pretty - cfg.Storage.Log.Color = cfg.Log.Color - - if cfg.Tracing.Enabled { - cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled - cfg.Storage.Tracing.Type = cfg.Tracing.Type - cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint - cfg.Storage.Tracing.Collector = cfg.Tracing.Collector - cfg.Storage.Tracing.Service = cfg.Tracing.Service - } - - return cfg.Storage -} - -func init() { - register.AddCommand(StorageStorageEOSCommand) -} diff --git a/ocis/pkg/command/storagestorageeosdata.go b/ocis/pkg/command/storagestorageeosdata.go deleted file mode 100644 index 057a62bd9d..0000000000 --- a/ocis/pkg/command/storagestorageeosdata.go +++ /dev/null @@ -1,50 +0,0 @@ -// +build !simple - -package command - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/command" - svcconfig "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" -) - -// StorageStorageEOSDataCommand is the entrypoint for the reva-storage-eos-data command. -func StorageStorageEOSDataCommand(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-storage-eos-data", - Usage: "Start storage storage data provider for eos mount", - Category: "Extensions", - Flags: flagset.StorageEOSDataWithConfig(cfg.Storage), - Action: func(c *cli.Context) error { - scfg := configureStorageStorageEOSData(cfg) - - return cli.HandleAction( - command.StorageEOSData(scfg).Action, - c, - ) - }, - } -} - -func configureStorageStorageEOSData(cfg *config.Config) *svcconfig.Config { - cfg.Storage.Log.Level = cfg.Log.Level - cfg.Storage.Log.Pretty = cfg.Log.Pretty - cfg.Storage.Log.Color = cfg.Log.Color - - if cfg.Tracing.Enabled { - cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled - cfg.Storage.Tracing.Type = cfg.Tracing.Type - cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint - cfg.Storage.Tracing.Collector = cfg.Tracing.Collector - cfg.Storage.Tracing.Service = cfg.Tracing.Service - } - - return cfg.Storage -} - -func init() { - register.AddCommand(StorageStorageEOSDataCommand) -} diff --git a/ocis/pkg/command/storagestoragehomedata.go b/ocis/pkg/command/storagestoragehomedata.go deleted file mode 100644 index ac63adbc3f..0000000000 --- a/ocis/pkg/command/storagestoragehomedata.go +++ /dev/null @@ -1,50 +0,0 @@ -// +build !simple - -package command - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/command" - svcconfig "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" -) - -// StorageStorageHomeDataCommand is the entrypoint for the reva-storage-home-data command. -func StorageStorageHomeDataCommand(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-storage-home-data", - Usage: "Start storage storage data provider for home mount", - Category: "Extensions", - Flags: flagset.StorageHomeDataWithConfig(cfg.Storage), - Action: func(c *cli.Context) error { - scfg := configureStorageStorageHomeData(cfg) - - return cli.HandleAction( - command.StorageHomeData(scfg).Action, - c, - ) - }, - } -} - -func configureStorageStorageHomeData(cfg *config.Config) *svcconfig.Config { - cfg.Storage.Log.Level = cfg.Log.Level - cfg.Storage.Log.Pretty = cfg.Log.Pretty - cfg.Storage.Log.Color = cfg.Log.Color - - if cfg.Tracing.Enabled { - cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled - cfg.Storage.Tracing.Type = cfg.Tracing.Type - cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint - cfg.Storage.Tracing.Collector = cfg.Tracing.Collector - cfg.Storage.Tracing.Service = cfg.Tracing.Service - } - - return cfg.Storage -} - -func init() { - register.AddCommand(StorageStorageHomeDataCommand) -} diff --git a/ocis/pkg/command/storagestorageoc.go b/ocis/pkg/command/storagestorageoc.go deleted file mode 100644 index c2c187bf54..0000000000 --- a/ocis/pkg/command/storagestorageoc.go +++ /dev/null @@ -1,50 +0,0 @@ -// +build !simple - -package command - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/command" - svcconfig "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" -) - -// StorageStorageOCCommand is the entrypoint for the reva-storage-oc command. -func StorageStorageOCCommand(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-storage-oc", - Usage: "Start storage storage service for oc mount", - Category: "Extensions", - Flags: flagset.StorageOCWithConfig(cfg.Storage), - Action: func(c *cli.Context) error { - scfg := configureStorageStorageOC(cfg) - - return cli.HandleAction( - command.StorageOC(scfg).Action, - c, - ) - }, - } -} - -func configureStorageStorageOC(cfg *config.Config) *svcconfig.Config { - cfg.Storage.Log.Level = cfg.Log.Level - cfg.Storage.Log.Pretty = cfg.Log.Pretty - cfg.Storage.Log.Color = cfg.Log.Color - - if cfg.Tracing.Enabled { - cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled - cfg.Storage.Tracing.Type = cfg.Tracing.Type - cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint - cfg.Storage.Tracing.Collector = cfg.Tracing.Collector - cfg.Storage.Tracing.Service = cfg.Tracing.Service - } - - return cfg.Storage -} - -func init() { - register.AddCommand(StorageStorageOCCommand) -} diff --git a/ocis/pkg/command/storagestorageocdata.go b/ocis/pkg/command/storagestorageocdata.go deleted file mode 100644 index 089b303b7e..0000000000 --- a/ocis/pkg/command/storagestorageocdata.go +++ /dev/null @@ -1,50 +0,0 @@ -// +build !simple - -package command - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/command" - svcconfig "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" -) - -// StorageStorageOCDataCommand is the entrypoint for the reva-storage-oc-data command. -func StorageStorageOCDataCommand(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-storage-oc-data", - Usage: "Start storage storage data provider for oc mount", - Category: "Extensions", - Flags: flagset.StorageOCDataWithConfig(cfg.Storage), - Action: func(c *cli.Context) error { - scfg := configureStorageStorageOCData(cfg) - - return cli.HandleAction( - command.StorageOCData(scfg).Action, - c, - ) - }, - } -} - -func configureStorageStorageOCData(cfg *config.Config) *svcconfig.Config { - cfg.Storage.Log.Level = cfg.Log.Level - cfg.Storage.Log.Pretty = cfg.Log.Pretty - cfg.Storage.Log.Color = cfg.Log.Color - - if cfg.Tracing.Enabled { - cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled - cfg.Storage.Tracing.Type = cfg.Tracing.Type - cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint - cfg.Storage.Tracing.Collector = cfg.Tracing.Collector - cfg.Storage.Tracing.Service = cfg.Tracing.Service - } - - return cfg.Storage -} - -func init() { - register.AddCommand(StorageStorageOCDataCommand) -} diff --git a/ocis/pkg/command/storagestorageroot.go b/ocis/pkg/command/storageuserprovider.go similarity index 64% rename from ocis/pkg/command/storagestorageroot.go rename to ocis/pkg/command/storageuserprovider.go index 5a5a485779..c631a5ceca 100644 --- a/ocis/pkg/command/storagestorageroot.go +++ b/ocis/pkg/command/storageuserprovider.go @@ -4,32 +4,32 @@ package command import ( "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" "github.com/owncloud/ocis/storage/pkg/command" svcconfig "github.com/owncloud/ocis/storage/pkg/config" "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" ) -// StorageStorageRootCommand is the entrypoint for the reva-storage-root command. -func StorageStorageRootCommand(cfg *config.Config) *cli.Command { +// StorageUserProviderCommand is the entrypoint for the storage-userprovider command. +func StorageUserProviderCommand(cfg *config.Config) *cli.Command { return &cli.Command{ - Name: "storage-storage-root", - Usage: "Start storage root storage", + Name: "storage-userprovider", + Usage: "Start storage userprovider service", Category: "Extensions", - Flags: flagset.StorageRootWithConfig(cfg.Storage), + Flags: flagset.UsersWithConfig(cfg.Storage), Action: func(c *cli.Context) error { - scfg := configureStorageStorageRoot(cfg) + scfg := configureStorageUserProvider(cfg) return cli.HandleAction( - command.StorageRoot(scfg).Action, + command.Users(scfg).Action, c, ) }, } } -func configureStorageStorageRoot(cfg *config.Config) *svcconfig.Config { +func configureStorageUserProvider(cfg *config.Config) *svcconfig.Config { cfg.Storage.Log.Level = cfg.Log.Level cfg.Storage.Log.Pretty = cfg.Log.Pretty cfg.Storage.Log.Color = cfg.Log.Color @@ -46,5 +46,5 @@ func configureStorageStorageRoot(cfg *config.Config) *svcconfig.Config { } func init() { - register.AddCommand(StorageStorageRootCommand) + register.AddCommand(StorageUserProviderCommand) } diff --git a/ocis/pkg/command/storageusers.go b/ocis/pkg/command/storageusers.go index d5ade5cbc7..ca7458f5a4 100644 --- a/ocis/pkg/command/storageusers.go +++ b/ocis/pkg/command/storageusers.go @@ -4,25 +4,25 @@ package command import ( "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" "github.com/owncloud/ocis/storage/pkg/command" svcconfig "github.com/owncloud/ocis/storage/pkg/config" "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/ocis/pkg/config" - "github.com/owncloud/ocis/ocis/pkg/register" ) -// StorageUsersCommand is the entrypoint for the reva-users command. +// StorageUsersCommand is the entrypoint for the storage-users command. func StorageUsersCommand(cfg *config.Config) *cli.Command { return &cli.Command{ Name: "storage-users", - Usage: "Start storage users service", + Usage: "Start storage and data provider for /users mount", Category: "Extensions", - Flags: flagset.UsersWithConfig(cfg.Storage), + Flags: flagset.StorageUsersWithConfig(cfg.Storage), Action: func(c *cli.Context) error { scfg := configureStorageUsers(cfg) return cli.HandleAction( - command.Users(scfg).Action, + command.StorageUsers(scfg).Action, c, ) }, diff --git a/ocis/pkg/runtime/runtime.go b/ocis/pkg/runtime/runtime.go index 3f5c4943bb..390250031e 100644 --- a/ocis/pkg/runtime/runtime.go +++ b/ocis/pkg/runtime/runtime.go @@ -40,17 +40,13 @@ var ( "webdav", "storage-frontend", "storage-gateway", - "storage-users", + "storage-userprovider", "storage-auth-basic", "storage-auth-bearer", - "storage-storage-home", - "storage-storage-home-data", - "storage-storage-eos", - "storage-storage-eos-data", - "storage-storage-oc", - "storage-storage-oc-data", - "storage-storage-public-link", - "storage-storage-metadata", + "storage-home", + "storage-users", + "storage-metadata", + "storage-public-link", "glauth", "konnectd", "thumbnails", diff --git a/storage/go.mod b/storage/go.mod index c16b7b8f59..73d2e9bba0 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e + github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index 4b4df17080..e70f642b2b 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -106,6 +106,7 @@ github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpi github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.34.12 h1:7UbBEYDUa4uW0YmRnOd806MS1yoJMcaodBWDzvBShAI= github.com/aws/aws-sdk-go v1.34.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.35.0/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -120,6 +121,7 @@ github.com/bmizerany/pat v0.0.0-20170815010413-6226ea591a40 h1:y4B3+GPxKlrigF1ha github.com/bmizerany/pat v0.0.0-20170815010413-6226ea591a40/go.mod h1:8rLXio+WjiTceGBHIoTvn60HIbs7Hm7bcHjyrSqYB9c= github.com/bwmarrin/discordgo v0.20.2/go.mod h1:O9S4p+ofTFwB02em7jkpkV8M3R0/PUVOwN61zSZ0r4Q= github.com/c-bata/go-prompt v0.2.3/go.mod h1:VzqtzE2ksDBcdln8G7mk2RX9QyGjH+OVqOCSiVIqS34= +github.com/c-bata/go-prompt v0.2.5/go.mod h1:vFnjEGDIIA/Lib7giyE4E9c50Lvl8j0S+7FVlAwDAVw= github.com/caddyserver/certmagic v0.10.6/go.mod h1:Y8jcUBctgk/IhpAzlHKfimZNyXCkfGgRTC0orl8gROQ= github.com/cenkalti/backoff v2.1.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/cenkalti/backoff/v4 v4.0.0/go.mod h1:eEew/i+1Q6OrCDZh3WiXYv3+nJwBASZ8Bog/87DQnVg= @@ -185,6 +187,8 @@ github.com/cs3org/reva v1.2.1-0.20200911111727-51649e37df2d h1:vohUfrOZVrbbzt7JU github.com/cs3org/reva v1.2.1-0.20200911111727-51649e37df2d/go.mod h1:Q1/JB40ZKtlhZUxz+ZqB/O/VlrnQX//NYdPPRPsP0UE= github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e h1:khITGSnfDXtByQsLezoXgocUgGHJBBn0BPsUihGvk7w= github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= +github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7icnWOvIyGxnGUVvSSLvtEliuIE= +github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -572,6 +576,8 @@ github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJS github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= github.com/jmespath/go-jmespath v0.3.0 h1:OS12ieG61fsCg5+qLJ+SsW9NicxNkg3b25OyT2yCeUc= github.com/jmespath/go-jmespath v0.3.0/go.mod h1:9QtRXoHjLGCJ5IBSaohpXITPlowMeeYCZ7fLUTSywik= +github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= +github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= github.com/jmoiron/sqlx v0.0.0-20180614180643-0dae4fefe7c0/go.mod h1:IiEW3SEiiErVyFdH8NTuWjSifiEQKUoyK3LNqr2kCHU= github.com/jmoiron/sqlx v1.2.0/go.mod h1:1FEQNm3xlJgrMD+FBdI9+xvCksHtbpVBBw5dYhBSsks= github.com/joho/godotenv v1.2.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= @@ -649,21 +655,27 @@ github.com/marten-seemann/qpack v0.1.0/go.mod h1:LFt1NU/Ptjip0C2CPkhimBz5CGE3WGD github.com/marten-seemann/qtls v0.4.1/go.mod h1:pxVXcHHw1pNIt8Qo0pwSYQEoZ8yYOOPXTCZLQQunvRc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= +github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.3/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-runewidth v0.0.6/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/mattn/go-runewidth v0.0.7/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= +github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U= github.com/mattn/go-sqlite3 v2.0.3+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-tty v0.0.0-20180219170247-931426f7535a/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE= +github.com/mattn/go-tty v0.0.3/go.mod h1:ihxohKRERHTVzN+aSVRwACLCeqIoZAWpoICkkvrWyR0= github.com/mattn/goveralls v0.0.2/go.mod h1:8d1ZMHsd7fW6IRPKQh46F2WRpyib5/X4FOpevwGNQEw= github.com/mattn/goveralls v0.0.5 h1:spfq8AyZ0cCk57Za6/juJ5btQxeE1FaEGMdfcI+XO48= github.com/mattn/goveralls v0.0.5/go.mod h1:Xg2LHi51faXLyKXwsndxiW6uxEEQT9+3sjGzzwU4xy0= @@ -756,6 +768,7 @@ github.com/ory/fosite v0.32.2 h1:iRV495P/9EyoYQ8qEHYxFQeeYCdDFawqjAML+qiMF9s= github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20Q8I= github.com/ory/fosite v0.33.0 h1:tK+3Luazv4vIBJY3uagOBryAQ3IG3cs6kfo8piGBhAY= github.com/ory/fosite v0.33.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1 h1:Pwcmwd/cSnwJsYN76+w3HU7oXeWFTkwj/KUj1qGDrVw= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= @@ -797,6 +810,7 @@ github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINE github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA= github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= github.com/pkg/term v0.0.0-20200520122047-c3ffed290a03/go.mod h1:Z9+Ul5bCbBKnbCvdOWbLqTHhJiYV414CURZJba6L8qA= +github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= github.com/pkg/xattr v0.4.1 h1:dhclzL6EqOXNaPDWqoeb9tIxATfBSmjqL0b4DpSjwRw= github.com/pkg/xattr v0.4.1/go.mod h1:W2cGD0TBEus7MkUgv0tNZ9JutLtVO3cXu+IBRuHqnFs= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -1190,14 +1204,17 @@ golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191010194322-b09406accb47/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191105231009-c1f44814a5cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191113165036-4c7a9d0fe056/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1213,6 +1230,8 @@ golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1 h1:ogLJMz+qpzav7lGMh10LMvAkM golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200720211630-cb9d2d5c5666 h1:gVCS+QOncANNPlmlO1AhlU3oxs4V9z+gTtPwIk3p2N8= golang.org/x/sys v0.0.0-20200720211630-cb9d2d5c5666/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200918174421-af09f7315aff/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/storage/pkg/command/authbasic.go b/storage/pkg/command/authbasic.go index fa3f983648..9fb13d9f03 100644 --- a/storage/pkg/command/authbasic.go +++ b/storage/pkg/command/authbasic.go @@ -73,18 +73,18 @@ func AuthBasic(cfg *config.Config) *cli.Command { rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": cfg.Reva.Users.MaxCPUs, + "max_cpus": cfg.Reva.AuthBasic.MaxCPUs, "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "auth-basic", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.AuthBasic.Network, - "address": cfg.Reva.AuthBasic.Addr, + "network": cfg.Reva.AuthBasic.GRPCNetwork, + "address": cfg.Reva.AuthBasic.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "authprovider": map[string]interface{}{ diff --git a/storage/pkg/command/authbearer.go b/storage/pkg/command/authbearer.go index 1339766ae7..953db00661 100644 --- a/storage/pkg/command/authbearer.go +++ b/storage/pkg/command/authbearer.go @@ -73,18 +73,18 @@ func AuthBearer(cfg *config.Config) *cli.Command { rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": cfg.Reva.Users.MaxCPUs, + "max_cpus": cfg.Reva.AuthBearer.MaxCPUs, "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "auth-bearer", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.AuthBearer.Network, - "address": cfg.Reva.AuthBearer.Addr, + "network": cfg.Reva.AuthBearer.GRPCNetwork, + "address": cfg.Reva.AuthBearer.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "authprovider": map[string]interface{}{ diff --git a/storage/pkg/command/drivers.go b/storage/pkg/command/drivers.go index fc4025d6cb..914e34b844 100644 --- a/storage/pkg/command/drivers.go +++ b/storage/pkg/command/drivers.go @@ -83,7 +83,7 @@ func drivers(cfg *config.Config) map[string]interface{} { "redis": cfg.Reva.Storages.OwnCloud.Redis, "enable_home": cfg.Reva.Storages.OwnCloud.EnableHome, "scan": cfg.Reva.Storages.OwnCloud.Scan, - "userprovidersvc": cfg.Reva.Users.URL, + "userprovidersvc": cfg.Reva.Users.Endpoint, }, "ocis": map[string]interface{}{ "root": cfg.Reva.Storages.Common.Root, diff --git a/storage/pkg/command/frontend.go b/storage/pkg/command/frontend.go index bdc06a40ab..7bb726597d 100644 --- a/storage/pkg/command/frontend.go +++ b/storage/pkg/command/frontend.go @@ -6,7 +6,6 @@ import ( "os" "os/signal" "path" - "strings" "time" "github.com/cs3org/reva/cmd/revad/runtime" @@ -103,15 +102,15 @@ func Frontend(cfg *config.Config) *cli.Command { "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "frontend", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, - "gatewaysvc": cfg.Reva.Gateway.URL, // Todo or address? + "gatewaysvc": cfg.Reva.Gateway.Endpoint, // Todo or address? }, "http": map[string]interface{}{ - "network": cfg.Reva.Frontend.Network, - "address": cfg.Reva.Frontend.Addr, + "network": cfg.Reva.Frontend.HTTPNetwork, + "address": cfg.Reva.Frontend.HTTPAddr, "middlewares": map[string]interface{}{ "cors": map[string]interface{}{ "allow_credentials": true, @@ -139,7 +138,7 @@ func Frontend(cfg *config.Config) *cli.Command { "config": map[string]interface{}{ "version": "1.8", "website": "reva", - "host": urlWithScheme(cfg.Reva.Frontend.URL), + "host": cfg.Reva.Frontend.PublicURL, "contact": "admin@localhost", "ssl": "false", }, @@ -298,13 +297,3 @@ func Frontend(cfg *config.Config) *cli.Command { }, } } - -// urlWithScheme checks if the given string is prefixed with "http". If it is not, "http://" will be added as prefix. -// As we can't tell if http or https should be the preferred scheme, the correct approach would be to fail on urls -// without scheme. As long as we have default urls in our flagsets which don't have a scheme, this is a feasible workaround. -func urlWithScheme(str string) string { - if !strings.HasPrefix(str, "http") { - str = "http://" + str - } - return str -} diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index ebf6c12184..d64e2c7cc8 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -80,35 +80,35 @@ func Gateway(cfg *config.Config) *cli.Command { "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "gateway", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, - "gatewaysvc": cfg.Reva.Gateway.URL, // Todo or address? + "gatewaysvc": cfg.Reva.Gateway.Endpoint, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.Gateway.Network, - "address": cfg.Reva.Gateway.Addr, + "network": cfg.Reva.Gateway.GRPCNetwork, + "address": cfg.Reva.Gateway.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "gateway": map[string]interface{}{ // registries is located on the gateway - "authregistrysvc": cfg.Reva.Gateway.URL, - "storageregistrysvc": cfg.Reva.Gateway.URL, - "appregistrysvc": cfg.Reva.Gateway.URL, + "authregistrysvc": cfg.Reva.Gateway.Endpoint, + "storageregistrysvc": cfg.Reva.Gateway.Endpoint, + "appregistrysvc": cfg.Reva.Gateway.Endpoint, // user metadata is located on the users services - "preferencessvc": cfg.Reva.Users.URL, - "userprovidersvc": cfg.Reva.Users.URL, + "preferencessvc": cfg.Reva.Users.Endpoint, + "userprovidersvc": cfg.Reva.Users.Endpoint, // sharing is located on the sharing service - "usershareprovidersvc": cfg.Reva.Sharing.URL, - "publicshareprovidersvc": cfg.Reva.Sharing.URL, - "ocmshareprovidersvc": cfg.Reva.Sharing.URL, + "usershareprovidersvc": cfg.Reva.Sharing.Endpoint, + "publicshareprovidersvc": cfg.Reva.Sharing.Endpoint, + "ocmshareprovidersvc": cfg.Reva.Sharing.Endpoint, "commit_share_to_storage_grant": cfg.Reva.Gateway.CommitShareToStorageGrant, "commit_share_to_storage_ref": cfg.Reva.Gateway.CommitShareToStorageRef, "share_folder": cfg.Reva.Gateway.ShareFolder, // ShareFolder is the location where to create shares in the recipient's storage provider. // other "disable_home_creation_on_login": cfg.Reva.Gateway.DisableHomeCreationOnLogin, - "datagateway": urlWithScheme(cfg.Reva.DataGateway.URL), + "datagateway": cfg.Reva.DataGateway.PublicURL, "transfer_shared_secret": cfg.Reva.TransferSecret, "transfer_expires": cfg.Reva.TransferExpires, }, @@ -117,9 +117,9 @@ func Gateway(cfg *config.Config) *cli.Command { "drivers": map[string]interface{}{ "static": map[string]interface{}{ "rules": map[string]interface{}{ - "basic": cfg.Reva.AuthBasic.URL, - "bearer": cfg.Reva.AuthBearer.URL, - "publicshares": cfg.Reva.StoragePublicLink.URL, + "basic": cfg.Reva.AuthBasic.Endpoint, + "bearer": cfg.Reva.AuthBearer.Endpoint, + "publicshares": cfg.Reva.StoragePublicLink.Endpoint, }, }, }, @@ -142,7 +142,7 @@ func Gateway(cfg *config.Config) *cli.Command { ctx, "com.owncloud.storage", uuid.String(), - cfg.Reva.Gateway.Addr, + cfg.Reva.Gateway.GRPCAddr, logger, ) @@ -239,21 +239,12 @@ func rules(cfg *config.Config) map[string]interface{} { // generate rules based on default config return map[string]interface{}{ - cfg.Reva.StorageRoot.MountPath: cfg.Reva.StorageRoot.URL, - cfg.Reva.StorageRoot.MountID: cfg.Reva.StorageRoot.URL, - cfg.Reva.StorageHome.MountPath: cfg.Reva.StorageHome.URL, - cfg.Reva.StorageHome.MountID: cfg.Reva.StorageHome.URL, - cfg.Reva.StorageEOS.MountPath: cfg.Reva.StorageEOS.URL, - cfg.Reva.StorageEOS.MountID: cfg.Reva.StorageEOS.URL, - cfg.Reva.StorageOC.MountPath: cfg.Reva.StorageOC.URL, - cfg.Reva.StorageOC.MountID: cfg.Reva.StorageOC.URL, - cfg.Reva.StorageS3.MountPath: cfg.Reva.StorageS3.URL, - cfg.Reva.StorageS3.MountID: cfg.Reva.StorageS3.URL, - cfg.Reva.StorageWND.MountPath: cfg.Reva.StorageWND.URL, - cfg.Reva.StorageWND.MountID: cfg.Reva.StorageWND.URL, - cfg.Reva.StorageCustom.MountPath: cfg.Reva.StorageCustom.URL, - cfg.Reva.StorageCustom.MountID: cfg.Reva.StorageCustom.URL, - cfg.Reva.StoragePublicLink.MountPath: cfg.Reva.StoragePublicLink.URL, + cfg.Reva.StorageHome.MountPath: cfg.Reva.StorageHome.Endpoint, + cfg.Reva.StorageHome.MountID: cfg.Reva.StorageHome.Endpoint, + cfg.Reva.StorageUsers.MountPath: cfg.Reva.StorageUsers.Endpoint, + cfg.Reva.StorageUsers.MountID: cfg.Reva.StorageUsers.Endpoint, + cfg.Reva.StoragePublicLink.MountPath: cfg.Reva.StoragePublicLink.Endpoint, // public link storage returns the mount id of the actual storage + // medatada storage not part of the global namespace } } diff --git a/storage/pkg/command/root.go b/storage/pkg/command/root.go index d6abe0acf9..60dbadc967 100644 --- a/storage/pkg/command/root.go +++ b/storage/pkg/command/root.go @@ -80,15 +80,10 @@ func Execute() error { AuthBasic(cfg), AuthBearer(cfg), Sharing(cfg), - StorageRoot(cfg), StorageHome(cfg), - StorageHomeData(cfg), + StorageUsers(cfg), StoragePublicLink(cfg), - StorageOC(cfg), StorageMetadata(cfg), - StorageOCData(cfg), - StorageEOS(cfg), - StorageEOSData(cfg), Health(cfg), }, } diff --git a/storage/pkg/command/sharing.go b/storage/pkg/command/sharing.go index 8605a3a55a..4d48fb8e3a 100644 --- a/storage/pkg/command/sharing.go +++ b/storage/pkg/command/sharing.go @@ -73,18 +73,18 @@ func Sharing(cfg *config.Config) *cli.Command { rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": cfg.Reva.Users.MaxCPUs, + "max_cpus": cfg.Reva.Sharing.MaxCPUs, "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "sharing", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.Sharing.Network, - "address": cfg.Reva.Sharing.Addr, + "network": cfg.Reva.Sharing.GRPCNetwork, + "address": cfg.Reva.Sharing.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "usershareprovider": map[string]interface{}{ diff --git a/storage/pkg/command/storageeos.go b/storage/pkg/command/storageeos.go deleted file mode 100644 index a28630d88c..0000000000 --- a/storage/pkg/command/storageeos.go +++ /dev/null @@ -1,175 +0,0 @@ -package command - -import ( - "context" - "os" - "os/signal" - "path" - "time" - - "github.com/cs3org/reva/cmd/revad/runtime" - "github.com/gofrs/uuid" - "github.com/micro/cli/v2" - "github.com/oklog/run" - "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/storage/pkg/server/debug" -) - -// StorageEOS is the entrypoint for the storage-eos command. -func StorageEOS(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-eos", - Usage: "Start storage-eos service", - Flags: flagset.StorageEOSWithConfig(cfg), - Before: func(c *cli.Context) error { - cfg.Reva.StorageEOS.Services = c.StringSlice("service") - - return nil - }, - Action: func(c *cli.Context) error { - logger := NewLogger(cfg) - - if cfg.Tracing.Enabled { - switch t := cfg.Tracing.Type; t { - case "agent": - logger.Error(). - Str("type", t). - Msg("Storage only supports the jaeger tracing backend") - - case "jaeger": - logger.Info(). - Str("type", t). - Msg("configuring storage to use the jaeger tracing backend") - - case "zipkin": - logger.Error(). - Str("type", t). - Msg("Storage only supports the jaeger tracing backend") - - default: - logger.Warn(). - Str("type", t). - Msg("Unknown tracing backend") - } - - } else { - logger.Debug(). - Msg("Tracing is not enabled") - } - - var ( - gr = run.Group{} - ctx, cancel = context.WithCancel(context.Background()) - //metrics = metrics.New() - ) - - defer cancel() - - { - uuid := uuid.Must(uuid.NewV4()) - pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") - - rcfg := map[string]interface{}{ - "core": map[string]interface{}{ - "max_cpus": cfg.Reva.StorageEOS.MaxCPUs, - "tracing_enabled": cfg.Tracing.Enabled, - "tracing_endpoint": cfg.Tracing.Endpoint, - "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-eos", - }, - "shared": map[string]interface{}{ - "jwt_secret": cfg.Reva.JWTSecret, - }, - "grpc": map[string]interface{}{ - "network": cfg.Reva.StorageEOS.Network, - "address": cfg.Reva.StorageEOS.Addr, - // TODO build services dynamically - "services": map[string]interface{}{ - "storageprovider": map[string]interface{}{ - "driver": cfg.Reva.StorageEOS.Driver, - "drivers": drivers(cfg), - "mount_path": cfg.Reva.StorageEOS.MountPath, - "mount_id": cfg.Reva.StorageEOS.MountID, - "expose_data_server": cfg.Reva.StorageEOS.ExposeDataServer, - // TODO use cfg.Reva.SStorageEOSData.URL, ? - "data_server_url": cfg.Reva.StorageEOS.DataServerURL, - }, - }, - }, - } - - gr.Add(func() error { - runtime.RunWithOptions( - rcfg, - pidFile, - runtime.WithLogger(&logger.Logger), - ) - return nil - }, func(_ error) { - logger.Info(). - Str("server", c.Command.Name). - Msg("Shutting down server") - - cancel() - }) - } - - { - server, err := debug.Server( - debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageEOS.DebugAddr), - debug.Logger(logger), - debug.Context(ctx), - debug.Config(cfg), - ) - - if err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to initialize server") - - return err - } - - gr.Add(func() error { - return server.ListenAndServe() - }, func(_ error) { - ctx, timeout := context.WithTimeout(ctx, 5*time.Second) - - defer timeout() - defer cancel() - - if err := server.Shutdown(ctx); err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to shutdown server") - } else { - logger.Info(). - Str("server", c.Command.Name+"-debug"). - Msg("Shutting down server") - } - }) - } - - { - stop := make(chan os.Signal, 1) - - gr.Add(func() error { - signal.Notify(stop, os.Interrupt) - - <-stop - - return nil - }, func(err error) { - close(stop) - cancel() - }) - } - - return gr.Run() - }, - } -} diff --git a/storage/pkg/command/storageeosdata.go b/storage/pkg/command/storageeosdata.go deleted file mode 100644 index 2c288ed9d5..0000000000 --- a/storage/pkg/command/storageeosdata.go +++ /dev/null @@ -1,175 +0,0 @@ -package command - -import ( - "context" - "os" - "os/signal" - "path" - "time" - - "github.com/cs3org/reva/cmd/revad/runtime" - "github.com/gofrs/uuid" - "github.com/micro/cli/v2" - "github.com/oklog/run" - "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/storage/pkg/server/debug" -) - -// StorageEOSData is the entrypoint for the storage-oc-data command. -func StorageEOSData(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-eos-data", - Usage: "Start storage-eos-data service", - Flags: flagset.StorageEOSDataWithConfig(cfg), - Before: func(c *cli.Context) error { - cfg.Reva.StorageEOSData.Services = c.StringSlice("service") - - return nil - }, - Action: func(c *cli.Context) error { - logger := NewLogger(cfg) - - if cfg.Tracing.Enabled { - switch t := cfg.Tracing.Type; t { - case "agent": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - case "jaeger": - logger.Info(). - Str("type", t). - Msg("configuring storage to use the jaeger tracing backend") - - case "zipkin": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - default: - logger.Warn(). - Str("type", t). - Msg("Unknown tracing backend") - } - - } else { - logger.Debug(). - Msg("Tracing is not enabled") - } - - var ( - gr = run.Group{} - ctx, cancel = context.WithCancel(context.Background()) - //metrics = metrics.New() - ) - - defer cancel() - - { - uuid := uuid.Must(uuid.NewV4()) - pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") - - rcfg := map[string]interface{}{ - "core": map[string]interface{}{ - "max_cpus": cfg.Reva.StorageEOSData.MaxCPUs, - "tracing_enabled": cfg.Tracing.Enabled, - "tracing_endpoint": cfg.Tracing.Endpoint, - "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-eos-data", - }, - "shared": map[string]interface{}{ - "jwt_secret": cfg.Reva.JWTSecret, - "gatewaysvc": cfg.Reva.Gateway.URL, // Todo or address? - }, - "http": map[string]interface{}{ - "network": cfg.Reva.StorageEOSData.Network, - "address": cfg.Reva.StorageEOSData.Addr, - // TODO build services dynamically - "services": map[string]interface{}{ - "dataprovider": map[string]interface{}{ - "prefix": cfg.Reva.StorageEOSData.Prefix, - "driver": cfg.Reva.StorageEOSData.Driver, - "drivers": drivers(cfg), - "timeout": 86400, - "insecure": true, - "disable_tus": false, - }, - }, - }, - } - - gr.Add(func() error { - runtime.RunWithOptions( - rcfg, - pidFile, - runtime.WithLogger(&logger.Logger), - ) - return nil - }, func(_ error) { - logger.Info(). - Str("server", c.Command.Name). - Msg("Shutting down server") - - cancel() - }) - } - - { - server, err := debug.Server( - debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageEOSData.DebugAddr), - debug.Logger(logger), - debug.Context(ctx), - debug.Config(cfg), - ) - - if err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to initialize server") - - return err - } - - gr.Add(func() error { - return server.ListenAndServe() - }, func(_ error) { - ctx, timeout := context.WithTimeout(ctx, 5*time.Second) - - defer timeout() - defer cancel() - - if err := server.Shutdown(ctx); err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to shutdown server") - } else { - logger.Info(). - Str("server", c.Command.Name+"-debug"). - Msg("Shutting down server") - } - }) - } - - { - stop := make(chan os.Signal, 1) - - gr.Add(func() error { - signal.Notify(stop, os.Interrupt) - - <-stop - - return nil - }, func(err error) { - close(stop) - cancel() - }) - } - - return gr.Run() - }, - } -} diff --git a/storage/pkg/command/storagehome.go b/storage/pkg/command/storagehome.go index edfa592404..3e7cee1922 100644 --- a/storage/pkg/command/storagehome.go +++ b/storage/pkg/command/storagehome.go @@ -80,18 +80,19 @@ func StorageHome(cfg *config.Config) *cli.Command { } rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": cfg.Reva.Users.MaxCPUs, + "max_cpus": cfg.Reva.StorageHome.MaxCPUs, "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-home", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, + "gatewaysvc": cfg.Reva.Gateway.Endpoint, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.StorageHome.Network, - "address": cfg.Reva.StorageHome.Addr, + "network": cfg.Reva.StorageHome.GRPCNetwork, + "address": cfg.Reva.StorageHome.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "storageprovider": map[string]interface{}{ @@ -100,8 +101,22 @@ func StorageHome(cfg *config.Config) *cli.Command { "mount_path": cfg.Reva.StorageHome.MountPath, "mount_id": cfg.Reva.StorageHome.MountID, "expose_data_server": cfg.Reva.StorageHome.ExposeDataServer, - // TODO use cfg.Reva.StorageHomeData.URL, ? - "data_server_url": cfg.Reva.StorageHome.DataServerURL, + "data_server_url": cfg.Reva.StorageHome.DataServerURL, + }, + }, + }, + "http": map[string]interface{}{ + "network": cfg.Reva.StorageHome.HTTPNetwork, + "address": cfg.Reva.StorageHome.HTTPAddr, + // TODO build services dynamically + "services": map[string]interface{}{ + "dataprovider": map[string]interface{}{ + "prefix": cfg.Reva.StorageHome.HTTPPrefix, + "driver": cfg.Reva.StorageHome.Driver, + "drivers": drivers(cfg), + "timeout": 86400, + "insecure": true, + "disable_tus": false, }, }, }, diff --git a/storage/pkg/command/storagemetadata.go b/storage/pkg/command/storagemetadata.go index 1edd5e1de8..c21277e75b 100644 --- a/storage/pkg/command/storagemetadata.go +++ b/storage/pkg/command/storagemetadata.go @@ -89,38 +89,39 @@ func StorageMetadata(cfg *config.Config) *cli.Command { rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": "100", - "tracing_enabled": false, + "max_cpus": cfg.Reva.StorageMetadata.MaxCPUs, + "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-metadata", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, + "gatewaysvc": cfg.Reva.Gateway.Endpoint, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.StorageMetadata.Network, - "address": cfg.Reva.StorageMetadata.Addr, + "network": cfg.Reva.StorageMetadata.GRPCNetwork, + "address": cfg.Reva.StorageMetadata.GRPCAddr, "interceptors": map[string]interface{}{ "log": map[string]interface{}{}, }, "services": map[string]interface{}{ "storageprovider": map[string]interface{}{ "mount_path": "/meta", - "data_server_url": cfg.Reva.StorageMetadataData.URL, "driver": cfg.Reva.StorageMetadata.Driver, "drivers": drivers(cfg), + "data_server_url": cfg.Reva.StorageMetadata.DataServerURL, }, }, }, "http": map[string]interface{}{ - "network": cfg.Reva.StorageMetadataData.Network, - "address": cfg.Reva.StorageMetadataData.Addr, + "network": cfg.Reva.StorageMetadata.HTTPNetwork, + "address": cfg.Reva.StorageMetadata.HTTPAddr, // TODO build services dynamically "services": map[string]interface{}{ "dataprovider": map[string]interface{}{ "prefix": "data", - "driver": cfg.Reva.StorageMetadataData.Driver, + "driver": cfg.Reva.StorageMetadata.Driver, "drivers": drivers(cfg), "timeout": 86400, "insecure": true, diff --git a/storage/pkg/command/storageoc.go b/storage/pkg/command/storageoc.go deleted file mode 100644 index 5a869129b3..0000000000 --- a/storage/pkg/command/storageoc.go +++ /dev/null @@ -1,175 +0,0 @@ -package command - -import ( - "context" - "os" - "os/signal" - "path" - "time" - - "github.com/cs3org/reva/cmd/revad/runtime" - "github.com/gofrs/uuid" - "github.com/micro/cli/v2" - "github.com/oklog/run" - "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/storage/pkg/server/debug" -) - -// StorageOC is the entrypoint for the storage-oc command. -func StorageOC(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-oc", - Usage: "Start storage-oc service", - Flags: flagset.StorageOCWithConfig(cfg), - Before: func(c *cli.Context) error { - cfg.Reva.StorageOC.Services = c.StringSlice("service") - - return nil - }, - Action: func(c *cli.Context) error { - logger := NewLogger(cfg) - - if cfg.Tracing.Enabled { - switch t := cfg.Tracing.Type; t { - case "agent": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - case "jaeger": - logger.Info(). - Str("type", t). - Msg("configuring storage to use the jaeger tracing backend") - - case "zipkin": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - default: - logger.Warn(). - Str("type", t). - Msg("Unknown tracing backend") - } - - } else { - logger.Debug(). - Msg("Tracing is not enabled") - } - - var ( - gr = run.Group{} - ctx, cancel = context.WithCancel(context.Background()) - //metrics = metrics.New() - ) - - defer cancel() - - { - uuid := uuid.Must(uuid.NewV4()) - pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") - - rcfg := map[string]interface{}{ - "core": map[string]interface{}{ - "max_cpus": cfg.Reva.StorageOC.MaxCPUs, - "tracing_enabled": cfg.Tracing.Enabled, - "tracing_endpoint": cfg.Tracing.Endpoint, - "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-oc", - }, - "shared": map[string]interface{}{ - "jwt_secret": cfg.Reva.JWTSecret, - }, - "grpc": map[string]interface{}{ - "network": cfg.Reva.StorageOC.Network, - "address": cfg.Reva.StorageOC.Addr, - // TODO build services dynamically - "services": map[string]interface{}{ - "storageprovider": map[string]interface{}{ - "driver": cfg.Reva.StorageOC.Driver, - "drivers": drivers(cfg), - "mount_path": cfg.Reva.StorageOC.MountPath, - "mount_id": cfg.Reva.StorageOC.MountID, - "expose_data_server": cfg.Reva.StorageOC.ExposeDataServer, - // TODO use cfg.Reva.SStorageOCData.URL, ? - "data_server_url": cfg.Reva.StorageOC.DataServerURL, - }, - }, - }, - } - - gr.Add(func() error { - runtime.RunWithOptions( - rcfg, - pidFile, - runtime.WithLogger(&logger.Logger), - ) - return nil - }, func(_ error) { - logger.Info(). - Str("server", c.Command.Name). - Msg("Shutting down server") - - cancel() - }) - } - - { - server, err := debug.Server( - debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageOC.DebugAddr), - debug.Logger(logger), - debug.Context(ctx), - debug.Config(cfg), - ) - - if err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to initialize server") - - return err - } - - gr.Add(func() error { - return server.ListenAndServe() - }, func(_ error) { - ctx, timeout := context.WithTimeout(ctx, 5*time.Second) - - defer timeout() - defer cancel() - - if err := server.Shutdown(ctx); err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to shutdown server") - } else { - logger.Info(). - Str("server", c.Command.Name+"-debug"). - Msg("Shutting down server") - } - }) - } - - { - stop := make(chan os.Signal, 1) - - gr.Add(func() error { - signal.Notify(stop, os.Interrupt) - - <-stop - - return nil - }, func(err error) { - close(stop) - cancel() - }) - } - - return gr.Run() - }, - } -} diff --git a/storage/pkg/command/storageocdata.go b/storage/pkg/command/storageocdata.go deleted file mode 100644 index a91b3bc0f3..0000000000 --- a/storage/pkg/command/storageocdata.go +++ /dev/null @@ -1,175 +0,0 @@ -package command - -import ( - "context" - "os" - "os/signal" - "path" - "time" - - "github.com/cs3org/reva/cmd/revad/runtime" - "github.com/gofrs/uuid" - "github.com/micro/cli/v2" - "github.com/oklog/run" - "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/storage/pkg/server/debug" -) - -// StorageOCData is the entrypoint for the storage-oc-data command. -func StorageOCData(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-oc-data", - Usage: "Start storage-oc-data service", - Flags: flagset.StorageOCDataWithConfig(cfg), - Before: func(c *cli.Context) error { - cfg.Reva.StorageOCData.Services = c.StringSlice("service") - - return nil - }, - Action: func(c *cli.Context) error { - logger := NewLogger(cfg) - - if cfg.Tracing.Enabled { - switch t := cfg.Tracing.Type; t { - case "agent": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - case "jaeger": - logger.Info(). - Str("type", t). - Msg("configuring storage to use the jaeger tracing backend") - - case "zipkin": - logger.Error(). - Str("type", t). - Msg("Reva only supports the jaeger tracing backend") - - default: - logger.Warn(). - Str("type", t). - Msg("Unknown tracing backend") - } - - } else { - logger.Debug(). - Msg("Tracing is not enabled") - } - - var ( - gr = run.Group{} - ctx, cancel = context.WithCancel(context.Background()) - //metrics = metrics.New() - ) - - defer cancel() - - { - uuid := uuid.Must(uuid.NewV4()) - pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") - - rcfg := map[string]interface{}{ - "core": map[string]interface{}{ - "max_cpus": cfg.Reva.StorageOCData.MaxCPUs, - "tracing_enabled": cfg.Tracing.Enabled, - "tracing_endpoint": cfg.Tracing.Endpoint, - "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-oc-data", - }, - "shared": map[string]interface{}{ - "jwt_secret": cfg.Reva.JWTSecret, - "gatewaysvc": cfg.Reva.Gateway.URL, // Todo or address? - }, - "http": map[string]interface{}{ - "network": cfg.Reva.StorageOCData.Network, - "address": cfg.Reva.StorageOCData.Addr, - // TODO build services dynamically - "services": map[string]interface{}{ - "dataprovider": map[string]interface{}{ - "prefix": cfg.Reva.StorageOCData.Prefix, - "driver": cfg.Reva.StorageOCData.Driver, - "drivers": drivers(cfg), - "timeout": 86400, - "insecure": true, - "disable_tus": false, - }, - }, - }, - } - - gr.Add(func() error { - runtime.RunWithOptions( - rcfg, - pidFile, - runtime.WithLogger(&logger.Logger), - ) - return nil - }, func(_ error) { - logger.Info(). - Str("server", c.Command.Name). - Msg("Shutting down server") - - cancel() - }) - } - - { - server, err := debug.Server( - debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageOCData.DebugAddr), - debug.Logger(logger), - debug.Context(ctx), - debug.Config(cfg), - ) - - if err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to initialize server") - - return err - } - - gr.Add(func() error { - return server.ListenAndServe() - }, func(_ error) { - ctx, timeout := context.WithTimeout(ctx, 5*time.Second) - - defer timeout() - defer cancel() - - if err := server.Shutdown(ctx); err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to shutdown server") - } else { - logger.Info(). - Str("server", c.Command.Name+"-debug"). - Msg("Shutting down server") - } - }) - } - - { - stop := make(chan os.Signal, 1) - - gr.Add(func() error { - signal.Notify(stop, os.Interrupt) - - <-stop - - return nil - }, func(err error) { - close(stop) - cancel() - }) - } - - return gr.Run() - }, - } -} diff --git a/storage/pkg/command/storagepubliclink.go b/storage/pkg/command/storagepubliclink.go index 0a962ec206..badbc24535 100644 --- a/storage/pkg/command/storagepubliclink.go +++ b/storage/pkg/command/storagepubliclink.go @@ -72,27 +72,28 @@ func StoragePublicLink(cfg *config.Config) *cli.Command { "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-public-link", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, + "gatewaysvc": cfg.Reva.Gateway.Endpoint, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.StoragePublicLink.Network, - "address": cfg.Reva.StoragePublicLink.Addr, + "network": cfg.Reva.StoragePublicLink.GRPCNetwork, + "address": cfg.Reva.StoragePublicLink.GRPCAddr, "interceptors": map[string]interface{}{ "log": map[string]interface{}{}, }, "services": map[string]interface{}{ "publicstorageprovider": map[string]interface{}{ "mount_path": cfg.Reva.StoragePublicLink.MountPath, - "gateway_addr": cfg.Reva.Gateway.URL, + "gateway_addr": cfg.Reva.Gateway.Endpoint, }, "authprovider": map[string]interface{}{ "auth_manager": "publicshares", "auth_managers": map[string]interface{}{ "publicshares": map[string]interface{}{ - "gateway_addr": cfg.Reva.Gateway.URL, + "gateway_addr": cfg.Reva.Gateway.Endpoint, }, }, }, diff --git a/storage/pkg/command/storageroot.go b/storage/pkg/command/storageroot.go deleted file mode 100644 index 7fa81c6ebc..0000000000 --- a/storage/pkg/command/storageroot.go +++ /dev/null @@ -1,174 +0,0 @@ -package command - -import ( - "context" - "os" - "os/signal" - "path" - "time" - - "github.com/cs3org/reva/cmd/revad/runtime" - "github.com/gofrs/uuid" - "github.com/micro/cli/v2" - "github.com/oklog/run" - "github.com/owncloud/ocis/storage/pkg/config" - "github.com/owncloud/ocis/storage/pkg/flagset" - "github.com/owncloud/ocis/storage/pkg/server/debug" -) - -// StorageRoot is the entrypoint for the storage-root command. -func StorageRoot(cfg *config.Config) *cli.Command { - return &cli.Command{ - Name: "storage-root", - Usage: "Start storage-root service", - Flags: flagset.StorageRootWithConfig(cfg), - Before: func(c *cli.Context) error { - cfg.Reva.StorageRoot.Services = c.StringSlice("service") - - return nil - }, - Action: func(c *cli.Context) error { - logger := NewLogger(cfg) - - if cfg.Tracing.Enabled { - switch t := cfg.Tracing.Type; t { - case "agent": - logger.Error(). - Str("type", t). - Msg("Storage only supports the jaeger tracing backend") - - case "jaeger": - logger.Info(). - Str("type", t). - Msg("configuring storage to use the jaeger tracing backend") - - case "zipkin": - logger.Error(). - Str("type", t). - Msg("Storage only supports the jaeger tracing backend") - - default: - logger.Warn(). - Str("type", t). - Msg("Unknown tracing backend") - } - - } else { - logger.Debug(). - Msg("Tracing is not enabled") - } - - var ( - gr = run.Group{} - ctx, cancel = context.WithCancel(context.Background()) - //metrics = metrics.New() - ) - - defer cancel() - - { - uuid := uuid.Must(uuid.NewV4()) - pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") - - rcfg := map[string]interface{}{ - "core": map[string]interface{}{ - "max_cpus": cfg.Reva.StorageRoot.MaxCPUs, - "tracing_enabled": cfg.Tracing.Enabled, - "tracing_endpoint": cfg.Tracing.Endpoint, - "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-root", - }, - "shared": map[string]interface{}{ - "jwt_secret": cfg.Reva.JWTSecret, - }, - "grpc": map[string]interface{}{ - "network": cfg.Reva.StorageRoot.Network, - "address": cfg.Reva.StorageRoot.Addr, - // TODO build services dynamically - "services": map[string]interface{}{ - "storageprovider": map[string]interface{}{ - "driver": cfg.Reva.StorageRoot.Driver, - "drivers": drivers(cfg), - "mount_path": cfg.Reva.StorageRoot.MountPath, - "mount_id": cfg.Reva.StorageRoot.MountID, - "expose_data_server": cfg.Reva.StorageRoot.ExposeDataServer, - "data_server_url": cfg.Reva.StorageRoot.DataServerURL, - }, - }, - }, - } - - gr.Add(func() error { - runtime.RunWithOptions( - rcfg, - pidFile, - runtime.WithLogger(&logger.Logger), - ) - return nil - }, func(_ error) { - logger.Info(). - Str("server", c.Command.Name). - Msg("Shutting down server") - - cancel() - }) - } - - { - server, err := debug.Server( - debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageRoot.DebugAddr), - debug.Logger(logger), - debug.Context(ctx), - debug.Config(cfg), - ) - - if err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to initialize server") - - return err - } - - gr.Add(func() error { - return server.ListenAndServe() - }, func(_ error) { - ctx, timeout := context.WithTimeout(ctx, 5*time.Second) - - defer timeout() - defer cancel() - - if err := server.Shutdown(ctx); err != nil { - logger.Info(). - Err(err). - Str("server", c.Command.Name+"-debug"). - Msg("Failed to shutdown server") - } else { - logger.Info(). - Str("server", c.Command.Name+"-debug"). - Msg("Shutting down server") - } - }) - } - - { - stop := make(chan os.Signal, 1) - - gr.Add(func() error { - signal.Notify(stop, os.Interrupt) - - <-stop - - return nil - }, func(err error) { - close(stop) - cancel() - }) - } - - return gr.Run() - }, - } -} diff --git a/storage/pkg/command/storagehomedata.go b/storage/pkg/command/storageusers.go similarity index 73% rename from storage/pkg/command/storagehomedata.go rename to storage/pkg/command/storageusers.go index 063f759260..6e752adc0f 100644 --- a/storage/pkg/command/storagehomedata.go +++ b/storage/pkg/command/storageusers.go @@ -16,14 +16,14 @@ import ( "github.com/owncloud/ocis/storage/pkg/server/debug" ) -// StorageHomeData is the entrypoint for the storage-home-data command. -func StorageHomeData(cfg *config.Config) *cli.Command { +// StorageUsers is the entrypoint for the storage-users command. +func StorageUsers(cfg *config.Config) *cli.Command { return &cli.Command{ - Name: "storage-home-data", - Usage: "Start storage-home-data service", - Flags: flagset.StorageHomeDataWithConfig(cfg), + Name: "storage-users", + Usage: "Start storage-users service", + Flags: flagset.StorageUsersWithConfig(cfg), Before: func(c *cli.Context) error { - cfg.Reva.StorageHomeData.Services = c.StringSlice("service") + cfg.Reva.StorageHome.Services = c.StringSlice("service") return nil }, @@ -80,24 +80,39 @@ func StorageHomeData(cfg *config.Config) *cli.Command { } rcfg := map[string]interface{}{ "core": map[string]interface{}{ - "max_cpus": cfg.Reva.Users.MaxCPUs, + "max_cpus": cfg.Reva.StorageUsers.MaxCPUs, "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "storage-home-data", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, - "gatewaysvc": cfg.Reva.Gateway.URL, // Todo or address? + "gatewaysvc": cfg.Reva.Gateway.Endpoint, + }, + "grpc": map[string]interface{}{ + "network": cfg.Reva.StorageUsers.GRPCNetwork, + "address": cfg.Reva.StorageUsers.GRPCAddr, + // TODO build services dynamically + "services": map[string]interface{}{ + "storageprovider": map[string]interface{}{ + "driver": cfg.Reva.StorageUsers.Driver, + "drivers": drivers(cfg), + "mount_path": cfg.Reva.StorageUsers.MountPath, + "mount_id": cfg.Reva.StorageUsers.MountID, + "expose_data_server": cfg.Reva.StorageUsers.ExposeDataServer, + "data_server_url": cfg.Reva.StorageUsers.DataServerURL, + }, + }, }, "http": map[string]interface{}{ - "network": cfg.Reva.StorageHomeData.Network, - "address": cfg.Reva.StorageHomeData.Addr, + "network": cfg.Reva.StorageUsers.HTTPNetwork, + "address": cfg.Reva.StorageUsers.HTTPAddr, // TODO build services dynamically "services": map[string]interface{}{ "dataprovider": map[string]interface{}{ - "prefix": cfg.Reva.StorageHomeData.Prefix, - "driver": cfg.Reva.StorageHomeData.Driver, + "prefix": cfg.Reva.StorageUsers.HTTPPrefix, + "driver": cfg.Reva.StorageUsers.Driver, "drivers": drivers(cfg), "timeout": 86400, "insecure": true, @@ -126,7 +141,7 @@ func StorageHomeData(cfg *config.Config) *cli.Command { { server, err := debug.Server( debug.Name(c.Command.Name+"-debug"), - debug.Addr(cfg.Reva.StorageHomeData.DebugAddr), + debug.Addr(cfg.Reva.StorageUsers.DebugAddr), debug.Logger(logger), debug.Context(ctx), debug.Config(cfg), diff --git a/storage/pkg/command/users.go b/storage/pkg/command/users.go index 28f3e6b115..d81c85d0cb 100644 --- a/storage/pkg/command/users.go +++ b/storage/pkg/command/users.go @@ -76,14 +76,14 @@ func Users(cfg *config.Config) *cli.Command { "tracing_enabled": cfg.Tracing.Enabled, "tracing_endpoint": cfg.Tracing.Endpoint, "tracing_collector": cfg.Tracing.Collector, - "tracing_service_name": "users", + "tracing_service_name": c.Command.Name, }, "shared": map[string]interface{}{ "jwt_secret": cfg.Reva.JWTSecret, }, "grpc": map[string]interface{}{ - "network": cfg.Reva.Users.Network, - "address": cfg.Reva.Users.Addr, + "network": cfg.Reva.Users.GRPCNetwork, + "address": cfg.Reva.Users.GRPCAddr, // TODO build services dynamically "services": map[string]interface{}{ "userprovider": map[string]interface{}{ diff --git a/storage/pkg/config/config.go b/storage/pkg/config/config.go index 53cf44ec68..69c48d8326 100644 --- a/storage/pkg/config/config.go +++ b/storage/pkg/config/config.go @@ -46,14 +46,19 @@ type Port struct { // MaxCPUs can be a number or a percentage MaxCPUs string LogLevel string - // Network can be tcp, udp or unix - Network string - // Addr to listen on, hostname:port (0.0.0.0:9999 for all interfaces) or socket (/var/run/reva/sock) - Addr string + // GRPCNetwork can be tcp, udp or unix + GRPCNetwork string + // GRPCAddr to listen on, hostname:port (0.0.0.0:9999 for all interfaces) or socket (/var/run/reva/sock) + GRPCAddr string + // Protocol can be grpc or http + // HTTPNetwork can be tcp, udp or unix + HTTPNetwork string + // HTTPAddr to listen on, hostname:port (0.0.0.0:9100 for all interfaces) or socket (/var/run/reva/sock) + HTTPAddr string // Protocol can be grpc or http Protocol string - // URL is used by the gateway and registries (eg http://localhost:9100 or https://cloud.example.com) - URL string + // Endpoint is used by the gateway and registries (eg localhost:9100 or cloud.example.com) + Endpoint string // DebugAddr for the debug endpoint to bind to DebugAddr string // Services can be used to give a list of services that should be started on this port @@ -77,6 +82,13 @@ type FrontendPort struct { DatagatewayPrefix string OCDavPrefix string OCSPrefix string + PublicURL string +} + +// DataGatewayPort has a public url +type DataGatewayPort struct { + Port + PublicURL string } // StoragePort defines the available storage configuration. @@ -86,10 +98,11 @@ type StoragePort struct { MountPath string MountID string ExposeDataServer bool - DataServerURL string + // url the data gateway will use to route requests + DataServerURL string // for HTTP ports with only one http service - Prefix string + HTTPPrefix string TempFolder string } @@ -273,32 +286,19 @@ type Reva struct { OCDav OCDav Storages StorageConfig // Ports are used to configure which services to start on which port - Frontend FrontendPort - DataGateway Port - Gateway Gateway - StorageRegistry StorageRegistry - Users Users - AuthProvider Users - AuthBasic Port - AuthBearer Port - Sharing Sharing - StorageRoot StoragePort - StorageRootData StoragePort - StorageHome StoragePort - StorageHomeData StoragePort - StorageEOS StoragePort - StorageEOSData StoragePort - StorageOC StoragePort - StorageOCData StoragePort - StorageS3 StoragePort - StorageS3Data StoragePort - StorageWND StoragePort - StorageWNDData StoragePort - StorageCustom StoragePort - StorageCustomData StoragePort - StoragePublicLink PublicStorage - StorageMetadata StoragePort - StorageMetadataData StoragePort + Frontend FrontendPort + DataGateway DataGatewayPort + Gateway Gateway + StorageRegistry StorageRegistry + Users Users + AuthProvider Users + AuthBasic Port + AuthBearer Port + Sharing Sharing + StorageHome StoragePort + StorageUsers StoragePort + StoragePublicLink PublicStorage + StorageMetadata StoragePort // Configs can be used to configure the reva instance. // Services and Ports will be ignored if this is used Configs map[string]interface{} diff --git a/storage/pkg/flagset/authbasic.go b/storage/pkg/flagset/authbasic.go index 75d5b04baf..0a9b3262b6 100644 --- a/storage/pkg/flagset/authbasic.go +++ b/storage/pkg/flagset/authbasic.go @@ -43,29 +43,15 @@ func AuthBasicWithConfig(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage auth-basic service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_AUTH_BASIC_NETWORK"}, - Destination: &cfg.Reva.AuthBasic.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_AUTH_BASIC_PROTOCOL"}, - Destination: &cfg.Reva.AuthBasic.Protocol, + EnvVars: []string{"STORAGE_AUTH_BASIC_GRPC_NETWORK"}, + Destination: &cfg.Reva.AuthBasic.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9146", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_AUTH_BASIC_ADDR"}, - Destination: &cfg.Reva.AuthBasic.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9146", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_AUTH_BASIC_URL"}, - Destination: &cfg.Reva.AuthBasic.URL, + EnvVars: []string{"STORAGE_AUTH_BASIC_GRPC_ADDR"}, + Destination: &cfg.Reva.AuthBasic.GRPCAddr, }, &cli.StringSliceFlag{ Name: "service", diff --git a/storage/pkg/flagset/authbearer.go b/storage/pkg/flagset/authbearer.go index 0c6edf4088..bc0a55b894 100644 --- a/storage/pkg/flagset/authbearer.go +++ b/storage/pkg/flagset/authbearer.go @@ -48,14 +48,14 @@ func AuthBearerWithConfig(cfg *config.Config) []cli.Flag { Destination: &cfg.Reva.OIDC.IDClaim, }, &cli.StringFlag{ - Name: "oidc-uid-claim", + Name: "oidc-uid-claim", Value: "", Usage: "OIDC uid claim", EnvVars: []string{"STORAGE_OIDC_UID_CLAIM"}, Destination: &cfg.Reva.OIDC.UIDClaim, }, &cli.StringFlag{ - Name: "oidc-gid-claim", + Name: "oidc-gid-claim", Value: "", Usage: "OIDC gid claim", EnvVars: []string{"STORAGE_OIDC_GID_CLAIM"}, @@ -70,29 +70,15 @@ func AuthBearerWithConfig(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_AUTH_BEARER_NETWORK"}, - Destination: &cfg.Reva.AuthBearer.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_AUTH_BEARER_PROTOCOL"}, - Destination: &cfg.Reva.AuthBearer.Protocol, + EnvVars: []string{"STORAGE_AUTH_BEARER_GRPC_NETWORK"}, + Destination: &cfg.Reva.AuthBearer.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9148", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_AUTH_BEARER_ADDR"}, - Destination: &cfg.Reva.AuthBearer.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9148", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_AUTH_BEARER_URL"}, - Destination: &cfg.Reva.AuthBearer.URL, + EnvVars: []string{"STORAGE_AUTH_BEARER_GRPC_ADDR"}, + Destination: &cfg.Reva.AuthBearer.GRPCAddr, }, &cli.StringSliceFlag{ Name: "service", diff --git a/storage/pkg/flagset/frontend.go b/storage/pkg/flagset/frontend.go index 6bb97ddea1..b3f5696eb0 100644 --- a/storage/pkg/flagset/frontend.go +++ b/storage/pkg/flagset/frontend.go @@ -56,29 +56,22 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_FRONTEND_NETWORK"}, - Destination: &cfg.Reva.Frontend.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "http", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_FRONTEND_PROTOCOL"}, - Destination: &cfg.Reva.Frontend.Protocol, + EnvVars: []string{"STORAGE_FRONTEND_HTTP_NETWORK"}, + Destination: &cfg.Reva.Frontend.HTTPNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9140", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_FRONTEND_ADDR"}, - Destination: &cfg.Reva.Frontend.Addr, + EnvVars: []string{"STORAGE_FRONTEND_HTTP_ADDR"}, + Destination: &cfg.Reva.Frontend.HTTPAddr, }, &cli.StringFlag{ - Name: "url", + Name: "public-url", Value: "https://localhost:9200", Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_FRONTEND_URL"}, - Destination: &cfg.Reva.Frontend.URL, + EnvVars: []string{"STORAGE_FRONTEND_PUBLIC_URL"}, + Destination: &cfg.Reva.Frontend.PublicURL, }, &cli.StringSliceFlag{ Name: "service", @@ -114,8 +107,8 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag { Name: "gateway-url", Value: "localhost:9142", Usage: "URL to use for the storage gateway service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, }, // Chunking diff --git a/storage/pkg/flagset/gateway.go b/storage/pkg/flagset/gateway.go index 4a8c8e456d..95c25a933f 100644 --- a/storage/pkg/flagset/gateway.go +++ b/storage/pkg/flagset/gateway.go @@ -45,29 +45,22 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_GATEWAY_NETWORK"}, - Destination: &cfg.Reva.Gateway.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_GATEWAY_PROTOCOL"}, - Destination: &cfg.Reva.Gateway.Protocol, + EnvVars: []string{"STORAGE_GATEWAY_GRPC_NETWORK"}, + Destination: &cfg.Reva.Gateway.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9142", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_GATEWAY_ADDR"}, - Destination: &cfg.Reva.Gateway.Addr, + EnvVars: []string{"STORAGE_GATEWAY_GRPC_ADDR"}, + Destination: &cfg.Reva.Gateway.GRPCAddr, }, &cli.StringFlag{ - Name: "url", + Name: "endpoint", Value: "localhost:9142", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, + Usage: "endpoint to use for the storage service", + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, }, &cli.StringSliceFlag{ Name: "service", @@ -107,6 +100,21 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { // other services + &cli.StringFlag{ + Name: "auth-basic-endpoint", + Value: "localhost:9146", + Usage: "endpoint to use for the basic auth provider", + EnvVars: []string{"STORAGE_AUTH_BASIC_ENDPOINT"}, + Destination: &cfg.Reva.AuthBasic.Endpoint, + }, + &cli.StringFlag{ + Name: "auth-bearer-endpoint", + Value: "localhost:9148", + Usage: "endpoint to use for the bearer auth provider", + EnvVars: []string{"STORAGE_AUTH_BEARER_ENDPOINT"}, + Destination: &cfg.Reva.AuthBearer.Endpoint, + }, + // storage registry &cli.StringFlag{ @@ -127,81 +135,47 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { Name: "storage-home-provider", Value: "/home", Usage: "mount point of the storage provider for user homes in the global namespace", - EnvVars: []string{"STORAGE_STORAGE_HOME_PROVIDER"}, + EnvVars: []string{"STORAGE_REGISTRY_HOME_PROVIDER"}, Destination: &cfg.Reva.StorageRegistry.HomeProvider, }, &cli.StringFlag{ - Name: "frontend-url", + Name: "public-url", Value: "https://localhost:9200", Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_FRONTEND_URL"}, - Destination: &cfg.Reva.Frontend.URL, + EnvVars: []string{"STORAGE_FRONTEND_PUBLIC_URL"}, + Destination: &cfg.Reva.Frontend.PublicURL, }, &cli.StringFlag{ Name: "datagateway-url", Value: "https://localhost:9200/data", Usage: "URL to use for the storage datagateway", - EnvVars: []string{"STORAGE_DATAGATEWAY_URL"}, - Destination: &cfg.Reva.DataGateway.URL, + EnvVars: []string{"STORAGE_DATAGATEWAY_PUBLIC_URL"}, + Destination: &cfg.Reva.DataGateway.PublicURL, }, &cli.StringFlag{ - Name: "users-url", + Name: "userprovider-endpoint", Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, + Usage: "endpoint to use for the userprovider", + EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Users.Endpoint, }, &cli.StringFlag{ - Name: "auth-basic-url", - Value: "localhost:9146", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_AUTH_BASIC_URL"}, - Destination: &cfg.Reva.AuthBasic.URL, - }, - &cli.StringFlag{ - Name: "auth-bearer-url", - Value: "localhost:9148", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_AUTH_BEARER_URL"}, - Destination: &cfg.Reva.AuthBearer.URL, - }, - &cli.StringFlag{ - Name: "sharing-url", + Name: "sharing-endpoint", Value: "localhost:9150", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_SHARING_URL"}, - Destination: &cfg.Reva.Sharing.URL, + Usage: "endpoint to use for the storage service", + EnvVars: []string{"STORAGE_SHARING_ENDPOINT"}, + Destination: &cfg.Reva.Sharing.Endpoint, }, - &cli.StringFlag{ - Name: "storage-root-url", - Value: "localhost:9152", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_ROOT_URL"}, - Destination: &cfg.Reva.StorageRoot.URL, - }, - &cli.StringFlag{ - Name: "storage-root-mount-path", - Value: "/", - Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_ROOT_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageRoot.MountPath, - }, - &cli.StringFlag{ - Name: "storage-root-mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009152", - Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_ROOT_MOUNT_ID"}, - Destination: &cfg.Reva.StorageRoot.MountID, - }, + // register home storage &cli.StringFlag{ - Name: "storage-home-url", + Name: "storage-home-endpoint", Value: "localhost:9154", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_HOME_URL"}, - Destination: &cfg.Reva.StorageHome.URL, + Usage: "endpoint to use for the home storage", + EnvVars: []string{"STORAGE_STORAGE_HOME_ENDPOINT"}, + Destination: &cfg.Reva.StorageHome.Endpoint, }, &cli.StringFlag{ Name: "storage-home-mount-path", @@ -218,60 +192,42 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { Destination: &cfg.Reva.StorageHome.MountID, }, - &cli.StringFlag{ - Name: "storage-eos-url", - Value: "localhost:9158", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_EOS_URL"}, - Destination: &cfg.Reva.StorageEOS.URL, - }, - &cli.StringFlag{ - Name: "storage-eos-mount-path", - Value: "/eos", - Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_EOS_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageEOS.MountPath, - }, - &cli.StringFlag{ - Name: "storage-eos-mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009158", - Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_EOS_MOUNT_ID"}, - Destination: &cfg.Reva.StorageEOS.MountID, - }, + // register users storage &cli.StringFlag{ - Name: "storage-oc-url", - Value: "localhost:9162", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_OC_URL"}, - Destination: &cfg.Reva.StorageOC.URL, + Name: "storage-users-endpoint", + Value: "localhost:9157", + Usage: "endpoint to use for the users storage", + EnvVars: []string{"STORAGE_USERS_ENDPOINT"}, + Destination: &cfg.Reva.StorageUsers.Endpoint, }, &cli.StringFlag{ - Name: "storage-oc-mount-path", - Value: "/oc", + Name: "storage-users-mount-path", + Value: "/users", Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_OC_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageOC.MountPath, + EnvVars: []string{"STORAGE_USERS_MOUNT_PATH"}, + Destination: &cfg.Reva.StorageUsers.MountPath, }, &cli.StringFlag{ - Name: "storage-oc-mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", + Name: "storage-users-mount-id", + Value: "1284d238-aa92-42ce-bdc4-0b0000009157", Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_OC_MOUNT_ID"}, - Destination: &cfg.Reva.StorageOC.MountID, + EnvVars: []string{"STORAGE_USERS_MOUNT_ID"}, + Destination: &cfg.Reva.StorageUsers.MountID, }, + // register public link storage + &cli.StringFlag{ - Name: "public-link-url", + Name: "public-link-endpoint", Value: "localhost:9178", - Usage: "URL to use for the public links service", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_URL"}, - Destination: &cfg.Reva.StoragePublicLink.URL, + Usage: "endpoint to use for the public links service", + EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_ENDPOINT"}, + Destination: &cfg.Reva.StoragePublicLink.Endpoint, }, &cli.StringFlag{ Name: "storage-public-link-mount-path", - Value: "/public/", + Value: "/public", Usage: "mount path", EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_MOUNT_PATH"}, Destination: &cfg.Reva.StoragePublicLink.MountPath, diff --git a/storage/pkg/flagset/sharing.go b/storage/pkg/flagset/sharing.go index 24ca534fe5..3b6129f478 100644 --- a/storage/pkg/flagset/sharing.go +++ b/storage/pkg/flagset/sharing.go @@ -26,29 +26,15 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_SHARING_NETWORK"}, - Destination: &cfg.Reva.Sharing.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_SHARING_PROTOCOL"}, - Destination: &cfg.Reva.Sharing.Protocol, + EnvVars: []string{"STORAGE_SHARING_GRPC_NETWORK"}, + Destination: &cfg.Reva.Sharing.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9150", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_SHARING_ADDR"}, - Destination: &cfg.Reva.Sharing.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9150", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_SHARING_URL"}, - Destination: &cfg.Reva.Sharing.URL, + EnvVars: []string{"STORAGE_SHARING_GRPC_ADDR"}, + Destination: &cfg.Reva.Sharing.GRPCAddr, }, &cli.StringSliceFlag{ Name: "service", diff --git a/storage/pkg/flagset/storageeos.go b/storage/pkg/flagset/storageeos.go deleted file mode 100644 index 2838a4564d..0000000000 --- a/storage/pkg/flagset/storageeos.go +++ /dev/null @@ -1,104 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageEOSWithConfig applies cfg to the root flagset -func StorageEOSWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9159", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_EOS_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageEOS.DebugAddr, - }, - - // Storage eos - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_EOS_NETWORK"}, - Destination: &cfg.Reva.StorageEOS.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_EOS_PROTOCOL"}, - Destination: &cfg.Reva.StorageEOS.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9158", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_EOS_ADDR"}, - Destination: &cfg.Reva.StorageEOS.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9158", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_EOS_URL"}, - Destination: &cfg.Reva.StorageEOS.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("storageprovider"), - Usage: "--service storageprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_EOS_SERVICES"}, - }, - - &cli.StringFlag{ - Name: "driver", - Value: "eos", - Usage: "storage driver for eos mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_EOS_DRIVER"}, - Destination: &cfg.Reva.StorageEOS.Driver, - }, - &cli.StringFlag{ - Name: "mount-path", - Value: "/eos", - Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_EOS_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageEOS.MountPath, - }, - &cli.StringFlag{ - Name: "mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009158", - Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_EOS_MOUNT_ID"}, - Destination: &cfg.Reva.StorageEOS.MountID, - }, - &cli.BoolFlag{ - Name: "expose-data-server", - Value: false, - Usage: "exposes a dedicated data server", - EnvVars: []string{"STORAGE_STORAGE_EOS_EXPOSE_DATA_SERVER"}, - Destination: &cfg.Reva.StorageEOS.ExposeDataServer, - }, - &cli.StringFlag{ - Name: "data-server-url", - Value: "http://localhost:9160/data", - Usage: "data server url", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_SERVER_URL"}, - Destination: &cfg.Reva.StorageEOS.DataServerURL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storageeosdata.go b/storage/pkg/flagset/storageeosdata.go deleted file mode 100644 index 584a4b9227..0000000000 --- a/storage/pkg/flagset/storageeosdata.go +++ /dev/null @@ -1,111 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageEOSDataWithConfig applies cfg to the root flagset -func StorageEOSDataWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9161", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageEOSData.DebugAddr, - }, - - // Services - - // Storage eos data - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_NETWORK"}, - Destination: &cfg.Reva.StorageEOSData.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "http", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_PROTOCOL"}, - Destination: &cfg.Reva.StorageEOSData.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9160", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_ADDR"}, - Destination: &cfg.Reva.StorageEOSData.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9160", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_URL"}, - Destination: &cfg.Reva.StorageEOSData.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("dataprovider"), - Usage: "--service dataprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_SERVICES"}, - }, - &cli.StringFlag{ - Name: "driver", - Value: "eos", - Usage: "storage driver for eos data mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_DRIVER"}, - Destination: &cfg.Reva.StorageEOSData.Driver, - }, - &cli.StringFlag{ - Name: "prefix", - Value: "data", - Usage: "prefix for the http endpoint, without leading slash", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_PREFIX"}, - Destination: &cfg.Reva.StorageEOSData.Prefix, - }, - &cli.StringFlag{ - Name: "temp-folder", - Value: "/var/tmp/", - Usage: "temp folder", - EnvVars: []string{"STORAGE_STORAGE_EOS_DATA_TEMP_FOLDER"}, - Destination: &cfg.Reva.StorageEOSData.TempFolder, - }, - - // Gateway - - &cli.StringFlag{ - Name: "gateway-url", - Value: "localhost:9142", - Usage: "URL to use for the storage gateway service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, - }, - - // User provider - - &cli.StringFlag{ - Name: "users-url", - Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storagehome.go b/storage/pkg/flagset/storagehome.go index 9b00e8f7a9..0bdf8c4c30 100644 --- a/storage/pkg/flagset/storagehome.go +++ b/storage/pkg/flagset/storagehome.go @@ -12,9 +12,9 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag { // debug ports are the odd ports &cli.StringFlag{ Name: "debug-addr", - Value: "0.0.0.0:9155", + Value: "0.0.0.0:9156", Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_HOME_DEBUG_ADDR"}, + EnvVars: []string{"STORAGE_HOME_DEBUG_ADDR"}, Destination: &cfg.Reva.StorageHome.DebugAddr, }, @@ -23,95 +23,121 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag { // Storage home &cli.StringFlag{ - Name: "network", + Name: "grpc-network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_HOME_NETWORK"}, - Destination: &cfg.Reva.StorageHome.Network, + EnvVars: []string{"STORAGE_HOME_GRPC_NETWORK"}, + Destination: &cfg.Reva.StorageHome.GRPCNetwork, }, &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_HOME_PROTOCOL"}, - Destination: &cfg.Reva.StorageHome.Protocol, - }, - &cli.StringFlag{ - Name: "addr", + Name: "grpc-addr", Value: "0.0.0.0:9154", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_HOME_ADDR"}, - Destination: &cfg.Reva.StorageHome.Addr, + EnvVars: []string{"STORAGE_HOME_GRPC_ADDR"}, + Destination: &cfg.Reva.StorageHome.GRPCAddr, }, &cli.StringFlag{ - Name: "url", - Value: "localhost:9154", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_HOME_URL"}, - Destination: &cfg.Reva.StorageHome.URL, + Name: "http-network", + Value: "tcp", + Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", + EnvVars: []string{"STORAGE_HOME_HTTP_NETWORK"}, + Destination: &cfg.Reva.StorageHome.HTTPNetwork, }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("storageprovider"), - Usage: "--service storageprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_HOME_SERVICES"}, + &cli.StringFlag{ + Name: "http-addr", + Value: "0.0.0.0:9155", + Usage: "Address to bind storage service", + EnvVars: []string{"STORAGE_HOME_HTTP_ADDR"}, + Destination: &cfg.Reva.StorageHome.HTTPAddr, }, + // TODO allow disabling grpc / http services + /* + &cli.StringSliceFlag{ + Name: "grpc-service", + Value: cli.NewStringSlice("storageprovider"), + Usage: "--service storageprovider [--service otherservice]", + EnvVars: []string{"STORAGE_HOME_GRPC_SERVICES"}, + }, + &cli.StringSliceFlag{ + Name: "http-service", + Value: cli.NewStringSlice("dataprovider"), + Usage: "--service dataprovider [--service otherservice]", + EnvVars: []string{"STORAGE_HOME_HTTP_SERVICES"}, + }, + */ + &cli.StringFlag{ Name: "driver", - Value: "owncloud", + Value: "ocis", Usage: "storage driver for home mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_HOME_DRIVER"}, + EnvVars: []string{"STORAGE_HOME_DRIVER"}, Destination: &cfg.Reva.StorageHome.Driver, }, &cli.StringFlag{ Name: "mount-path", Value: "/home", Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_HOME_MOUNT_PATH"}, + EnvVars: []string{"STORAGE_HOME_MOUNT_PATH"}, Destination: &cfg.Reva.StorageHome.MountPath, }, &cli.StringFlag{ Name: "mount-id", // This is the mount id of the storage provider using the same storage driver - // as /home but withoud home enabled. Set it to - // 1284d238-aa92-42ce-bdc4-0b0000009158 for /eos - // 1284d238-aa92-42ce-bdc4-0b0000009162 for /oc - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /oc + // as /home but withoud home enabled. + Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_HOME_MOUNT_ID"}, + EnvVars: []string{"STORAGE_HOME_MOUNT_ID"}, Destination: &cfg.Reva.StorageHome.MountID, }, &cli.BoolFlag{ Name: "expose-data-server", Value: false, Usage: "exposes a dedicated data server", - EnvVars: []string{"STORAGE_STORAGE_HOME_EXPOSE_DATA_SERVER"}, + EnvVars: []string{"STORAGE_HOME_EXPOSE_DATA_SERVER"}, Destination: &cfg.Reva.StorageHome.ExposeDataServer, }, &cli.StringFlag{ Name: "data-server-url", - Value: "http://localhost:9156/data", + Value: "http://localhost:9155/data", Usage: "data server url", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_SERVER_URL"}, + EnvVars: []string{"STORAGE_HOME_DATA_SERVER_URL"}, Destination: &cfg.Reva.StorageHome.DataServerURL, }, + &cli.StringFlag{ + Name: "http-prefix", + Value: "data", + Usage: "prefix for the http endpoint, without leading slash", + EnvVars: []string{"STORAGE_HOME_HTTP_PREFIX"}, + Destination: &cfg.Reva.StorageHome.HTTPPrefix, + }, &cli.BoolFlag{ Name: "enable-home", Value: true, Usage: "enable the creation of home directories", - EnvVars: []string{"STORAGE_STORAGE_HOME_ENABLE_HOME"}, + EnvVars: []string{"STORAGE_HOME_ENABLE_HOME"}, Destination: &cfg.Reva.Storages.Home.EnableHome, }, + // some drivers need to look up users at the gateway + + // Gateway + + &cli.StringFlag{ + Name: "gateway-endpoint", + Value: "localhost:9142", + Usage: "endpoint to use for the storage gateway service", + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, + }, // User provider &cli.StringFlag{ - Name: "users-url", + Name: "users-endpoint", Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, + Usage: "endpoint to use for the storage service", + EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Users.Endpoint, }, } diff --git a/storage/pkg/flagset/storagehomedata.go b/storage/pkg/flagset/storagehomedata.go deleted file mode 100644 index 428df18038..0000000000 --- a/storage/pkg/flagset/storagehomedata.go +++ /dev/null @@ -1,118 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageHomeDataWithConfig applies cfg to the root flagset -func StorageHomeDataWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9157", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageHomeData.DebugAddr, - }, - - // Services - - // Storage home data - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_NETWORK"}, - Destination: &cfg.Reva.StorageHomeData.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "http", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_PROTOCOL"}, - Destination: &cfg.Reva.StorageHomeData.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9156", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_ADDR"}, - Destination: &cfg.Reva.StorageHomeData.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9156", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_URL"}, - Destination: &cfg.Reva.StorageHomeData.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("dataprovider"), - Usage: "--service dataprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_SERVICES"}, - }, - &cli.StringFlag{ - Name: "driver", - Value: "owncloud", - Usage: "storage driver for home data mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_DRIVER"}, - Destination: &cfg.Reva.StorageHomeData.Driver, - }, - &cli.StringFlag{ - Name: "prefix", - Value: "data", - Usage: "prefix for the http endpoint, without leading slash", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_PREFIX"}, - Destination: &cfg.Reva.StorageHomeData.Prefix, - }, - &cli.StringFlag{ - Name: "temp-folder", - Value: "/var/tmp/", - Usage: "temp folder", - EnvVars: []string{"STORAGE_STORAGE_HOME_DATA_TEMP_FOLDER"}, - Destination: &cfg.Reva.StorageHomeData.TempFolder, - }, - &cli.BoolFlag{ - Name: "enable-home", - Value: true, - Usage: "enable the creation of home directories", - EnvVars: []string{"STORAGE_STORAGE_HOME_ENABLE_HOME"}, - Destination: &cfg.Reva.Storages.Home.EnableHome, - }, - - // Gateway - - &cli.StringFlag{ - Name: "gateway-url", - Value: "localhost:9142", - Usage: "URL to use for the storage gateway service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, - }, - - // User provider - - &cli.StringFlag{ - Name: "users-url", - Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storagemetadata.go b/storage/pkg/flagset/storagemetadata.go index 094dc07f0b..d6f90d7fbd 100644 --- a/storage/pkg/flagset/storagemetadata.go +++ b/storage/pkg/flagset/storagemetadata.go @@ -12,58 +12,80 @@ func StorageMetadata(cfg *config.Config) []cli.Flag { Name: "debug-addr", Value: "0.0.0.0:9217", Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_METADATA_DEBUG_ADDR"}, + EnvVars: []string{"STORAGE_METADATA_DEBUG_ADDR"}, Destination: &cfg.Reva.StorageMetadata.DebugAddr, }, &cli.StringFlag{ - Name: "network", + Name: "grpc-network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_METADATA_NETWORK"}, - Destination: &cfg.Reva.StorageMetadata.Network, + EnvVars: []string{"STORAGE_METADATA_GRPC_NETWORK"}, + Destination: &cfg.Reva.StorageMetadata.GRPCNetwork, }, &cli.StringFlag{ - Name: "provider-addr", + Name: "grpc-addr", Value: "0.0.0.0:9215", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_METADATA_PROVIDER_ADDR"}, - Destination: &cfg.Reva.StorageMetadata.Addr, + EnvVars: []string{"STORAGE_METADATA_GRPC_PROVIDER_ADDR"}, + Destination: &cfg.Reva.StorageMetadata.GRPCAddr, }, &cli.StringFlag{ Name: "data-server-url", Value: "http://localhost:9216", - Usage: "URL of the data-server the storage-provider uses", - EnvVars: []string{"STORAGE_STORAGE_METADATA_DATA_SERVER_URL"}, + Usage: "URL of the data-provider the storage-provider uses", + EnvVars: []string{"STORAGE_METADATA_DATA_SERVER_URL"}, Destination: &cfg.Reva.StorageMetadata.DataServerURL, }, &cli.StringFlag{ - Name: "data-server-addr", + Name: "http-network", + Value: "tcp", + Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", + EnvVars: []string{"STORAGE_METADATA_HTTP_NETWORK"}, + Destination: &cfg.Reva.StorageMetadata.HTTPNetwork, + }, + &cli.StringFlag{ + Name: "http-addr", Value: "0.0.0.0:9216", - Usage: "Address to bind the metadata data-server to", - EnvVars: []string{"STORAGE_STORAGE_METADATA_DATA_SERVER_ADDR"}, - Destination: &cfg.Reva.StorageMetadataData.Addr, + Usage: "Address to bind storage service", + EnvVars: []string{"STORAGE_METADATA_HTTP_ADDR"}, + Destination: &cfg.Reva.StorageMetadata.HTTPAddr, }, &cli.StringFlag{ - Name: "storage-provider-driver", - Value: "local", + Name: "driver", + Value: "ocis", Usage: "storage driver for metadata mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_METADATA_PROVIDER_DRIVER"}, + EnvVars: []string{"STORAGE_METADATA_DRIVER"}, Destination: &cfg.Reva.StorageMetadata.Driver, }, - &cli.StringFlag{ - Name: "data-provider-driver", - Value: "local", - Usage: "storage driver for data-provider mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_METADATA_DATA_PROVIDER_DRIVER"}, - Destination: &cfg.Reva.StorageMetadataData.Driver, - }, &cli.StringFlag{ Name: "storage-root", Value: "/var/tmp/ocis/metadata", Usage: "the path to the metadata storage root", - EnvVars: []string{"STORAGE_STORAGE_METADATA_ROOT"}, + EnvVars: []string{"STORAGE_METADATA_ROOT"}, Destination: &cfg.Reva.Storages.Common.Root, }, + + // some drivers need to look up users at the gateway + + // Gateway + + &cli.StringFlag{ + Name: "gateway-endpoint", + Value: "localhost:9142", + Usage: "endpoint to use for the gateway service", + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, + }, + + // User provider + + &cli.StringFlag{ + Name: "userprovider-endpoint", + Value: "localhost:9144", + Usage: "endpoint to use for the userprovider service", + EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Users.Endpoint, + }, } flags = append(flags, TracingWithConfig(cfg)...) diff --git a/storage/pkg/flagset/storageoc.go b/storage/pkg/flagset/storageoc.go deleted file mode 100644 index 8280ec34f4..0000000000 --- a/storage/pkg/flagset/storageoc.go +++ /dev/null @@ -1,116 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageOCWithConfig applies cfg to the root flagset -func StorageOCWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9163", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_OC_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageOC.DebugAddr, - }, - - // Services - - // Storage oc - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_OC_NETWORK"}, - Destination: &cfg.Reva.StorageOC.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_OC_PROTOCOL"}, - Destination: &cfg.Reva.StorageOC.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9162", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_OC_ADDR"}, - Destination: &cfg.Reva.StorageOC.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9162", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_OC_URL"}, - Destination: &cfg.Reva.StorageOC.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("storageprovider"), - Usage: "--service storageprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_OC_SERVICES"}, - }, - - &cli.StringFlag{ - Name: "driver", - Value: "owncloud", - Usage: "storage driver for oc mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_OC_DRIVER"}, - Destination: &cfg.Reva.StorageOC.Driver, - }, - &cli.StringFlag{ - Name: "mount-path", - Value: "/oc", - Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_OC_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageOC.MountPath, - }, - &cli.StringFlag{ - Name: "mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", - Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_OC_MOUNT_ID"}, - Destination: &cfg.Reva.StorageOC.MountID, - }, - &cli.BoolFlag{ - Name: "expose-data-server", - Value: false, - Usage: "exposes a dedicated data server", - EnvVars: []string{"STORAGE_STORAGE_OC_EXPOSE_DATA_SERVER"}, - Destination: &cfg.Reva.StorageOC.ExposeDataServer, - }, - &cli.StringFlag{ - Name: "data-server-url", - Value: "http://localhost:9164/data", - Usage: "data server url", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_SERVER_URL"}, - Destination: &cfg.Reva.StorageOC.DataServerURL, - }, - - // User provider - - &cli.StringFlag{ - Name: "users-url", - Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storageocdata.go b/storage/pkg/flagset/storageocdata.go deleted file mode 100644 index 8e9ba3a9e7..0000000000 --- a/storage/pkg/flagset/storageocdata.go +++ /dev/null @@ -1,111 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageOCDataWithConfig applies cfg to the root flagset -func StorageOCDataWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9165", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageOCData.DebugAddr, - }, - - // Services - - // Storage oc data - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_NETWORK"}, - Destination: &cfg.Reva.StorageOCData.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "http", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_PROTOCOL"}, - Destination: &cfg.Reva.StorageOCData.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9164", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_ADDR"}, - Destination: &cfg.Reva.StorageOCData.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9164", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_URL"}, - Destination: &cfg.Reva.StorageOCData.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("dataprovider"), - Usage: "--service dataprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_SERVICES"}, - }, - &cli.StringFlag{ - Name: "driver", - Value: "owncloud", - Usage: "storage driver for oc data mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_DRIVER"}, - Destination: &cfg.Reva.StorageOCData.Driver, - }, - &cli.StringFlag{ - Name: "prefix", - Value: "data", - Usage: "prefix for the http endpoint, without leading slash", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_PREFIX"}, - Destination: &cfg.Reva.StorageOCData.Prefix, - }, - &cli.StringFlag{ - Name: "temp-folder", - Value: "/var/tmp/", - Usage: "temp folder", - EnvVars: []string{"STORAGE_STORAGE_OC_DATA_TEMP_FOLDER"}, - Destination: &cfg.Reva.StorageOCData.TempFolder, - }, - - // Gateway - - &cli.StringFlag{ - Name: "gateway-url", - Value: "localhost:9142", - Usage: "URL to use for the storage gateway service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, - }, - - // User provider - - &cli.StringFlag{ - Name: "users-url", - Value: "localhost:9144", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storagepubliclink.go b/storage/pkg/flagset/storagepubliclink.go index ec373f0fe4..c3e4c505e4 100644 --- a/storage/pkg/flagset/storagepubliclink.go +++ b/storage/pkg/flagset/storagepubliclink.go @@ -13,7 +13,7 @@ func StoragePublicLink(cfg *config.Config) []cli.Flag { Name: "debug-addr", Value: "0.0.0.0:9179", Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_DEBUG_ADDR"}, + EnvVars: []string{"STORAGE_PUBLIC_LINK_DEBUG_ADDR"}, Destination: &cfg.Reva.StoragePublicLink.DebugAddr, }, @@ -21,45 +21,31 @@ func StoragePublicLink(cfg *config.Config) []cli.Flag { Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_NETWORK"}, - Destination: &cfg.Reva.StoragePublicLink.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_PROTOCOL"}, - Destination: &cfg.Reva.StoragePublicLink.Protocol, + EnvVars: []string{"STORAGE_PUBLIC_LINK_GRPC_NETWORK"}, + Destination: &cfg.Reva.StoragePublicLink.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9178", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_ADDR"}, - Destination: &cfg.Reva.StoragePublicLink.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9178", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_URL"}, - Destination: &cfg.Reva.StoragePublicLink.URL, + EnvVars: []string{"STORAGE_PUBLIC_LINK_GRPC_ADDR"}, + Destination: &cfg.Reva.StoragePublicLink.GRPCAddr, }, &cli.StringFlag{ Name: "mount-path", - Value: "/public/", + Value: "/public", Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_MOUNT_PATH"}, + EnvVars: []string{"STORAGE_PUBLIC_LINK_MOUNT_PATH"}, Destination: &cfg.Reva.StoragePublicLink.MountPath, }, &cli.StringFlag{ - Name: "gateway-url", + Name: "gateway-endpoint", Value: "localhost:9142", - Usage: "URL to use for the storage gateway service", - EnvVars: []string{"STORAGE_GATEWAY_URL"}, - Destination: &cfg.Reva.Gateway.URL, + Usage: "endpoint to use for the storage gateway service", + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, }, } diff --git a/storage/pkg/flagset/storageroot.go b/storage/pkg/flagset/storageroot.go deleted file mode 100644 index 679c77c996..0000000000 --- a/storage/pkg/flagset/storageroot.go +++ /dev/null @@ -1,105 +0,0 @@ -package flagset - -import ( - "github.com/micro/cli/v2" - "github.com/owncloud/ocis/storage/pkg/config" -) - -// StorageRootWithConfig applies cfg to the root flagset -func StorageRootWithConfig(cfg *config.Config) []cli.Flag { - flags := []cli.Flag{ - - // debug ports are the odd ports - &cli.StringFlag{ - Name: "debug-addr", - Value: "0.0.0.0:9153", - Usage: "Address to bind debug server", - EnvVars: []string{"STORAGE_STORAGE_ROOT_DEBUG_ADDR"}, - Destination: &cfg.Reva.StorageRoot.DebugAddr, - }, - - // Services - - // Storage root - - &cli.StringFlag{ - Name: "network", - Value: "tcp", - Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_STORAGE_ROOT_NETWORK"}, - Destination: &cfg.Reva.StorageRoot.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_STORAGE_ROOT_PROTOCOL"}, - Destination: &cfg.Reva.StorageRoot.Protocol, - }, - &cli.StringFlag{ - Name: "addr", - Value: "0.0.0.0:9152", - Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_STORAGE_ROOT_ADDR"}, - Destination: &cfg.Reva.StorageRoot.Addr, - }, - &cli.StringFlag{ - Name: "url", - Value: "localhost:9152", - Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_STORAGE_ROOT_URL"}, - Destination: &cfg.Reva.StorageRoot.URL, - }, - &cli.StringSliceFlag{ - Name: "service", - Value: cli.NewStringSlice("storageprovider"), - Usage: "--service storageprovider [--service otherservice]", - EnvVars: []string{"STORAGE_STORAGE_ROOT_SERVICES"}, - }, - - &cli.StringFlag{ - Name: "driver", - Value: "local", - Usage: "storage driver for root mount: eg. local, eos, owncloud, ocis or s3", - EnvVars: []string{"STORAGE_STORAGE_ROOT_DRIVER"}, - Destination: &cfg.Reva.StorageRoot.Driver, - }, - &cli.StringFlag{ - Name: "mount-path", - Value: "/", - Usage: "mount path", - EnvVars: []string{"STORAGE_STORAGE_ROOT_MOUNT_PATH"}, - Destination: &cfg.Reva.StorageRoot.MountPath, - }, - &cli.StringFlag{ - Name: "mount-id", - Value: "123e4567-e89b-12d3-a456-426655440001", - Usage: "mount id", - EnvVars: []string{"STORAGE_STORAGE_ROOT_MOUNT_ID"}, - Destination: &cfg.Reva.StorageRoot.MountID, - }, - &cli.BoolFlag{ - Name: "expose-data-server", - Usage: "exposes a dedicated data server", - EnvVars: []string{"STORAGE_STORAGE_ROOT_EXPOSE_DATA_SERVER"}, - Destination: &cfg.Reva.StorageRoot.ExposeDataServer, - }, - &cli.StringFlag{ - Name: "data-server-url", - Value: "", - Usage: "data server url", - EnvVars: []string{"STORAGE_STORAGE_ROOT_DATA_SERVER_URL"}, - Destination: &cfg.Reva.StorageRoot.DataServerURL, - }, - } - - flags = append(flags, TracingWithConfig(cfg)...) - flags = append(flags, DebugWithConfig(cfg)...) - flags = append(flags, SecretWithConfig(cfg)...) - flags = append(flags, DriverEOSWithConfig(cfg)...) - flags = append(flags, DriverLocalWithConfig(cfg)...) - flags = append(flags, DriverOwnCloudWithConfig(cfg)...) - flags = append(flags, DriverOCISWithConfig(cfg)...) - - return flags -} diff --git a/storage/pkg/flagset/storageusers.go b/storage/pkg/flagset/storageusers.go new file mode 100644 index 0000000000..ae4cbade8d --- /dev/null +++ b/storage/pkg/flagset/storageusers.go @@ -0,0 +1,143 @@ +package flagset + +import ( + "github.com/micro/cli/v2" + "github.com/owncloud/ocis/storage/pkg/config" +) + +// StorageUsersWithConfig applies cfg to the root flagset +func StorageUsersWithConfig(cfg *config.Config) []cli.Flag { + flags := []cli.Flag{ + + // debug ports are the odd ports + &cli.StringFlag{ + Name: "debug-addr", + Value: "0.0.0.0:9159", + Usage: "Address to bind debug server", + EnvVars: []string{"STORAGE_USERS_DEBUG_ADDR"}, + Destination: &cfg.Reva.StorageUsers.DebugAddr, + }, + + // Services + + // Storage home + + &cli.StringFlag{ + Name: "grpc-network", + Value: "tcp", + Usage: "Network to use for the users storage, can be 'tcp', 'udp' or 'unix'", + EnvVars: []string{"STORAGE_USERS_GRPC_NETWORK"}, + Destination: &cfg.Reva.StorageUsers.GRPCNetwork, + }, + &cli.StringFlag{ + Name: "grpc-addr", + Value: "0.0.0.0:9157", + Usage: "GRPC Address to bind users storage", + EnvVars: []string{"STORAGE_USERS_GRPC_ADDR"}, + Destination: &cfg.Reva.StorageUsers.GRPCAddr, + }, + &cli.StringFlag{ + Name: "http-network", + Value: "tcp", + Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", + EnvVars: []string{"STORAGE_USERS_HTTP_NETWORK"}, + Destination: &cfg.Reva.StorageUsers.HTTPNetwork, + }, + &cli.StringFlag{ + Name: "http-addr", + Value: "0.0.0.0:9158", + Usage: "HTTP Address to bind users storage", + EnvVars: []string{"STORAGE_USERS_HTTP_ADDR"}, + Destination: &cfg.Reva.StorageUsers.HTTPAddr, + }, + // TODO allow disabling grpc / http services + /* + &cli.StringSliceFlag{ + Name: "grpc-service", + Value: cli.NewStringSlice("storageprovider"), + Usage: "--service storageprovider [--service otherservice]", + EnvVars: []string{"STORAGE_USERS_GRPC_SERVICES"}, + }, + &cli.StringSliceFlag{ + Name: "http-service", + Value: cli.NewStringSlice("dataprovider"), + Usage: "--service dataprovider [--service otherservice]", + EnvVars: []string{"STORAGE_USERS_HTTP_SERVICES"}, + }, + */ + + &cli.StringFlag{ + Name: "driver", + Value: "ocis", + Usage: "storage driver for users mount: eg. local, eos, owncloud, ocis or s3", + EnvVars: []string{"STORAGE_USERS_DRIVER"}, + Destination: &cfg.Reva.StorageUsers.Driver, + }, + &cli.StringFlag{ + Name: "mount-path", + Value: "/users", + Usage: "mount path", + EnvVars: []string{"STORAGE_USERS_MOUNT_PATH"}, + Destination: &cfg.Reva.StorageUsers.MountPath, + }, + &cli.StringFlag{ + Name: "mount-id", + Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users + Usage: "mount id", + EnvVars: []string{"STORAGE_USERS_MOUNT_ID"}, + Destination: &cfg.Reva.StorageUsers.MountID, + }, + &cli.BoolFlag{ + Name: "expose-data-server", + Value: false, + Usage: "exposes a dedicated data server", + EnvVars: []string{"STORAGE_USERS_EXPOSE_DATA_SERVER"}, + Destination: &cfg.Reva.StorageUsers.ExposeDataServer, + }, + &cli.StringFlag{ + Name: "data-server-url", + Value: "http://localhost:9158/data", + Usage: "data server url", + EnvVars: []string{"STORAGE_USERS_DATA_SERVER_URL"}, + Destination: &cfg.Reva.StorageUsers.DataServerURL, + }, + &cli.StringFlag{ + Name: "http-prefix", + Value: "data", + Usage: "prefix for the http endpoint, without leading slash", + EnvVars: []string{"STORAGE_USERS_HTTP_PREFIX"}, + Destination: &cfg.Reva.StorageUsers.HTTPPrefix, + }, + + // some drivers need to look up users at the gateway + + // Gateway + + &cli.StringFlag{ + Name: "gateway-endpoint", + Value: "localhost:9142", + Usage: "endpoint to use for the storage gateway service", + EnvVars: []string{"STORAGE_GATEWAY_ENDPOINT"}, + Destination: &cfg.Reva.Gateway.Endpoint, + }, + // User provider + + &cli.StringFlag{ + Name: "users-endpoint", + Value: "localhost:9144", + Usage: "endpoint to use for the storage service", + EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Users.Endpoint, + }, + } + + flags = append(flags, TracingWithConfig(cfg)...) + flags = append(flags, DebugWithConfig(cfg)...) + flags = append(flags, SecretWithConfig(cfg)...) + flags = append(flags, DriverEOSWithConfig(cfg)...) + flags = append(flags, DriverLocalWithConfig(cfg)...) + flags = append(flags, DriverOwnCloudWithConfig(cfg)...) + flags = append(flags, DriverOCISWithConfig(cfg)...) + + return flags +} diff --git a/storage/pkg/flagset/users.go b/storage/pkg/flagset/users.go index 0ce28b5976..b22c3a35c7 100644 --- a/storage/pkg/flagset/users.go +++ b/storage/pkg/flagset/users.go @@ -20,55 +20,48 @@ func UsersWithConfig(cfg *config.Config) []cli.Flag { // Services - // Users + // Userprovider &cli.StringFlag{ Name: "network", Value: "tcp", Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", - EnvVars: []string{"STORAGE_USERS_NETWORK"}, - Destination: &cfg.Reva.Users.Network, - }, - &cli.StringFlag{ - Name: "protocol", - Value: "grpc", - Usage: "protocol for storage service, can be 'http' or 'grpc'", - EnvVars: []string{"STORAGE_USERS_PROTOCOL"}, - Destination: &cfg.Reva.Users.Protocol, + EnvVars: []string{"STORAGE_USERPROVIDER_NETWORK"}, + Destination: &cfg.Reva.Users.GRPCNetwork, }, &cli.StringFlag{ Name: "addr", Value: "0.0.0.0:9144", Usage: "Address to bind storage service", - EnvVars: []string{"STORAGE_USERS_ADDR"}, - Destination: &cfg.Reva.Users.Addr, + EnvVars: []string{"STORAGE_USERPROVIDER_ADDR"}, + Destination: &cfg.Reva.Users.GRPCAddr, }, &cli.StringFlag{ - Name: "url", + Name: "endpoint", Value: "localhost:9144", Usage: "URL to use for the storage service", - EnvVars: []string{"STORAGE_USERS_URL"}, - Destination: &cfg.Reva.Users.URL, + EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Users.Endpoint, }, &cli.StringSliceFlag{ Name: "service", Value: cli.NewStringSlice("userprovider"), // TODO preferences Usage: "--service userprovider [--service otherservice]", - EnvVars: []string{"STORAGE_USERS_SERVICES"}, + EnvVars: []string{"STORAGE_USERPROVIDER_SERVICES"}, }, &cli.StringFlag{ Name: "driver", Value: "ldap", Usage: "user driver: 'demo', 'json', 'ldap', or 'rest'", - EnvVars: []string{"STORAGE_USERS_DRIVER"}, + EnvVars: []string{"STORAGE_USERPROVIDER_DRIVER"}, Destination: &cfg.Reva.Users.Driver, }, &cli.StringFlag{ Name: "json-config", Value: "", Usage: "Path to users.json file", - EnvVars: []string{"STORAGE_USERS_JSON"}, + EnvVars: []string{"STORAGE_USERPROVIDER_JSON"}, Destination: &cfg.Reva.Users.JSON, }, From 5a9a9ce86a0b2369004997311a65bee203b2e10e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Tue, 6 Oct 2020 21:22:44 +0200 Subject: [PATCH 02/34] set ocis storage owner on startup, account fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jörn Friedrich Dreyer --- accounts/pkg/storage/cs3.go | 7 +++---- storage/pkg/command/drivers.go | 1 + storage/pkg/flagset/storagemetadata.go | 17 +++++++++-------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/accounts/pkg/storage/cs3.go b/accounts/pkg/storage/cs3.go index 5fce0839c0..6a80972c94 100644 --- a/accounts/pkg/storage/cs3.go +++ b/accounts/pkg/storage/cs3.go @@ -206,12 +206,11 @@ func (r CS3Repo) DeleteGroup(ctx context.Context, id string) (err error) { func (r CS3Repo) authenticate(ctx context.Context) (token string, err error) { u := &user.User{ - Id: &user.UserId{}, + Id: &user.UserId{ + OpaqueId: r.cfg.ServiceUser.UUID, + }, Groups: []string{}, } - if r.cfg.ServiceUser.Username != "" { - u.Id.OpaqueId = r.cfg.ServiceUser.UUID - } return r.tm.MintToken(ctx, u) } diff --git a/storage/pkg/command/drivers.go b/storage/pkg/command/drivers.go index 914e34b844..8d501e6aa0 100644 --- a/storage/pkg/command/drivers.go +++ b/storage/pkg/command/drivers.go @@ -91,6 +91,7 @@ func drivers(cfg *config.Config) map[string]interface{} { "user_layout": cfg.Reva.Storages.Common.UserLayout, "treetime_accounting": true, "treesize_accounting": true, + "owner": "95cb8724-03b2-11eb-a0a6-c33ef8ef53ad", // the accounts service system account uuid }, "s3": map[string]interface{}{ "region": cfg.Reva.Storages.S3.Region, diff --git a/storage/pkg/flagset/storagemetadata.go b/storage/pkg/flagset/storagemetadata.go index d6f90d7fbd..f0585c023c 100644 --- a/storage/pkg/flagset/storagemetadata.go +++ b/storage/pkg/flagset/storagemetadata.go @@ -57,13 +57,6 @@ func StorageMetadata(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_METADATA_DRIVER"}, Destination: &cfg.Reva.StorageMetadata.Driver, }, - &cli.StringFlag{ - Name: "storage-root", - Value: "/var/tmp/ocis/metadata", - Usage: "the path to the metadata storage root", - EnvVars: []string{"STORAGE_METADATA_ROOT"}, - Destination: &cfg.Reva.Storages.Common.Root, - }, // some drivers need to look up users at the gateway @@ -95,7 +88,15 @@ func StorageMetadata(cfg *config.Config) []cli.Flag { flags = append(flags, DriverLocalWithConfig(cfg)...) flags = append(flags, DriverOwnCloudWithConfig(cfg)...) flags = append(flags, DriverOCISWithConfig(cfg)...) - + flags = append(flags, + &cli.StringFlag{ + Name: "storage-root", + Value: "/var/tmp/ocis/metadata", + Usage: "the path to the metadata storage root", + EnvVars: []string{"STORAGE_METADATA_ROOT"}, + Destination: &cfg.Reva.Storages.Common.Root, + }, + ) return flags } From 28657f81973919d0b34915bd95f960eaa13ac1c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Tue, 6 Oct 2020 21:34:25 +0200 Subject: [PATCH 03/34] use /users endpoint for dav/files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jörn Friedrich Dreyer --- storage/pkg/flagset/frontend.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/pkg/flagset/frontend.go b/storage/pkg/flagset/frontend.go index b3f5696eb0..dcada4d8bf 100644 --- a/storage/pkg/flagset/frontend.go +++ b/storage/pkg/flagset/frontend.go @@ -42,7 +42,7 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag { // this can eg. be set to /eos/users &cli.StringFlag{ Name: "dav-files-namespace", - Value: "/oc/", + Value: "/users/", Usage: "Namespace prefix for the webdav /dav/files endpoint", EnvVars: []string{"DAV_FILES_NAMESPACE"}, Destination: &cfg.Reva.OCDav.DavFilesNamespace, From ece9c551c208729775f7e441ef90a35e32972ef3 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 7 Oct 2020 20:24:07 +0200 Subject: [PATCH 04/34] update reva Signed-off-by: David Christofas --- ocis/go.sum | 4 ++++ storage/go.mod | 2 +- storage/go.sum | 3 +++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ocis/go.sum b/ocis/go.sum index 51487913bf..50423cb24e 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -262,11 +262,15 @@ github.com/cs3org/go-cs3apis v0.0.0-20191128165347-19746c015c83/go.mod h1:IsVGyZ github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666 h1:E7VsSSN/2YZLSwrDMJJdAWU11lP7W1qkcXbrslb0PM0= github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20200929101248-821df597ec8d h1:YDnGz3eTIYQDXzJd/zefEsl0qbz/P63e8KWjSjYlb5Q= +github.com/cs3org/go-cs3apis v0.0.0-20200929101248-821df597ec8d/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v0.0.2-0.20200115110931-4c7513415ec5/go.mod h1:Hk3eCcdhtv4eIhKvRK736fQuOyS1HuHnUcz0Dq6NK1A= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.2.1-0.20200826162318-c0f54e1f37ea/go.mod h1:FvYB+UPpuPCw0hH42qHVR1R2atZyy69METZI/zEaST8= github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7icnWOvIyGxnGUVvSSLvtEliuIE= github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= +github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp8j4EM32Ye10jh+UWjMxKbVr30g= +github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= diff --git a/storage/go.mod b/storage/go.mod index 73d2e9bba0..ebbea8caaf 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 + github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index e70f642b2b..64e6aeb242 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -182,6 +182,7 @@ github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e/go.mod h1:XJEZ3/EQuI3B github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666 h1:E7VsSSN/2YZLSwrDMJJdAWU11lP7W1qkcXbrslb0PM0= github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20200929101248-821df597ec8d/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.2.1-0.20200911111727-51649e37df2d h1:vohUfrOZVrbbzt7JUICBDX8rjcedLbuEsmuOJtx8mWY= github.com/cs3org/reva v1.2.1-0.20200911111727-51649e37df2d/go.mod h1:Q1/JB40ZKtlhZUxz+ZqB/O/VlrnQX//NYdPPRPsP0UE= @@ -189,6 +190,8 @@ github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e h1:khITGSnfDXtByQsLe github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7icnWOvIyGxnGUVvSSLvtEliuIE= github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= +github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp8j4EM32Ye10jh+UWjMxKbVr30g= +github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= From 5b2bbb3873c4a124b2c6c7f1778d1725051ae5dc Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 12 Oct 2020 11:31:34 +0200 Subject: [PATCH 05/34] update reva Signed-off-by: David Christofas --- storage/go.mod | 2 +- storage/go.sum | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/storage/go.mod b/storage/go.mod index ebbea8caaf..ea35d9398f 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 + github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4 github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index 64e6aeb242..75d9b3c8ee 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -192,6 +192,8 @@ github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7 github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp8j4EM32Ye10jh+UWjMxKbVr30g= github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= +github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4 h1:zWu5iNGr6l3IAIbZJaUW4u6qNqb5bznD0DwqfxCUATI= +github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4/go.mod h1:aZyarc9hwSGDYZXf0ucVS8uk0OUtK2Q5VK/m5ZaULf8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -772,6 +774,7 @@ github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20 github.com/ory/fosite v0.33.0 h1:tK+3Luazv4vIBJY3uagOBryAQ3IG3cs6kfo8piGBhAY= github.com/ory/fosite v0.33.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.35.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1 h1:Pwcmwd/cSnwJsYN76+w3HU7oXeWFTkwj/KUj1qGDrVw= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= @@ -1014,6 +1017,7 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4 h1:LYy1Hy3MJdrCdMwwzxA/dRok4ejH+RwNGbuoD9fCjto= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= From 05dbb5f1e88b8b732f1fa313a36fb3fb6ff2ea43 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Tue, 13 Oct 2020 13:57:00 +0200 Subject: [PATCH 06/34] update the environment variables in the drone file Signed-off-by: David Christofas --- .drone.star | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/.drone.star b/.drone.star index 836a0c3d33..7a72e63f2d 100644 --- a/.drone.star +++ b/.drone.star @@ -548,22 +548,18 @@ def accountsUITests(ctx, phoenixBranch, phoenixCommitId, storage): 'detach': True, 'environment' : { #'OCIS_LOG_LEVEL': 'debug', - 'STORAGE_STORAGE_HOME_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_HOME_DATA_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_OC_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_OC_DATA_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_HOME_DATA_TEMP_FOLDER': '/srv/app/tmp/', + 'STORAGE_HOME_DRIVER': '%s' % (storage), 'STORAGE_STORAGE_OCIS_ROOT': '/srv/app/tmp/ocis/storage/users', 'STORAGE_STORAGE_LOCAL_ROOT': '/srv/app/tmp/ocis/reva/root', 'STORAGE_STORAGE_OWNCLOUD_DATADIR': '/srv/app/tmp/ocis/owncloud/data', - 'STORAGE_STORAGE_OC_DATA_TEMP_FOLDER': '/srv/app/tmp/', 'STORAGE_STORAGE_OWNCLOUD_REDIS_ADDR': 'redis:6379', 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', 'STORAGE_LDAP_IDP': 'https://ocis-server:9200', 'PROXY_OIDC_ISSUER': 'https://ocis-server:9200', - 'STORAGE_STORAGE_OC_DATA_SERVER_URL': 'http://ocis-server:9164/data', - 'STORAGE_DATAGATEWAY_URL': 'https://ocis-server:9200/data', - 'STORAGE_FRONTEND_URL': 'https://ocis-server:9200', + 'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', + 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', + 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', + 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/accounts/ui/tests/config/drone/ocis-config.json', 'KONNECTD_IDENTIFIER_REGISTRATION_CONF': '/drone/src/accounts/ui/tests/config/drone/identifier-registration.yml', 'KONNECTD_ISS': 'https://ocis-server:9200', @@ -1406,23 +1402,21 @@ def ocisServer(storage): 'pull': 'always', 'detach': True, 'environment' : { - #'OCIS_LOG_LEVEL': 'debug', - 'STORAGE_STORAGE_HOME_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_HOME_DATA_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_OC_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_OC_DATA_DRIVER': '%s' % (storage), - 'STORAGE_STORAGE_HOME_DATA_TEMP_FOLDER': '/srv/app/tmp/', + 'OCIS_LOG_LEVEL': 'debug', + 'STORAGE_HOME_DRIVER': '%s' % (storage), 'STORAGE_STORAGE_OCIS_ROOT': '/srv/app/tmp/ocis/storage/users', 'STORAGE_STORAGE_LOCAL_ROOT': '/srv/app/tmp/ocis/local/root', 'STORAGE_STORAGE_OWNCLOUD_DATADIR': '/srv/app/tmp/ocis/owncloud/data', - 'STORAGE_STORAGE_OC_DATA_TEMP_FOLDER': '/srv/app/tmp/', 'STORAGE_STORAGE_OWNCLOUD_REDIS_ADDR': 'redis:6379', 'STORAGE_LDAP_IDP': 'https://ocis-server:9200', 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', 'PROXY_OIDC_ISSUER': 'https://ocis-server:9200', - 'STORAGE_STORAGE_OC_DATA_SERVER_URL': 'http://ocis-server:9164/data', - 'STORAGE_DATAGATEWAY_URL': 'https://ocis-server:9200/data', - 'STORAGE_FRONTEND_URL': 'https://ocis-server:9200', + 'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', + 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', + 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', + 'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', + 'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', + 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/ocis/tests/config/drone/ocis-config.json', 'KONNECTD_IDENTIFIER_REGISTRATION_CONF': '/drone/src/ocis/tests/config/drone/identifier-registration.yml', 'KONNECTD_ISS': 'https://ocis-server:9200', From 12be19e90ff286cc64a82e8c1776af554b557d02 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Tue, 13 Oct 2020 15:44:48 +0200 Subject: [PATCH 07/34] set user storage driver env variable in drone file Signed-off-by: David Christofas --- .drone.star | 1 + 1 file changed, 1 insertion(+) diff --git a/.drone.star b/.drone.star index 7a72e63f2d..1c35a0c7bd 100644 --- a/.drone.star +++ b/.drone.star @@ -1404,6 +1404,7 @@ def ocisServer(storage): 'environment' : { 'OCIS_LOG_LEVEL': 'debug', 'STORAGE_HOME_DRIVER': '%s' % (storage), + 'STORAGE_USERS_DRIVER': '%s' % (storage), 'STORAGE_STORAGE_OCIS_ROOT': '/srv/app/tmp/ocis/storage/users', 'STORAGE_STORAGE_LOCAL_ROOT': '/srv/app/tmp/ocis/local/root', 'STORAGE_STORAGE_OWNCLOUD_DATADIR': '/srv/app/tmp/ocis/owncloud/data', From 9617f913da55319a1ed61e065c87d86000f3f02e Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 14 Oct 2020 12:50:18 +0200 Subject: [PATCH 08/34] add metadata root config Signed-off-by: David Christofas --- .drone.star | 1 + 1 file changed, 1 insertion(+) diff --git a/.drone.star b/.drone.star index 1c35a0c7bd..25583717e2 100644 --- a/.drone.star +++ b/.drone.star @@ -1408,6 +1408,7 @@ def ocisServer(storage): 'STORAGE_STORAGE_OCIS_ROOT': '/srv/app/tmp/ocis/storage/users', 'STORAGE_STORAGE_LOCAL_ROOT': '/srv/app/tmp/ocis/local/root', 'STORAGE_STORAGE_OWNCLOUD_DATADIR': '/srv/app/tmp/ocis/owncloud/data', + 'STORAGE_METADATA_ROOT': '/srv/app/tmp/ocis/metadata', 'STORAGE_STORAGE_OWNCLOUD_REDIS_ADDR': 'redis:6379', 'STORAGE_LDAP_IDP': 'https://ocis-server:9200', 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', From 5257e0d6d395252e41f7a4c9fe06b12d4720a253 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 14 Oct 2020 14:14:20 +0200 Subject: [PATCH 09/34] rename command I currently don't know why but locally before renaming the service would always shutdown prematurely Signed-off-by: David Christofas --- ocis/pkg/command/storagepubliclink.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ocis/pkg/command/storagepubliclink.go b/ocis/pkg/command/storagepubliclink.go index d52347eb85..b535f6dc1f 100644 --- a/ocis/pkg/command/storagepubliclink.go +++ b/ocis/pkg/command/storagepubliclink.go @@ -14,7 +14,7 @@ import ( // StoragePublicLinkCommand is the entrypoint for the reva-storage-oc command. func StoragePublicLinkCommand(cfg *config.Config) *cli.Command { return &cli.Command{ - Name: "storage-storage-public-link", + Name: "storage-public-link", Usage: "Start storage public link storage", Category: "Extensions", Flags: flagset.StoragePublicLink(cfg.Storage), From 1084d45b0094702565d7f0c24ca824abca65d42d Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 14 Oct 2020 19:02:47 +0200 Subject: [PATCH 10/34] update expected failures Signed-off-by: David Christofas --- ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index fabb0355ed..ac64613117 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -105,10 +105,6 @@ apiAuthWebDav/webDavPROPFINDAuth.feature:37 # apiAuthWebDav/webDavPROPPATCHAuth.feature:38 # -# https://github.com/owncloud/ocis-reva/issues/9 users can access each-others data using the new webdav API -# -apiAuthWebDav/webDavPUTAuth.feature:38 -# # https://github.com/owncloud/ocis-reva/issues/175 Default capabilities for normal user not same as in oC-core # https://github.com/owncloud/ocis-reva/issues/176 Difference in response content of status.php and default capabilities # From 001fb868e564d3c93c2ea6c8388c9ef664ee0ca5 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Thu, 15 Oct 2020 11:45:03 +0200 Subject: [PATCH 11/34] change mount id of home storage Signed-off-by: David Christofas --- storage/pkg/flagset/storagehome.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage/pkg/flagset/storagehome.go b/storage/pkg/flagset/storagehome.go index 0bdf8c4c30..97bf7e3437 100644 --- a/storage/pkg/flagset/storagehome.go +++ b/storage/pkg/flagset/storagehome.go @@ -85,7 +85,7 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag { Name: "mount-id", // This is the mount id of the storage provider using the same storage driver // as /home but withoud home enabled. - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users + Value: "1284d238-aa92-42ce-bdc4-0b0000009154", // /users Usage: "mount id", EnvVars: []string{"STORAGE_HOME_MOUNT_ID"}, Destination: &cfg.Reva.StorageHome.MountID, From dd4c32037751a027148d53a646fbb09888bfa1f0 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Thu, 15 Oct 2020 13:54:12 +0200 Subject: [PATCH 12/34] change ocis log level to default and change public link storage mountid mapping Signed-off-by: David Christofas --- .drone.star | 2 +- storage/pkg/command/gateway.go | 2 ++ storage/pkg/flagset/gateway.go | 8 ++++++++ storage/pkg/flagset/storagehome.go | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.drone.star b/.drone.star index 25583717e2..9972c4c4be 100644 --- a/.drone.star +++ b/.drone.star @@ -1402,7 +1402,7 @@ def ocisServer(storage): 'pull': 'always', 'detach': True, 'environment' : { - 'OCIS_LOG_LEVEL': 'debug', + #'OCIS_LOG_LEVEL': 'debug', 'STORAGE_HOME_DRIVER': '%s' % (storage), 'STORAGE_USERS_DRIVER': '%s' % (storage), 'STORAGE_STORAGE_OCIS_ROOT': '/srv/app/tmp/ocis/storage/users', diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index d64e2c7cc8..a850bb42f3 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -244,6 +244,8 @@ func rules(cfg *config.Config) map[string]interface{} { cfg.Reva.StorageUsers.MountPath: cfg.Reva.StorageUsers.Endpoint, cfg.Reva.StorageUsers.MountID: cfg.Reva.StorageUsers.Endpoint, cfg.Reva.StoragePublicLink.MountPath: cfg.Reva.StoragePublicLink.Endpoint, + //TODO remove after talking to @jfd + cfg.Reva.StoragePublicLink.MountID: cfg.Reva.StorageHome.Endpoint, // public link storage returns the mount id of the actual storage // medatada storage not part of the global namespace } diff --git a/storage/pkg/flagset/gateway.go b/storage/pkg/flagset/gateway.go index 95c25a933f..7c182f8947 100644 --- a/storage/pkg/flagset/gateway.go +++ b/storage/pkg/flagset/gateway.go @@ -233,6 +233,14 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { Destination: &cfg.Reva.StoragePublicLink.MountPath, }, // public-link has no mount id + // TODO after talking to @jfd + &cli.StringFlag{ + Name: "storage-public-link-mount-id", + Value: "1284d238-aa92-42ce-bdc4-0b0000009162", + Usage: "mount id", + EnvVars: []string{"STORAGE_PUBLIC_LINK_MOUNT_ID"}, + Destination: &cfg.Reva.StoragePublicLink.MountID, + }, } flags = append(flags, TracingWithConfig(cfg)...) diff --git a/storage/pkg/flagset/storagehome.go b/storage/pkg/flagset/storagehome.go index 97bf7e3437..0bdf8c4c30 100644 --- a/storage/pkg/flagset/storagehome.go +++ b/storage/pkg/flagset/storagehome.go @@ -85,7 +85,7 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag { Name: "mount-id", // This is the mount id of the storage provider using the same storage driver // as /home but withoud home enabled. - Value: "1284d238-aa92-42ce-bdc4-0b0000009154", // /users + Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users Usage: "mount id", EnvVars: []string{"STORAGE_HOME_MOUNT_ID"}, Destination: &cfg.Reva.StorageHome.MountID, From 4e548da8193be6661db1713f68de267aaeecf5ab Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 11:10:57 +0200 Subject: [PATCH 13/34] clean up storage configuration and update storage documentation Signed-off-by: David Christofas --- docs/extensions/storage/_index.md | 20 ++++++-------------- storage/pkg/command/gateway.go | 2 -- storage/pkg/flagset/gateway.go | 8 -------- storage/pkg/flagset/storagehome.go | 2 +- storage/pkg/flagset/storageusers.go | 2 +- 5 files changed, 8 insertions(+), 26 deletions(-) diff --git a/docs/extensions/storage/_index.md b/docs/extensions/storage/_index.md index d0d0545b55..61307ec92a 100644 --- a/docs/extensions/storage/_index.md +++ b/docs/extensions/storage/_index.md @@ -26,20 +26,12 @@ It uses the port range 9140-9179 to preconfigure several services. | 9149 | authbearer debug | | 9150 | sharing | | 9151 | sharing debug | -| 9152 | storage root | -| 9153 | storage root debug | | 9154 | storage home | -| 9155 | storage home debug | -| 9156 | storage home data | -| 9157 | storage home data debug | -| 9158 | storage eos | -| 9159 | storage eos debug | -| 9160 | storage eos data | -| 9161 | storage eos data debug | -| 9162 | storage oc | -| 9163 | storage oc debug | -| 9164 | storage oc data | -| 9165 | storage oc data debug | +| 9155 | storage home data | +| 9156 | storage home debug | +| 9157 | storage users | +| 9158 | storage users data | +| 9159 | storage users debug | | 9166-9177 | reserved for s3, wnd, custom + data providers | | 9178 | storage public link | -| 9179 | storage public link data | +| 9179 | storage public link debug | diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index a850bb42f3..d64e2c7cc8 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -244,8 +244,6 @@ func rules(cfg *config.Config) map[string]interface{} { cfg.Reva.StorageUsers.MountPath: cfg.Reva.StorageUsers.Endpoint, cfg.Reva.StorageUsers.MountID: cfg.Reva.StorageUsers.Endpoint, cfg.Reva.StoragePublicLink.MountPath: cfg.Reva.StoragePublicLink.Endpoint, - //TODO remove after talking to @jfd - cfg.Reva.StoragePublicLink.MountID: cfg.Reva.StorageHome.Endpoint, // public link storage returns the mount id of the actual storage // medatada storage not part of the global namespace } diff --git a/storage/pkg/flagset/gateway.go b/storage/pkg/flagset/gateway.go index 7c182f8947..95c25a933f 100644 --- a/storage/pkg/flagset/gateway.go +++ b/storage/pkg/flagset/gateway.go @@ -233,14 +233,6 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { Destination: &cfg.Reva.StoragePublicLink.MountPath, }, // public-link has no mount id - // TODO after talking to @jfd - &cli.StringFlag{ - Name: "storage-public-link-mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", - Usage: "mount id", - EnvVars: []string{"STORAGE_PUBLIC_LINK_MOUNT_ID"}, - Destination: &cfg.Reva.StoragePublicLink.MountID, - }, } flags = append(flags, TracingWithConfig(cfg)...) diff --git a/storage/pkg/flagset/storagehome.go b/storage/pkg/flagset/storagehome.go index 0bdf8c4c30..72d0d0c547 100644 --- a/storage/pkg/flagset/storagehome.go +++ b/storage/pkg/flagset/storagehome.go @@ -85,7 +85,7 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag { Name: "mount-id", // This is the mount id of the storage provider using the same storage driver // as /home but withoud home enabled. - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users + Value: "1284d238-aa92-42ce-bdc4-0b0000009157", // /users Usage: "mount id", EnvVars: []string{"STORAGE_HOME_MOUNT_ID"}, Destination: &cfg.Reva.StorageHome.MountID, diff --git a/storage/pkg/flagset/storageusers.go b/storage/pkg/flagset/storageusers.go index ae4cbade8d..c5a53d198b 100644 --- a/storage/pkg/flagset/storageusers.go +++ b/storage/pkg/flagset/storageusers.go @@ -82,7 +82,7 @@ func StorageUsersWithConfig(cfg *config.Config) []cli.Flag { }, &cli.StringFlag{ Name: "mount-id", - Value: "1284d238-aa92-42ce-bdc4-0b0000009162", // /users + Value: "1284d238-aa92-42ce-bdc4-0b0000009157", // /users Usage: "mount id", EnvVars: []string{"STORAGE_USERS_MOUNT_ID"}, Destination: &cfg.Reva.StorageUsers.MountID, From 655c7a1900b3aede1c936f2bd6018b87a3a0b9de Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 13:45:23 +0200 Subject: [PATCH 14/34] clean up user data in ocis storage Signed-off-by: David Christofas --- .drone.star | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.drone.star b/.drone.star index 9972c4c4be..460cd3d383 100644 --- a/.drone.star +++ b/.drone.star @@ -342,9 +342,8 @@ def localApiTests(ctx, coreBranch = 'master', coreCommit = '', storage = 'ownclo 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data/' if storage == 'owncloud' else ''), - 'STORAGE_DRIVER': '%s' % ('OWNCLOUD' if storage == 'owncloud' else 'OCIS'), - 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/*'), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/' if storage == 'owncloud' else ''), + 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), 'TEST_OCIS':'true', @@ -397,9 +396,8 @@ def coreApiTests(ctx, coreBranch = 'master', coreCommit = '', part_number = 1, n 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data/' if storage == 'owncloud' else ''), - 'STORAGE_DRIVER': '%s' % ('OWNCLOUD' if storage == 'owncloud' else 'OCIS'), - 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/*'), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/' if storage == 'owncloud' else ''), + 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), 'TEST_OCIS':'true', From 4a20f14602a4b7a256a5f3ff1c10d9aafa01661f Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 14:50:39 +0200 Subject: [PATCH 15/34] update expected failures Signed-off-by: David Christofas --- .../expected-failures-on-OCIS-storage.txt | 156 ------------------ 1 file changed, 156 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index ac64613117..ccdefa9e10 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -344,10 +344,6 @@ apiShareManagementToShares/acceptShares.feature:398 apiShareManagementToShares/acceptShares.feature:417 apiShareManagementToShares/acceptShares.feature:439 # -# https://github.com/owncloud/product/issues/208 After accepting a share data in the received file cannot be downloaded -# -apiShareManagementToShares/acceptSharesToSharesFolder.feature:17 -# # https://github.com/owncloud/product/issues/207 Response is empty when accepting a share # apiShareManagementToShares/acceptSharesToSharesFolder.feature:28 @@ -494,22 +490,8 @@ apiShareOperationsToShares/getWebDAVSharePermissions.feature:143 # apiShareOperationsToShares/gettingShares.feature:167 apiShareOperationsToShares/gettingShares.feature:168 -# -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiSharePublicLink1/changingPublicLinkShare.feature:74 -apiSharePublicLink1/changingPublicLinkShare.feature:139 -apiSharePublicLink1/changingPublicLinkShare.feature:185 -apiSharePublicLink1/changingPublicLinkShare.feature:209 -apiSharePublicLink1/changingPublicLinkShare.feature:255 apiSharePublicLink1/createPublicLinkShare.feature:793 apiSharePublicLink1/createPublicLinkShare.feature:804 -apiSharePublicLink1/deletePublicLinkShare.feature:20 -apiSharePublicLink1/deletePublicLinkShare.feature:21 -apiSharePublicLink1/deletePublicLinkShare.feature:53 -apiSharePublicLink1/deletePublicLinkShare.feature:54 -apiSharePublicLink1/deletePublicLinkShare.feature:70 -apiSharePublicLink1/deletePublicLinkShare.feature:71 # # https://github.com/owncloud/product/issues/271 Cannot set mtime on upload # @@ -621,33 +603,6 @@ apiSharePublicLink1/createPublicLinkShare.feature:730 apiSharePublicLink1/createPublicLinkShare.feature:733 apiSharePublicLink1/createPublicLinkShare.feature:742 # -# https://github.com/owncloud/ocis-reva/issues/311 Deleting a public link after renaming a file -# -apiSharePublicLink1/deletePublicLinkShare.feature:37 -apiSharePublicLink1/deletePublicLinkShare.feature:38 -# -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiSharePublicLink2/copyFromPublicLink.feature:9 -apiSharePublicLink2/copyFromPublicLink.feature:21 -apiSharePublicLink2/copyFromPublicLink.feature:34 -apiSharePublicLink2/copyFromPublicLink.feature:47 -apiSharePublicLink2/copyFromPublicLink.feature:86 -apiSharePublicLink2/copyFromPublicLink.feature:113 -apiSharePublicLink2/copyFromPublicLink.feature:114 -apiSharePublicLink2/copyFromPublicLink.feature:115 -apiSharePublicLink2/copyFromPublicLink.feature:116 -apiSharePublicLink2/copyFromPublicLink.feature:131 -apiSharePublicLink2/copyFromPublicLink.feature:132 -apiSharePublicLink2/copyFromPublicLink.feature:133 -apiSharePublicLink2/copyFromPublicLink.feature:134 -apiSharePublicLink2/copyFromPublicLink.feature:150 -apiSharePublicLink2/copyFromPublicLink.feature:151 -apiSharePublicLink2/copyFromPublicLink.feature:152 -apiSharePublicLink2/copyFromPublicLink.feature:153 -apiSharePublicLink2/multilinkSharing.feature:108 -apiSharePublicLink2/uploadToPublicLinkShare.feature:92 -# # https://github.com/owncloud/ocis-reva/issues/373 copying a folder within a public link folder to folder with same name as an already existing file overwrites the parent file # apiSharePublicLink2/copyFromPublicLink.feature:60 @@ -1124,25 +1079,6 @@ apiWebdavMove1/moveFolderToExcludedDirectory.feature:35 apiWebdavMove1/moveFolderToExcludedDirectory.feature:70 apiWebdavMove1/moveFolderToExcludedDirectory.feature:71 # -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiWebdavMove2/moveFile.feature:21 -apiWebdavMove2/moveFile.feature:22 -apiWebdavMove2/moveFile.feature:34 -apiWebdavMove2/moveFile.feature:35 -apiWebdavMove2/moveFile.feature:303 -apiWebdavMove2/moveFile.feature:304 -apiWebdavMove2/moveFile.feature:305 -apiWebdavMove2/moveFile.feature:306 -apiWebdavMove2/moveFile.feature:307 -apiWebdavMove2/moveFile.feature:308 -apiWebdavMove2/moveFile.feature:309 -apiWebdavMove2/moveFile.feature:310 -apiWebdavMove2/moveFile.feature:311 -apiWebdavMove2/moveFile.feature:312 -apiWebdavMove2/moveFile.feature:313 -apiWebdavMove2/moveFile.feature:314 -# # https://github.com/owncloud/core/issues/38006 Review and fix the tests that have sharing step to work with ocis # apiWebdavMove2/moveFile.feature:89 @@ -1186,15 +1122,6 @@ apiWebdavMove2/moveFileToExcludedDirectory.feature:29 apiWebdavMove2/moveFileToExcludedDirectory.feature:63 apiWebdavMove2/moveFileToExcludedDirectory.feature:64 # -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiWebdavOperations/deleteFile.feature:33 -apiWebdavOperations/deleteFile.feature:34 -apiWebdavOperations/deleteFolder.feature:32 -apiWebdavOperations/deleteFolder.feature:33 -apiWebdavOperations/deleteFolder.feature:47 -apiWebdavOperations/deleteFolder.feature:48 -# # https://github.com/owncloud/core/issues/38006 Review and fix the tests that have sharing step to work with ocis # apiWebdavOperations/deleteFolder.feature:67 @@ -1243,26 +1170,6 @@ apiWebdavOperations/search.feature:211 apiWebdavOperations/search.feature:213 apiWebdavOperations/search.feature:229 # -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiWebdavProperties1/copyFile.feature:183 -apiWebdavProperties1/copyFile.feature:184 -apiWebdavProperties1/createFolder.feature:18 -apiWebdavProperties1/createFolder.feature:19 -apiWebdavProperties1/createFolder.feature:20 -apiWebdavProperties1/createFolder.feature:21 -apiWebdavProperties1/createFolder.feature:22 -apiWebdavProperties1/createFolder.feature:23 -apiWebdavProperties1/createFolder.feature:24 -apiWebdavProperties1/createFolder.feature:25 -apiWebdavProperties1/createFolder.feature:26 -apiWebdavProperties1/createFolder.feature:27 -apiWebdavProperties1/createFolder.feature:28 -apiWebdavProperties1/createFolder.feature:29 -apiWebdavProperties1/createFolder.feature:30 -apiWebdavProperties1/createFolder.feature:31 -apiWebdavProperties1/createFolder.feature:32 -# # https://github.com/owncloud/core/issues/38006 Review and fix the tests that have sharing step to work with ocis # apiWebdavProperties1/copyFile.feature:65 @@ -1330,33 +1237,6 @@ apiWebdavProperties1/getQuota.feature:78 apiWebdavProperties1/setFileProperties.feature:63 apiWebdavProperties1/setFileProperties.feature:64 # -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiWebdavProperties2/getFileProperties.feature:19 -apiWebdavProperties2/getFileProperties.feature:20 -apiWebdavProperties2/getFileProperties.feature:21 -apiWebdavProperties2/getFileProperties.feature:22 -apiWebdavProperties2/getFileProperties.feature:23 -apiWebdavProperties2/getFileProperties.feature:24 -apiWebdavProperties2/getFileProperties.feature:25 -apiWebdavProperties2/getFileProperties.feature:26 -apiWebdavProperties2/getFileProperties.feature:38 -apiWebdavProperties2/getFileProperties.feature:42 -apiWebdavProperties2/getFileProperties.feature:81 -apiWebdavProperties2/getFileProperties.feature:82 -apiWebdavProperties2/getFileProperties.feature:83 -apiWebdavProperties2/getFileProperties.feature:84 -apiWebdavProperties2/getFileProperties.feature:85 -apiWebdavProperties2/getFileProperties.feature:86 -apiWebdavProperties2/getFileProperties.feature:87 -apiWebdavProperties2/getFileProperties.feature:88 -apiWebdavProperties2/getFileProperties.feature:89 -apiWebdavProperties2/getFileProperties.feature:90 -apiWebdavProperties2/getFileProperties.feature:102 -apiWebdavProperties2/getFileProperties.feature:103 -apiWebdavProperties2/getFileProperties.feature:339 -apiWebdavProperties2/getFileProperties.feature:340 -# # https://github.com/owncloud/ocis-reva/issues/214 XML properties in webdav response not properly encoded # apiWebdavProperties2/getFileProperties.feature:37 @@ -1428,28 +1308,6 @@ apiWebdavProperties2/getFileProperties.feature:441 apiWebdavProperties2/getFileProperties.feature:442 apiWebdavProperties2/getFileProperties.feature:454 apiWebdavProperties2/getFileProperties.feature:455 -# -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiWebdavUpload1/uploadFile.feature:20 -apiWebdavUpload1/uploadFile.feature:21 -apiWebdavUpload1/uploadFile.feature:22 -apiWebdavUpload1/uploadFile.feature:23 -apiWebdavUpload1/uploadFile.feature:24 -apiWebdavUpload1/uploadFile.feature:25 -apiWebdavUpload1/uploadFile.feature:26 -apiWebdavUpload1/uploadFile.feature:27 -apiWebdavUpload1/uploadFile.feature:123 -apiWebdavUpload1/uploadFile.feature:124 -apiWebdavUpload1/uploadFile.feature:125 -apiWebdavUpload1/uploadFile.feature:126 -apiWebdavUpload1/uploadFile.feature:127 -apiWebdavUpload1/uploadFile.feature:128 -apiWebdavUpload1/uploadFile.feature:129 -apiWebdavUpload1/uploadFile.feature:130 -apiWebdavUpload1/uploadFile.feature:131 -apiWebdavUpload1/uploadFile.feature:132 -apiWebdavUpload1/uploadFile.feature:133 apiWebdavUpload1/uploadFile.feature:144 apiWebdavUpload1/uploadFile.feature:145 apiWebdavUpload1/uploadFile.feature:157 @@ -1662,8 +1520,6 @@ apiWebdavEtagPropagation1/deleteFileFolder.feature:183 # apiWebdavEtagPropagation1/moveFileFolder.feature:20 apiWebdavEtagPropagation1/moveFileFolder.feature:21 -apiWebdavEtagPropagation1/moveFileFolder.feature:58 -apiWebdavEtagPropagation1/moveFileFolder.feature:59 apiWebdavEtagPropagation1/moveFileFolder.feature:74 apiWebdavEtagPropagation1/moveFileFolder.feature:75 apiWebdavEtagPropagation1/moveFileFolder.feature:93 @@ -1682,8 +1538,6 @@ apiWebdavEtagPropagation1/moveFileFolder.feature:40 # apiWebdavEtagPropagation1/moveFileFolder.feature:139 apiWebdavEtagPropagation1/moveFileFolder.feature:140 -apiWebdavEtagPropagation1/moveFileFolder.feature:166 -apiWebdavEtagPropagation1/moveFileFolder.feature:167 apiWebdavEtagPropagation1/moveFileFolder.feature:201 apiWebdavEtagPropagation1/moveFileFolder.feature:202 apiWebdavEtagPropagation1/moveFileFolder.feature:235 @@ -1692,18 +1546,8 @@ apiWebdavEtagPropagation1/moveFileFolder.feature:269 apiWebdavEtagPropagation1/moveFileFolder.feature:270 apiWebdavEtagPropagation1/moveFileFolder.feature:303 apiWebdavEtagPropagation1/moveFileFolder.feature:304 -apiWebdavEtagPropagation2/createFolder.feature:63 -apiWebdavEtagPropagation2/createFolder.feature:64 -apiWebdavEtagPropagation2/createFolder.feature:87 -apiWebdavEtagPropagation2/createFolder.feature:88 -apiWebdavEtagPropagation2/upload.feature:63 -apiWebdavEtagPropagation2/upload.feature:64 -apiWebdavEtagPropagation2/upload.feature:86 -apiWebdavEtagPropagation2/upload.feature:87 apiWebdavEtagPropagation2/upload.feature:110 apiWebdavEtagPropagation2/upload.feature:111 -apiWebdavEtagPropagation2/upload.feature:134 -apiWebdavEtagPropagation2/upload.feature:135 # # https://github.com/owncloud/product/issues/209 Implement Trashbin Feature for ocis storage # From a6a6354c63082d834de2785b61c10220e4158e4b Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 15:16:26 +0200 Subject: [PATCH 16/34] fix OCIS_REVA_DATA_ROOT Signed-off-by: David Christofas --- .drone.star | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.drone.star b/.drone.star index 460cd3d383..86891e8811 100644 --- a/.drone.star +++ b/.drone.star @@ -342,7 +342,7 @@ def localApiTests(ctx, coreBranch = 'master', coreCommit = '', storage = 'ownclo 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/' if storage == 'owncloud' else ''), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data' if storage == 'owncloud' else ''), 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), @@ -396,7 +396,7 @@ def coreApiTests(ctx, coreBranch = 'master', coreCommit = '', part_number = 1, n 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/' if storage == 'owncloud' else ''), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data' if storage == 'owncloud' else ''), 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), From ee7260c2a8f3300b5519f62fac0b132036bd0bde Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 15:19:09 +0200 Subject: [PATCH 17/34] update reva Signed-off-by: David Christofas --- storage/go.mod | 2 +- storage/go.sum | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/storage/go.mod b/storage/go.mod index ea35d9398f..9e2d6a02a5 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4 + github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025 github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index 75d9b3c8ee..8661a20889 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -107,6 +107,7 @@ github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZve github.com/aws/aws-sdk-go v1.34.12 h1:7UbBEYDUa4uW0YmRnOd806MS1yoJMcaodBWDzvBShAI= github.com/aws/aws-sdk-go v1.34.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.35.0/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48= +github.com/aws/aws-sdk-go v1.35.9/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -194,6 +195,8 @@ github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4 h1:zWu5iNGr6l3IAIbZJaUW4u6qNqb5bznD0DwqfxCUATI= github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4/go.mod h1:aZyarc9hwSGDYZXf0ucVS8uk0OUtK2Q5VK/m5ZaULf8= +github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025 h1:Sr7XcVeegD/DD/b2M6tJl4R+J4FNr41guiJ9Ge0Rlss= +github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -264,6 +267,7 @@ github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2 github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-ldap/ldap/v3 v3.2.3 h1:FBt+5w3q/vPVPb4eYMQSn+pOiz4zewPamYhlGMmc7yM= github.com/go-ldap/ldap/v3 v3.2.3/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjRvjKpyMg= +github.com/go-ldap/ldap/v3 v3.2.4/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjRvjKpyMg= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-openapi/errors v0.19.2/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= @@ -486,6 +490,7 @@ github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:W github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0= From f51da1797aaa2c475e1fc3d5ee797b692b0c3de2 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 15:54:57 +0200 Subject: [PATCH 18/34] update expected failures Signed-off-by: David Christofas --- .../acceptance/expected-failures-on-OCIS-storage.txt | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index ccdefa9e10..2f89b15cd6 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -433,10 +433,6 @@ apiShareManagementBasicToShares/createShareToSharesFolder.feature:343 apiShareManagementBasicToShares/deleteShareFromShares.feature:58 apiShareManagementBasicToShares/deleteShareFromShares.feature:72 # -# https://github.com/owncloud/product/issues/270 share permissions are not enforced -# -apiShareManagementBasicToShares/deleteShareFromShares.feature:107 -# # cannot share a folder with create permission # https://github.com/owncloud/ocis-reva/issues/372 Listing shares via ocs API does not show path for parent folders # @@ -1533,11 +1529,6 @@ apiWebdavEtagPropagation1/moveFileFolder.feature:321 # apiWebdavEtagPropagation1/moveFileFolder.feature:39 apiWebdavEtagPropagation1/moveFileFolder.feature:40 -# -# https://github.com/owncloud/product/issues/243 etags don't change for a share receiver -# -apiWebdavEtagPropagation1/moveFileFolder.feature:139 -apiWebdavEtagPropagation1/moveFileFolder.feature:140 apiWebdavEtagPropagation1/moveFileFolder.feature:201 apiWebdavEtagPropagation1/moveFileFolder.feature:202 apiWebdavEtagPropagation1/moveFileFolder.feature:235 @@ -1546,8 +1537,6 @@ apiWebdavEtagPropagation1/moveFileFolder.feature:269 apiWebdavEtagPropagation1/moveFileFolder.feature:270 apiWebdavEtagPropagation1/moveFileFolder.feature:303 apiWebdavEtagPropagation1/moveFileFolder.feature:304 -apiWebdavEtagPropagation2/upload.feature:110 -apiWebdavEtagPropagation2/upload.feature:111 # # https://github.com/owncloud/product/issues/209 Implement Trashbin Feature for ocis storage # From 9ae1891620e8158474017a50145172f12f2adc8c Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 16:12:55 +0200 Subject: [PATCH 19/34] fix OCIS_REVA_DATA_ROOT Signed-off-by: David Christofas --- .drone.star | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.drone.star b/.drone.star index 86891e8811..1539966b80 100644 --- a/.drone.star +++ b/.drone.star @@ -342,7 +342,7 @@ def localApiTests(ctx, coreBranch = 'master', coreCommit = '', storage = 'ownclo 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data' if storage == 'owncloud' else ''), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data/' if storage == 'owncloud' else ''), 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), @@ -396,7 +396,7 @@ def coreApiTests(ctx, coreBranch = 'master', coreCommit = '', part_number = 1, n 'pull': 'always', 'environment' : { 'TEST_SERVER_URL': 'https://ocis-server:9200', - 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data' if storage == 'owncloud' else ''), + 'OCIS_REVA_DATA_ROOT': '%s' % ('/srv/app/tmp/ocis/owncloud/data/' if storage == 'owncloud' else ''), 'DELETE_USER_DATA_CMD': '%s' % ('' if storage == 'owncloud' else 'rm -rf /srv/app/tmp/ocis/storage/users/nodes/root/* /srv/app/tmp/ocis/storage/users/nodes/*-*-*-*'), 'SKELETON_DIR': '/srv/app/tmp/testing/data/apiSkeleton', 'OCIS_SKELETON_STRATEGY': '%s' % ('copy' if storage == 'owncloud' else 'upload'), From 916c984a8f27406bcf42911dfd46dfea0c38b6c3 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Mon, 19 Oct 2020 16:50:22 +0200 Subject: [PATCH 20/34] update expected failures Signed-off-by: David Christofas --- .../acceptance/expected-failures-on-OCIS-storage.txt | 2 ++ .../acceptance/expected-failures-on-OWNCLOUD-storage.txt | 8 -------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index 2f89b15cd6..d97a2fecaf 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -1516,6 +1516,8 @@ apiWebdavEtagPropagation1/deleteFileFolder.feature:183 # apiWebdavEtagPropagation1/moveFileFolder.feature:20 apiWebdavEtagPropagation1/moveFileFolder.feature:21 +apiWebdavEtagPropagation1/moveFileFolder.feature:58 +apiWebdavEtagPropagation1/moveFileFolder.feature:59 apiWebdavEtagPropagation1/moveFileFolder.feature:74 apiWebdavEtagPropagation1/moveFileFolder.feature:75 apiWebdavEtagPropagation1/moveFileFolder.feature:93 diff --git a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt index 5bba061926..44e0d6d4fc 100644 --- a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt @@ -348,10 +348,6 @@ apiShareManagementToShares/acceptShares.feature:398 apiShareManagementToShares/acceptShares.feature:417 apiShareManagementToShares/acceptShares.feature:439 # -# https://github.com/owncloud/product/issues/208 After accepting a share data in the received file cannot be downloaded -# -apiShareManagementToShares/acceptSharesToSharesFolder.feature:17 -# # https://github.com/owncloud/product/issues/207 Response is empty when accepting a share # apiShareManagementToShares/acceptSharesToSharesFolder.feature:28 @@ -434,10 +430,6 @@ apiShareManagementBasicToShares/createShareToSharesFolder.feature:343 apiShareManagementBasicToShares/deleteShareFromShares.feature:58 apiShareManagementBasicToShares/deleteShareFromShares.feature:72 # -# https://github.com/owncloud/product/issues/270 share permissions are not enforced -# -apiShareManagementBasicToShares/deleteShareFromShares.feature:107 -# # cannot share a folder with create permission # https://github.com/owncloud/ocis-reva/issues/372 Listing shares via ocs API does not show path for parent folders # From ec692d3c5e26f56c03325472f60e3283d9979fd2 Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 21 Oct 2020 10:15:17 +0200 Subject: [PATCH 21/34] update reva Signed-off-by: David Christofas --- storage/go.mod | 2 +- storage/go.sum | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/storage/go.mod b/storage/go.mod index 9e2d6a02a5..313e7e1a66 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025 + github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index 8661a20889..1b2c157dc8 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -197,6 +197,8 @@ github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4 h1:zWu5iNGr6l3IAIbZJ github.com/cs3org/reva v1.3.1-0.20201009145025-fb08084ce5d4/go.mod h1:aZyarc9hwSGDYZXf0ucVS8uk0OUtK2Q5VK/m5ZaULf8= github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025 h1:Sr7XcVeegD/DD/b2M6tJl4R+J4FNr41guiJ9Ge0Rlss= github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= +github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc h1:8y6N/bscmzdXd4yAv6bIJiqggter8iEmb4cYMhuZkE8= +github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= From 63eede3cee5144e775ef4fad64655b830d1df87b Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 21 Oct 2020 11:56:10 +0200 Subject: [PATCH 22/34] update expected failures Signed-off-by: David Christofas --- .../acceptance/expected-failures-on-OCIS-storage.txt | 11 ----------- .../expected-failures-on-OWNCLOUD-storage.txt | 2 -- 2 files changed, 13 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index d97a2fecaf..e5812516f0 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -837,8 +837,6 @@ apiShareReshareToShares2/reShareSubfolder.feature:84 # # https://github.com/owncloud/product/issues/270 share permissions are not enforced # -apiShareReshareToShares3/reShareUpdate.feature:42 -apiShareReshareToShares3/reShareUpdate.feature:43 apiShareReshareToShares3/reShareUpdate.feature:59 apiShareReshareToShares3/reShareUpdate.feature:60 # @@ -853,15 +851,6 @@ apiShareReshareToShares2/reShareSubfolder.feature:128 apiShareReshareToShares2/reShareSubfolder.feature:149 apiShareReshareToShares2/reShareSubfolder.feature:150 # -# https://github.com/owncloud/product/issues/237 etags are not quoted in PROPFIND -# -apiShareReshareToShares3/reShareUpdate.feature:76 -apiShareReshareToShares3/reShareUpdate.feature:77 -apiShareReshareToShares3/reShareUpdate.feature:93 -apiShareReshareToShares3/reShareUpdate.feature:94 -apiShareReshareToShares3/reShareUpdate.feature:25 -apiShareReshareToShares3/reShareUpdate.feature:26 -# # Share receiver cannot get share by id # https://github.com/owncloud/product/issues/253 # diff --git a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt index 44e0d6d4fc..ba6cf3a920 100644 --- a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt @@ -744,8 +744,6 @@ apiShareReshareToShares2/reShareSubfolder.feature:84 # # https://github.com/owncloud/product/issues/270 share permissions are not enforced # -apiShareReshareToShares3/reShareUpdate.feature:25 -apiShareReshareToShares3/reShareUpdate.feature:26 apiShareReshareToShares3/reShareUpdate.feature:59 apiShareReshareToShares3/reShareUpdate.feature:60 # From 7094375c5f1b5955d3c5d23fd0da44c254c83b5b Mon Sep 17 00:00:00 2001 From: Benedikt Kulmann Date: Wed, 21 Oct 2020 16:05:45 +0200 Subject: [PATCH 23/34] Don't expose data servers --- .drone.star | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.drone.star b/.drone.star index 1539966b80..a608c2256a 100644 --- a/.drone.star +++ b/.drone.star @@ -1411,11 +1411,11 @@ def ocisServer(storage): 'STORAGE_LDAP_IDP': 'https://ocis-server:9200', 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', 'PROXY_OIDC_ISSUER': 'https://ocis-server:9200', - 'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', - 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', + #'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', + #'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', - 'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', - 'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', + #'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', + #'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/ocis/tests/config/drone/ocis-config.json', 'KONNECTD_IDENTIFIER_REGISTRATION_CONF': '/drone/src/ocis/tests/config/drone/identifier-registration.yml', From 91977ab84bcff136e4f1db77a8865179676a5b7f Mon Sep 17 00:00:00 2001 From: Benedikt Kulmann Date: Wed, 21 Oct 2020 16:07:34 +0200 Subject: [PATCH 24/34] Bring back data server URLs.......... --- .drone.star | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.drone.star b/.drone.star index a608c2256a..37dd4f3322 100644 --- a/.drone.star +++ b/.drone.star @@ -1412,10 +1412,10 @@ def ocisServer(storage): 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', 'PROXY_OIDC_ISSUER': 'https://ocis-server:9200', #'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', - #'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', + 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', #'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', - #'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', + 'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/ocis/tests/config/drone/ocis-config.json', 'KONNECTD_IDENTIFIER_REGISTRATION_CONF': '/drone/src/ocis/tests/config/drone/identifier-registration.yml', From 1da23d100eced49919df4a944f4ce1726b73c796 Mon Sep 17 00:00:00 2001 From: Benedikt Kulmann Date: Wed, 21 Oct 2020 16:32:08 +0200 Subject: [PATCH 25/34] Bring back exposing user storage --- .drone.star | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone.star b/.drone.star index 37dd4f3322..92d74e33f8 100644 --- a/.drone.star +++ b/.drone.star @@ -1414,7 +1414,7 @@ def ocisServer(storage): #'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', - #'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', + 'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', 'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/ocis/tests/config/drone/ocis-config.json', From 84459968a3d6bb1da51b55678fe89635d0554fa6 Mon Sep 17 00:00:00 2001 From: Benedikt Kulmann Date: Wed, 21 Oct 2020 16:40:32 +0200 Subject: [PATCH 26/34] Confirmed that both the home storage and users storage need to be accessible through the reva data gateway --- .drone.star | 2 -- 1 file changed, 2 deletions(-) diff --git a/.drone.star b/.drone.star index 92d74e33f8..82dba4cf12 100644 --- a/.drone.star +++ b/.drone.star @@ -1411,10 +1411,8 @@ def ocisServer(storage): 'STORAGE_LDAP_IDP': 'https://ocis-server:9200', 'STORAGE_OIDC_ISSUER': 'https://ocis-server:9200', 'PROXY_OIDC_ISSUER': 'https://ocis-server:9200', - #'STORAGE_HOME_EXPOSE_DATA_SERVER': 'true', 'STORAGE_HOME_DATA_SERVER_URL': 'http://ocis-server:9155/data', 'STORAGE_DATAGATEWAY_PUBLIC_URL': 'https://ocis-server:9200/data', - 'STORAGE_USERS_EXPOSE_DATA_SERVER': 'true', 'STORAGE_USERS_DATA_SERVER_URL': 'http://ocis-server:9158/data', 'STORAGE_FRONTEND_PUBLIC_URL': 'https://ocis-server:9200', 'PHOENIX_WEB_CONFIG': '/drone/src/ocis/tests/config/drone/ocis-config.json', From 64f057c0bc1b4d39a8d271813ef1dfb9ec9741cb Mon Sep 17 00:00:00 2001 From: David Christofas Date: Wed, 21 Oct 2020 15:41:22 +0000 Subject: [PATCH 27/34] Automated changelog update [skip ci] --- ocis/go.mod | 2 +- ocis/go.sum | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ocis/go.mod b/ocis/go.mod index d2902114ca..11ac1aaa02 100644 --- a/ocis/go.mod +++ b/ocis/go.mod @@ -30,7 +30,7 @@ require ( github.com/owncloud/ocis/webdav v0.0.0-00010101000000-000000000000 github.com/refs/pman v0.0.0-20200701173654-f05b8833071a github.com/restic/calens v0.2.0 - go.opencensus.io v0.22.4 + go.opencensus.io v0.22.5 ) replace ( diff --git a/ocis/go.sum b/ocis/go.sum index 50423cb24e..f992d81741 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -128,6 +128,7 @@ github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZve github.com/aws/aws-sdk-go v1.34.2/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.35.0 h1:Pxqn1MWNfBCNcX7jrXCCTfsKpg5ms2IMUMmmcGtYJuo= github.com/aws/aws-sdk-go v1.35.0/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48= +github.com/aws/aws-sdk-go v1.35.9/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= @@ -271,6 +272,7 @@ github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29 h1:bGdr8WQI3khh8/Uo7 github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5OGC8WPb5LLMZtCqymwSk2fiKVQANzy0zg= github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp8j4EM32Ye10jh+UWjMxKbVr30g= github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= +github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= @@ -390,6 +392,7 @@ github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2 github.com/go-ldap/ldap/v3 v3.1.7/go.mod h1:5Zun81jBTabRaI8lzN7E1JjyEl1g6zI6u9pd8luAK4Q= github.com/go-ldap/ldap/v3 v3.2.3 h1:FBt+5w3q/vPVPb4eYMQSn+pOiz4zewPamYhlGMmc7yM= github.com/go-ldap/ldap/v3 v3.2.3/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjRvjKpyMg= +github.com/go-ldap/ldap/v3 v3.2.4/go.mod h1:iYS1MdmrmceOJ1QOTnRXrIs7i3kloqtmGQjRvjKpyMg= github.com/go-log/log v0.1.0/go.mod h1:4mBwpdRMFLiuXZDCwU2lKQFsoSCo72j3HqBK9d81N2M= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= @@ -632,6 +635,7 @@ github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvq github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= @@ -1060,6 +1064,7 @@ github.com/ory/fosite v0.30.2/go.mod h1:Lq9qQ9Sl6mcea2Tt8J7PU+wUeFYPZ+vg7N3zPVKG github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20Q8I= github.com/ory/fosite v0.34.0 h1:lCUX4f5BoiXBIRUYKeTne+aRl0v6StgWpyYKq+7ILw0= github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.35.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= github.com/ory/go-acc v0.2.5 h1:31irXHzG2vnKQSE4weJm7AdfrnpaVjVCq3nD7viXCJE= @@ -1378,6 +1383,7 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4 h1:LYy1Hy3MJdrCdMwwzxA/dRok4ejH+RwNGbuoD9fCjto= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0 h1:OI5t8sDa1Or+q8AeE+yKeB/SDYioSHAgcVljj9JIETY= From 8be53d6ba49cf4996dd4753723c0247bbaabcde2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Wed, 21 Oct 2020 17:40:08 +0200 Subject: [PATCH 28/34] update reva to dd3a8c0f38 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jörn Friedrich Dreyer --- changelog/unreleased/update-reva-to-dd3a8c0f38.md | 6 ++++++ storage/go.mod | 2 +- storage/go.sum | 4 ++++ 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 changelog/unreleased/update-reva-to-dd3a8c0f38.md diff --git a/changelog/unreleased/update-reva-to-dd3a8c0f38.md b/changelog/unreleased/update-reva-to-dd3a8c0f38.md new file mode 100644 index 0000000000..1c5e3037cb --- /dev/null +++ b/changelog/unreleased/update-reva-to-dd3a8c0f38.md @@ -0,0 +1,6 @@ +Enhancement: Update reva to dd3a8c0f38 + +* fixes etag propagation in the ocis driver + +https://github.com/owncloud/ocis/pull/725 +https://github.com/cs3org/reva/pull/1264 \ No newline at end of file diff --git a/storage/go.mod b/storage/go.mod index 313e7e1a66..8043f150c3 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -3,7 +3,7 @@ module github.com/owncloud/ocis/storage go 1.13 require ( - github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc + github.com/cs3org/reva v1.3.1-0.20201021130722-dd3a8c0f3881 github.com/gofrs/uuid v3.3.0+incompatible github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index 1b2c157dc8..0fa890ad0a 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -199,6 +199,8 @@ github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025 h1:Sr7XcVeegD/DD/b2M github.com/cs3org/reva v1.3.1-0.20201019131523-e221f0ba5025/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc h1:8y6N/bscmzdXd4yAv6bIJiqggter8iEmb4cYMhuZkE8= github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= +github.com/cs3org/reva v1.3.1-0.20201021130722-dd3a8c0f3881 h1:xhpamvgyDr0jCtjXZCTk8qOdnslxhz8dHym5KLh7gl8= +github.com/cs3org/reva v1.3.1-0.20201021130722-dd3a8c0f3881/go.mod h1:NplJavkhPZvy8/9K9m95g6uddq3pATO62bovvevpsBw= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -782,6 +784,7 @@ github.com/ory/fosite v0.33.0 h1:tK+3Luazv4vIBJY3uagOBryAQ3IG3cs6kfo8piGBhAY= github.com/ory/fosite v0.33.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/fosite v0.35.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.35.1/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1 h1:Pwcmwd/cSnwJsYN76+w3HU7oXeWFTkwj/KUj1qGDrVw= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= @@ -1398,6 +1401,7 @@ google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3Iji google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/grpc v1.32.0 h1:zWTV+LMdc3kaiJMSTOFz2UgSBgx8RNQoTGiZu3fR9S0= google.golang.org/grpc v1.32.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= From 01c6314a940c9d2f6d1c4663a26f229b79d44940 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Wed, 21 Oct 2020 18:53:53 +0200 Subject: [PATCH 29/34] update expected tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jörn Friedrich Dreyer --- .../expected-failures-on-OCIS-storage.txt | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index e5812516f0..f170c034ff 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -1501,31 +1501,10 @@ apiWebdavEtagPropagation1/deleteFileFolder.feature:152 apiWebdavEtagPropagation1/deleteFileFolder.feature:182 apiWebdavEtagPropagation1/deleteFileFolder.feature:183 # -# https://github.com/owncloud/product/issues/238 renaming a files does not change etag of containing folder -# -apiWebdavEtagPropagation1/moveFileFolder.feature:20 -apiWebdavEtagPropagation1/moveFileFolder.feature:21 -apiWebdavEtagPropagation1/moveFileFolder.feature:58 -apiWebdavEtagPropagation1/moveFileFolder.feature:59 -apiWebdavEtagPropagation1/moveFileFolder.feature:74 -apiWebdavEtagPropagation1/moveFileFolder.feature:75 -apiWebdavEtagPropagation1/moveFileFolder.feature:93 -apiWebdavEtagPropagation1/moveFileFolder.feature:94 -apiWebdavEtagPropagation1/moveFileFolder.feature:112 -apiWebdavEtagPropagation1/moveFileFolder.feature:113 -apiWebdavEtagPropagation1/moveFileFolder.feature:306 -apiWebdavEtagPropagation1/moveFileFolder.feature:321 -# # https://github.com/owncloud/product/issues/239 moving a file from one folder to an other does not change the etag of the source folder # -apiWebdavEtagPropagation1/moveFileFolder.feature:39 -apiWebdavEtagPropagation1/moveFileFolder.feature:40 -apiWebdavEtagPropagation1/moveFileFolder.feature:201 -apiWebdavEtagPropagation1/moveFileFolder.feature:202 apiWebdavEtagPropagation1/moveFileFolder.feature:235 apiWebdavEtagPropagation1/moveFileFolder.feature:236 -apiWebdavEtagPropagation1/moveFileFolder.feature:269 -apiWebdavEtagPropagation1/moveFileFolder.feature:270 apiWebdavEtagPropagation1/moveFileFolder.feature:303 apiWebdavEtagPropagation1/moveFileFolder.feature:304 # From adc6055912e073cfcd5d2d533c091433e168b3c4 Mon Sep 17 00:00:00 2001 From: Michael Barz Date: Wed, 21 Oct 2020 20:37:17 +0000 Subject: [PATCH 30/34] Automated changelog update [skip ci] --- CHANGELOG.md | 8 ++++++++ ocis/go.sum | 2 ++ 2 files changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d9467341f..6926b1cb73 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,7 @@ * Enhancement - Add glauth fallback backend: [#649](https://github.com/owncloud/ocis/pull/649) * Enhancement - Launch a storage to store ocis-metadata: [#602](https://github.com/owncloud/ocis/pull/602) * Enhancement - Simplify tracing config: [#92](https://github.com/owncloud/product/issues/92) +* Enhancement - Update reva to dd3a8c0f38: [#725](https://github.com/owncloud/ocis/pull/725) ## Details @@ -1279,3 +1280,10 @@ https://github.com/owncloud/product/issues/92 https://github.com/owncloud/ocis/pull/329 https://github.com/owncloud/ocis/pull/409 + +* Enhancement - Update reva to dd3a8c0f38: [#725](https://github.com/owncloud/ocis/pull/725) + + * fixes etag propagation in the ocis driver + + https://github.com/owncloud/ocis/pull/725 + https://github.com/cs3org/reva/pull/1264 diff --git a/ocis/go.sum b/ocis/go.sum index f992d81741..0061d82519 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -273,6 +273,7 @@ github.com/cs3org/reva v1.2.2-0.20201006093611-4a9be347ac29/go.mod h1:c0MYy0goE5 github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48 h1:ICRTh96BemJ+oOSgp8j4EM32Ye10jh+UWjMxKbVr30g= github.com/cs3org/reva v1.2.2-0.20201007135248-bccddc4b5a48/go.mod h1:A4Q/nQ8Vs+HeAduSFnM37fqxEM3uXVxhaHrNL+gWcBY= github.com/cs3org/reva v1.3.1-0.20201021065855-dc400f81ecbc/go.mod h1:rTJhfVoZggB5iSPH5oWqQSO+W1iTQIxNmaX/ueS9GAU= +github.com/cs3org/reva v1.3.1-0.20201021130722-dd3a8c0f3881/go.mod h1:NplJavkhPZvy8/9K9m95g6uddq3pATO62bovvevpsBw= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548 h1:iwZdTE0PVqJCos1vaoKsclOGD3ADKpshg3SRtYBbwso= @@ -1065,6 +1066,7 @@ github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20 github.com/ory/fosite v0.34.0 h1:lCUX4f5BoiXBIRUYKeTne+aRl0v6StgWpyYKq+7ILw0= github.com/ory/fosite v0.34.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/fosite v0.35.0/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.35.1/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= github.com/ory/go-acc v0.2.1/go.mod h1:0omgy2aa3nDBJ45VAKeLHH8ccPBudxLeic4xiDRtug0= github.com/ory/go-acc v0.2.5 h1:31irXHzG2vnKQSE4weJm7AdfrnpaVjVCq3nD7viXCJE= From 0e56eddfba7c827d944987d5c241b128278edbbb Mon Sep 17 00:00:00 2001 From: Artur Neumann Date: Tue, 20 Oct 2020 12:04:39 +0545 Subject: [PATCH 31/34] tests to demonstrate issue #720 --- .../acceptance/expected-failures-on-OCIS-storage.txt | 8 ++++++-- .../acceptance/expected-failures-on-OWNCLOUD-storage.txt | 8 ++++++-- .../apiShareManagementBasic-deleteShare.feature | 4 +++- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index f170c034ff..ce1885be4b 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -396,8 +396,6 @@ apiShareManagementBasicToShares/createShareToSharesFolder.feature:498 apiShareManagementBasicToShares/createShareToSharesFolder.feature:501 apiShareManagementBasicToShares/deleteShareFromShares.feature:28 apiShareManagementBasicToShares/deleteShareFromShares.feature:29 -apiShareManagementBasicToShares/deleteShareFromShares.feature:43 -apiShareManagementBasicToShares/deleteShareFromShares.feature:44 apiShareManagementBasicToShares/deleteShareFromShares.feature:89 apiShareManagementBasicToShares/deleteShareFromShares.feature:163 apiShareManagementBasicToShares/deleteShareFromShares.feature:164 @@ -416,6 +414,12 @@ apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.fe apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:153 apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:154 # +# https://github.com/owncloud/ocis/issues/720 shares are mounted into /Shares folder even after the sharer deletes the collaborator +# https://github.com/owncloud/ocis/issues/721 deleting share response does not contain `data` field +# +apiShareManagementBasicToShares/deleteShareFromShares.feature:43 +apiShareManagementBasicToShares/deleteShareFromShares.feature:44 +# # https://github.com/owncloud/product/issues/203 file_target in share response # apiShareManagementBasicToShares/createShareToSharesFolder.feature:367 diff --git a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt index ba6cf3a920..c63f24f6ef 100644 --- a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt @@ -400,8 +400,6 @@ apiShareManagementBasicToShares/createShareToSharesFolder.feature:498 apiShareManagementBasicToShares/createShareToSharesFolder.feature:501 apiShareManagementBasicToShares/deleteShareFromShares.feature:28 apiShareManagementBasicToShares/deleteShareFromShares.feature:29 -apiShareManagementBasicToShares/deleteShareFromShares.feature:43 -apiShareManagementBasicToShares/deleteShareFromShares.feature:44 apiShareManagementBasicToShares/deleteShareFromShares.feature:89 apiShareManagementBasicToShares/deleteShareFromShares.feature:163 apiShareManagementBasicToShares/deleteShareFromShares.feature:164 @@ -420,6 +418,12 @@ apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.fe apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:153 apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:154 # +# https://github.com/owncloud/ocis/issues/720 shares are mounted into /Shares folder even after the sharer deletes the collaborator +# https://github.com/owncloud/ocis/issues/721 deleting share response does not contain `data` field +# +apiShareManagementBasicToShares/deleteShareFromShares.feature:43 +apiShareManagementBasicToShares/deleteShareFromShares.feature:44 +# # https://github.com/owncloud/product/issues/207 Response is empty when accepting a share # apiShareManagementBasicToShares/createShareToSharesFolder.feature:342 diff --git a/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature b/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature index ae52760ff6..19bd4f23c0 100644 --- a/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature +++ b/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature @@ -1,7 +1,7 @@ @api @files_sharing-app-required @issue-ocis-reva-243 Feature: sharing - @issue-ocis-reva-356 + @issue-ocis-720 @issue-ocis-721 # after fixing all issues delete this Scenario and use the one from oC10 core Scenario Outline: delete a share Given user "Alice" has been created with default attributes and without skeleton files @@ -9,9 +9,11 @@ Feature: sharing And user "Brian" has been created with default attributes and without skeleton files And using OCS API version "" And user "Alice" has shared file "textfile0.txt" with user "Brian" + And user "Brian" has accepted share "/textfile0.txt" offered by user "Alice" When user "Alice" deletes the last share using the sharing API Then the OCS status code should be "" And the HTTP status code should be "200" + And as "Brian" file "/Shares/textfile0.txt" should exist Examples: | ocs_api_version | ocs_status_code | | 1 | 100 | From c31dd9e30240a54b0b9a7d5d73956c4a1e21d72f Mon Sep 17 00:00:00 2001 From: Artur Neumann Date: Thu, 22 Oct 2020 11:33:56 +0545 Subject: [PATCH 32/34] adjust issue to the current behaiviour --- .../apiShareManagementBasic-deleteShare.feature | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature b/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature index 19bd4f23c0..37d080caea 100644 --- a/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature +++ b/ocis/tests/acceptance/features/apiOcisSpecific/apiShareManagementBasic-deleteShare.feature @@ -13,7 +13,8 @@ Feature: sharing When user "Alice" deletes the last share using the sharing API Then the OCS status code should be "" And the HTTP status code should be "200" - And as "Brian" file "/Shares/textfile0.txt" should exist + When user "Brian" requests "/remote.php/dav/files" with "PROPFIND" using basic auth + Then the HTTP status code should be "500" Examples: | ocs_api_version | ocs_status_code | | 1 | 100 | From 121d917006855e3e805e9e2cbc83cf61c438f3ff Mon Sep 17 00:00:00 2001 From: Phil Davis Date: Thu, 22 Oct 2020 09:09:40 +0545 Subject: [PATCH 33/34] Bump core commit for API tests --- .drone.star | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone.star b/.drone.star index 82dba4cf12..b52d2cd24c 100644 --- a/.drone.star +++ b/.drone.star @@ -15,7 +15,7 @@ config = { }, 'apiTests': { 'coreBranch': 'master', - 'coreCommit': '1df47648f944ab21521f6c8d538dc183e1e8f1ea', + 'coreCommit': '914992f5f6d4bb562534fa52273e5bd0bc11b208', 'numberOfParts': 6 }, 'uiTests': { From 900b35a5179d397b299d30cd4eb51670787c2001 Mon Sep 17 00:00:00 2001 From: Phil Davis Date: Thu, 22 Oct 2020 11:19:53 +0545 Subject: [PATCH 34/34] Adjust expected-failures --- .../expected-failures-on-OCIS-storage.txt | 30 +++++++++++-------- .../expected-failures-on-OWNCLOUD-storage.txt | 30 +++++++++++-------- 2 files changed, 34 insertions(+), 26 deletions(-) diff --git a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt index ce1885be4b..d74e62114e 100644 --- a/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OCIS-storage.txt @@ -187,6 +187,8 @@ apiProvisioning-v1/addUser.feature:99 apiProvisioning-v1/addUser.feature:100 apiProvisioning-v1/addUser.feature:102 apiProvisioning-v1/getUser.feature:37 +apiProvisioning-v1/getUser.feature:113 +apiProvisioning-v1/getUser.feature:124 apiProvisioning-v2/addUser.feature:96 apiProvisioning-v2/addUser.feature:97 apiProvisioning-v2/addUser.feature:98 @@ -194,6 +196,8 @@ apiProvisioning-v2/addUser.feature:99 apiProvisioning-v2/addUser.feature:100 apiProvisioning-v2/addUser.feature:102 apiProvisioning-v2/getUser.feature:37 +apiProvisioning-v2/getUser.feature:114 +apiProvisioning-v2/getUser.feature:125 apiProvisioning-v1/deleteUser.feature:32 apiProvisioning-v2/deleteUser.feature:32 # @@ -1376,11 +1380,11 @@ apiWebdavUpload2/uploadFileToBlacklistedNameUsingNewChunking.feature:50 # https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded # apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:20 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:19 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:35 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:36 apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:37 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:38 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:39 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:42 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:40 # # https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist # @@ -1394,11 +1398,11 @@ apiWebdavUpload2/uploadFileToExcludedDirectoryUsingNewChunking.feature:52 # https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded # apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:21 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:20 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:37 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:38 apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:39 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:40 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:41 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:44 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:42 # # https://github.com/owncloud/ocis-reva/issues/56 remote.php/dav/uploads endpoint does not exist # @@ -1420,16 +1424,16 @@ apiWebdavUpload2/uploadFileUsingNewChunking.feature:158 # https://github.com/owncloud/ocis-reva/issues/17 uploading with old-chunking does not work # apiWebdavUpload2/uploadFileUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:26 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:35 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:44 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:25 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:34 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:43 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:75 apiWebdavUpload2/uploadFileUsingOldChunking.feature:76 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:77 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:96 apiWebdavUpload2/uploadFileUsingOldChunking.feature:97 apiWebdavUpload2/uploadFileUsingOldChunking.feature:98 apiWebdavUpload2/uploadFileUsingOldChunking.feature:99 apiWebdavUpload2/uploadFileUsingOldChunking.feature:100 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:101 # # https://github.com/owncloud/ocis/issues/187 Previews via webDAV API tests fail on OCIS # diff --git a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt index c63f24f6ef..d9ff55251d 100644 --- a/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt +++ b/ocis/tests/acceptance/expected-failures-on-OWNCLOUD-storage.txt @@ -191,6 +191,8 @@ apiProvisioning-v1/addUser.feature:99 apiProvisioning-v1/addUser.feature:100 apiProvisioning-v1/addUser.feature:102 apiProvisioning-v1/getUser.feature:37 +apiProvisioning-v1/getUser.feature:113 +apiProvisioning-v1/getUser.feature:124 apiProvisioning-v2/addUser.feature:96 apiProvisioning-v2/addUser.feature:97 apiProvisioning-v2/addUser.feature:98 @@ -198,6 +200,8 @@ apiProvisioning-v2/addUser.feature:99 apiProvisioning-v2/addUser.feature:100 apiProvisioning-v2/addUser.feature:102 apiProvisioning-v2/getUser.feature:37 +apiProvisioning-v2/getUser.feature:114 +apiProvisioning-v2/getUser.feature:125 apiProvisioning-v1/deleteUser.feature:32 apiProvisioning-v2/deleteUser.feature:32 # @@ -1371,31 +1375,31 @@ apiWebdavUpload2/uploadFileUsingNewChunking.feature:158 # https://github.com/owncloud/ocis-reva/issues/15 blacklisted filenames like .htaccess & file.parts can be uploaded # apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:20 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:19 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:35 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:36 apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:37 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:38 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:39 -apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:42 +apiWebdavUpload2/uploadFileToBlacklistedNameUsingOldChunking.feature:40 apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:21 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:20 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:37 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:38 apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:39 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:40 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:41 -apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:44 +apiWebdavUpload2/uploadFileToExcludedDirectoryUsingOldChunking.feature:42 # # https://github.com/owncloud/ocis-reva/issues/17 uploading with old-chunking does not work # apiWebdavUpload2/uploadFileUsingOldChunking.feature:13 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:26 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:35 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:44 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:25 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:34 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:43 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:75 apiWebdavUpload2/uploadFileUsingOldChunking.feature:76 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:77 +apiWebdavUpload2/uploadFileUsingOldChunking.feature:96 apiWebdavUpload2/uploadFileUsingOldChunking.feature:97 apiWebdavUpload2/uploadFileUsingOldChunking.feature:98 apiWebdavUpload2/uploadFileUsingOldChunking.feature:99 apiWebdavUpload2/uploadFileUsingOldChunking.feature:100 -apiWebdavUpload2/uploadFileUsingOldChunking.feature:101 # # https://github.com/owncloud/ocis/issues/187 Previews via webDAV API tests fail on OCIS #