From 8b9e02ec0b8421f727874df3300a4a5cd09a2f33 Mon Sep 17 00:00:00 2001 From: "A.Unger" Date: Wed, 23 Sep 2020 11:48:59 +0200 Subject: [PATCH] Revert "run remark linter locally" This reverts commit 97c348f1aeedde20361a69b8b675fda7e2201db8. --- Makefile | 8 +- accounts/CHANGELOG.md | 439 +++--- accounts/README.md | 8 +- .../changelog/0.1.0_2020-03-18/self-config.md | 2 +- .../0.1.1_2020-04-29/configurable-log.md | 4 +- .../add-cli-user-management.md | 4 +- .../0.2.0_2020-08-19/add-write-mutexes.md | 2 +- .../align-project-structure.md | 2 +- .../change-grpc-error-messages.md | 3 +- .../0.2.0_2020-08-19/enable_accounts.md | 2 +- .../0.2.0_2020-08-19/fix-account-group-id.md | 2 +- .../0.2.0_2020-08-19/fix-index-mapping.md | 2 +- .../0.2.0_2020-08-19/fix-indexing.md | 4 +- .../0.2.0_2020-08-19/fix-int-queries.md | 6 +- .../0.2.0_2020-08-19/fix-segfault.md | 2 +- .../changelog/0.2.0_2020-08-19/fix-update.md | 2 +- .../0.2.0_2020-08-19/pass-correct-logger.md | 4 +- .../remove-timezone-setting.md | 2 +- .../0.2.0_2020-08-19/tighten-screws.md | 2 +- .../0.2.0_2020-08-19/update-accounts-api.md | 2 +- .../0.2.0_2020-08-19/use-alpine-latest.md | 2 +- .../0.2.0_2020-08-19/user-listing-ui.md | 2 +- .../adapt-to-settings-data-model.md | 4 +- ...d-language-permissions-to-default-roles.md | 2 +- .../0.3.0_2020-08-20/atomic-requests.md | 2 +- .../0.3.0_2020-08-20/fix-prefix-query.md | 2 +- .../0.4.0_2020-08-20/select-role-in-ui.md | 4 +- .../changelog/0.4.1_2020-08-27/assign_role.md | 2 +- .../changelog/unreleased/add-create-form.md | 4 +- .../changelog/unreleased/add-delete-action.md | 4 +- .../unreleased/add-enable-disable-ui.md | 4 +- .../unreleased/builtin-regular-users.md | 2 +- .../unreleased/fix-role-service-grpc.md | 3 +- .../unreleased/improve-accounts-ui.md | 4 +- .../changelog/unreleased/new-admin-user.md | 2 +- .../unreleased/single-service-handler.md | 7 +- .../changelog/unreleased/use-roles-cache.md | 2 +- .../changelog/unreleased/use-roles-manager.md | 4 +- accounts/docs/_index.md | 18 +- accounts/docs/building.md | 21 +- accounts/docs/configuration.md | 38 +- accounts/docs/getting-started.md | 15 +- docs/extensions/accounts/_index.md | 18 +- docs/extensions/accounts/building.md | 21 +- docs/extensions/accounts/configuration.md | 38 +- docs/extensions/accounts/getting-started.md | 15 +- docs/extensions/glauth/_index.md | 15 +- docs/extensions/glauth/building.md | 21 +- docs/extensions/glauth/getting-started.md | 53 +- docs/extensions/glauth/license.md | 9 +- docs/extensions/graph/archetypes/default.md | 7 +- docs/extensions/graph/content/about.md | 7 +- docs/extensions/graph/content/building.md | 17 +- .../graph/content/getting-started.md | 49 +- docs/extensions/graph/content/license.md | 7 +- docs/extensions/konnectd/_index.md | 9 +- docs/extensions/konnectd/building.md | 21 +- docs/extensions/konnectd/configuration.md | 94 +- docs/extensions/konnectd/getting-started.md | 23 +- docs/extensions/ocis-phoenix/_index.md | 9 +- docs/extensions/ocis-phoenix/building.md | 19 +- .../ocis-phoenix/getting-started.md | 73 +- docs/extensions/ocis-phoenix/license.md | 9 +- docs/extensions/ocis-phoenix/releasing.md | 38 +- docs/extensions/ocis-reva/_index.md | 11 +- docs/extensions/ocis-reva/building.md | 20 +- docs/extensions/ocis-reva/configuration.md | 362 ++--- docs/extensions/ocis-reva/getting-started.md | 27 +- docs/extensions/ocis-reva/license.md | 9 +- docs/extensions/ocis-reva/releasing.md | 68 +- docs/extensions/ocis-reva/storages.md | 200 ++- docs/extensions/ocis-reva/testing.md | 127 +- docs/extensions/ocis-reva/updating.md | 22 +- docs/extensions/ocis-reva/users.md | 56 +- docs/extensions/ocs/_index.md | 9 +- docs/extensions/ocs/building.md | 21 +- docs/extensions/ocs/getting-started.md | 23 +- docs/extensions/ocs/license.md | 9 +- docs/extensions/proxy/_index.md | 9 +- docs/extensions/proxy/about.md | 9 +- docs/extensions/proxy/building.md | 21 +- docs/extensions/proxy/configuration.md | 66 +- docs/extensions/proxy/getting-started.md | 19 +- docs/extensions/settings/_index.md | 27 +- docs/extensions/settings/building.md | 21 +- docs/extensions/settings/bundles.md | 20 +- docs/extensions/settings/getting-started.md | 53 +- docs/extensions/settings/glossary.md | 43 +- docs/extensions/settings/license.md | 9 +- docs/extensions/settings/values.md | 29 +- docs/extensions/store/_index.md | 9 +- docs/extensions/store/building.md | 21 +- docs/extensions/store/getting-started.md | 53 +- docs/extensions/store/license.md | 9 +- docs/extensions/thumbnails/_index.md | 9 +- docs/extensions/thumbnails/building.md | 21 +- docs/extensions/thumbnails/getting-started.md | 63 +- docs/extensions/thumbnails/grpc.md | 81 +- docs/extensions/thumbnails/license.md | 9 +- docs/extensions/thumbnails/releasing.md | 61 +- docs/extensions/webdav/archetypes/default.md | 7 +- docs/extensions/webdav/content/about.md | 7 +- docs/extensions/webdav/content/building.md | 17 +- .../webdav/content/getting-started.md | 49 +- docs/extensions/webdav/content/license.md | 7 +- docs/ocis/_index.md | 18 +- docs/ocis/basic-remote-setup.md | 25 +- docs/ocis/bridge.md | 112 +- docs/ocis/building-docs.md | 21 +- docs/ocis/building.md | 36 +- docs/ocis/configuration.md | 50 +- docs/ocis/debugging.md | 60 +- docs/ocis/development.md | 94 +- docs/ocis/eos.md | 239 ++-- docs/ocis/extensions.md | 127 +- docs/ocis/getting-started.md | 37 +- docs/ocis/license.md | 9 +- docs/ocis/login-flow.md | 19 +- docs/ocis/public-upload-flow.md | 10 +- docs/ocis/request-flow.md | 15 +- docs/ocis/testing.md | 62 +- docs/ocis/tracing.md | 25 +- glauth/CHANGELOG.md | 185 +-- glauth/README.md | 4 +- .../0.1.0_2020-02-28/initial-release.md | 2 +- glauth/changelog/0.2.0_2020-03-17/pull-6.md | 2 +- .../0.3.0_2020-03-17/physics-users.md | 2 +- .../0.4.0_2020-03-18/default-settings.md | 2 +- .../0.4.0_2020-03-18/generate-dev-certs.md | 2 +- .../0.4.0_2020-03-18/tls-endpoint.md | 2 +- .../0.5.0_2020-07-23/handle-ownclouduuid.md | 3 +- .../ignore-case-for-objectclass-value.md | 2 +- .../implement-group-queries.md | 4 +- .../0.5.0_2020-07-23/use-alpine-latest.md | 2 +- .../unreleased/fix-bind-when-not-found.md | 2 +- .../changelog/unreleased/fix-int-queries.md | 6 +- .../changelog/unreleased/fix-searchbasedn.md | 4 +- .../unreleased/fix-startswith-queries.md | 2 +- glauth/docs/_index.md | 15 +- glauth/docs/building.md | 21 +- glauth/docs/getting-started.md | 53 +- glauth/docs/license.md | 9 +- konnectd/CHANGELOG.md | 121 +- konnectd/README.md | 4 +- .../0.1.0_2020-03-18/disable-identifier.md | 2 +- .../0.1.0_2020-03-18/initial-release.md | 2 +- .../0.1.0_2020-03-18/new-ocis-config.md | 2 +- .../0.1.0_2020-03-18/set-csp-nonce.md | 4 +- .../change-internal-defaults.md | 2 +- .../0.3.0_2020-04-14/change_redirect_uri.md | 2 +- .../0.3.0_2020-04-14/client_names.md | 2 +- .../0.3.0_2020-04-14/logout_redirect.md | 2 +- .../0.3.0_2020-04-14/use-konnect-upstream.md | 3 +- .../0.3.2_2020-07-23/use-alpine-latest.md | 2 +- konnectd/docs/_index.md | 9 +- konnectd/docs/building.md | 21 +- konnectd/docs/configuration.md | 94 +- konnectd/docs/getting-started.md | 23 +- ocis-phoenix/CHANGELOG.md | 275 ++-- ocis-phoenix/README.md | 4 +- .../0.1.0_2020-02-03/initial-release.md | 2 +- .../exit-on-unresolved-assets.md | 4 +- .../0.11.0_2020-08-17/hide-searchbar.md | 4 +- .../0.11.0_2020-08-17/update-phoenix.md | 2 +- .../0.11.0_2020-08-17/use-alpine-latest.md | 2 +- .../0.12.0_2020-08-19/enable-external-apps.md | 2 +- .../0.12.0_2020-08-19/update-phoenix.md | 4 +- .../0.2.0_2020-03-17/config-file-parsing.md | 6 +- .../changelog/0.2.0_2020-03-17/issue-43.md | 2 +- .../0.3.0_2020-03-17/new-ocis-config.md | 2 +- .../changelog/0.4.0_2020-03-31/config.md | 2 +- .../changelog/unreleased/remove-pdf-viewer.md | 2 +- ocis-phoenix/docs/_index.md | 9 +- ocis-phoenix/docs/building.md | 19 +- ocis-phoenix/docs/getting-started.md | 73 +- ocis-phoenix/docs/license.md | 9 +- ocis-phoenix/docs/releasing.md | 38 +- ocis-pkg/CHANGELOG.md | 241 ++-- ocis-pkg/README.md | 4 +- .../1.0.0_2019-12-05/initial-release.md | 2 +- .../1.1.0_2019-12-06/log-level-handling.md | 2 +- .../1.2.0_2019-12-09/static-root-path.md | 2 +- .../fix-serving-static-issues.md | 2 +- .../changelog/1.3.0_2020-01-20/issue-8.md | 2 +- .../tls-support-for-http-services.md | 2 +- .../2.0.0_2020-02-04/micro-cli-v2.md | 2 +- .../add-module-version-to-module-path.md | 7 +- .../2.0.1_2020-02-05/correct-imports.md | 2 +- .../handler-option-on-http-services.md | 2 +- .../2.1.0_2020-03-16/tracing-middleware.md | 2 +- .../add-header-to-cors-handler.md | 2 +- .../2.2.1_2020-04-21/fix-micro-options.md | 2 +- .../add-account-middleware.md | 2 +- .../2.3.0_2020-08-17/add-ocisid-claim.md | 2 +- .../2.3.0_2020-08-17/remove-redigo.md | 2 +- .../2.4.0_2020-08-25/metadata-context.md | 2 +- .../unreleased/role-ids-from-context.md | 2 +- ocis-pkg/changelog/unreleased/roles-cache.md | 2 +- .../changelog/unreleased/roles-manager.md | 2 +- ocis-reva/CHANGELOG.md | 1192 ++++++++--------- ocis-reva/README.md | 52 +- ocis-reva/changelog/0.1.0_2020-03-23/76.md | 4 +- .../change-default-namespace.md | 2 +- .../changelog/0.1.0_2020-03-23/fix-typos.md | 2 +- .../0.1.0_2020-03-23/initial-release.md | 2 +- .../changelog/0.1.0_2020-03-23/issue-6.md | 2 +- .../changelog/0.1.0_2020-03-23/issue-87.md | 26 +- .../changelog/0.1.0_2020-03-23/issue-89.md | 2 +- .../0.1.0_2020-03-23/new-ocis-config.md | 12 +- .../changelog/0.1.0_2020-03-23/pull-77.md | 7 +- .../changelog/0.1.0_2020-03-23/pull-91.md | 11 +- .../user-sharing-driver-json.md | 2 +- .../0.1.1_2020-03-31/fix-eos-config.md | 2 +- .../make-frontend-prefixes-configurable.md | 12 +- .../update-reva-to-20200703.md | 20 +- .../update-reva-to-20200709.md | 56 +- .../update-reva-to-20200710.md | 24 +- .../update-reva-to-20200722.md | 20 +- .../0.11.0_2020-07-23/use-alpine-latest.md | 2 +- .../0.12.0_2020-08-17/update-docs.md | 4 +- .../0.12.0_2020-08-17/update-ldap-config.md | 11 +- .../update-reva-to-20200724.md | 20 +- .../update-reva-to-20200728.md | 16 +- .../updates-for-username-userid-split.md | 4 +- .../separate-auth-user-providers.md | 4 +- .../update-reva-to-20200728.md | 28 +- .../0.14.0_2020-09-11/config-cleanup.md | 6 +- .../storage-registry-rules.md | 6 +- .../update-reva-to-20200826.md | 41 +- .../update-reva-to-20200911.md | 13 +- .../0.2.0_2020-04-15/fix-eos-config.md | 2 +- .../update-reva-to-20200414133413.md | 2 +- .../0.2.1_2020-04-28/gatewayconfig.md | 2 +- .../0.2.1_2020-04-28/reva-ocis-logger.md | 2 +- .../unadvertise-chunking-v2.md | 2 +- .../update-reva-to-20200518061204.md | 165 +-- .../0.4.0_2020-05-29/public-shares.md | 5 +- .../update-reva-to-20200529120551.md | 57 +- .../add-tus-global-capabilities.md | 4 +- .../update-reva-to-20200603071553.md | 18 +- .../update-reva-to-20200624.md | 130 +- .../update-reva-to-20200625.md | 40 +- .../update-reva-to-20200629.md | 20 +- .../allow-datagateway-transfers-24h.md | 4 +- .../update-reva-to-20200630.md | 16 +- .../update-reva-to-20200701.md | 53 +- ocis-reva/docs/_index.md | 11 +- ocis-reva/docs/building.md | 20 +- ocis-reva/docs/configuration.md | 362 ++--- ocis-reva/docs/getting-started.md | 27 +- ocis-reva/docs/license.md | 9 +- ocis-reva/docs/releasing.md | 68 +- ocis-reva/docs/storages.md | 200 ++- ocis-reva/docs/testing.md | 127 +- ocis-reva/docs/updating.md | 22 +- ocis-reva/docs/users.md | 56 +- ocis/CHANGELOG.md | 552 ++++---- ocis/README.md | 7 +- ocis/changelog/unreleased/add-eos.md | 2 +- .../unreleased/add-missing-env-vars.md | 2 +- .../unreleased/add-thumbnails-command.md | 2 +- .../unreleased/clear-external-apps.md | 2 +- ocis/changelog/unreleased/import.md | 4 +- .../improve-reva-service-descriptions.md | 2 +- ocis/changelog/unreleased/initial-release.md | 2 +- .../unreleased/integrate-accounts-cli.md | 15 +- .../unreleased/integrate-accounts.md | 4 +- ocis/changelog/unreleased/new-runtime.md | 2 +- .../permission-checks-in-ocis-accounts.md | 20 +- .../proxy-fix-director-selection.md | 4 +- ocis/changelog/unreleased/settings-service.md | 2 +- .../unreleased/settings-update-2020-08-21.md | 2 +- ocis/changelog/unreleased/simplify-tracing.md | 6 +- .../unreleased/start-proxy-with-server.md | 4 +- .../unreleased/update-accounts-2020-08-21.md | 2 +- .../update-accounts-create-users.md | 6 +- .../update-accounts-delete-users.md | 6 +- .../update-accounts-design-improvements.md | 6 +- .../update-accounts-enable-disable-users.md | 6 +- .../unreleased/update-accounts-fix-index.md | 8 +- .../unreleased/update-docs-30_06_2020.md | 2 +- .../update-extensions-01_04_2020.md | 15 +- .../update-extensions-02_09_2020.md | 8 +- .../update-extensions-16_04_2020.md | 9 +- .../update-extensions-18_03_2020.md.md | 15 +- .../update-extensions-2020-07-10.md | 6 +- .../update-extensions-25_05_2020.md | 7 +- .../update-extensions-26_05_2020.md | 2 +- .../update-extensions-28_04_2020.md | 13 +- .../update-extensions-29_06_2020.md | 10 +- .../update-extensions-reva-and-proxy.md | 6 +- .../unreleased/update-glauth-fixing-search.md | 6 +- ocis/changelog/unreleased/update-ocis-ocs.md | 2 +- .../unreleased/update-ocis-phoenix.md | 2 +- .../changelog/unreleased/update-ocis-proxy.md | 2 +- .../unreleased/update-ocis-reva-2020-08-27.md | 2 +- .../unreleased/update-phoenix-ext-app-urls.md | 6 +- .../unreleased/update-proxy-disable-cache.md | 6 +- ocis/changelog/unreleased/update-proxy.md | 2 +- .../unreleased/update-reva-10_09_2020.md | 11 +- .../unreleased/update-reva-12_09_2020.md | 16 +- .../unreleased/update-settings-26_08_2020.md | 2 +- .../changelog/unreleased/use-alpine-latest.md | 2 +- ocis/docs/_index.md | 18 +- ocis/docs/basic-remote-setup.md | 25 +- ocis/docs/bridge.md | 112 +- ocis/docs/building-docs.md | 21 +- ocis/docs/building.md | 36 +- ocis/docs/configuration.md | 50 +- ocis/docs/debugging.md | 60 +- ocis/docs/development.md | 94 +- ocis/docs/eos.md | 239 ++-- ocis/docs/extensions.md | 127 +- ocis/docs/getting-started.md | 37 +- ocis/docs/license.md | 9 +- ocis/docs/login-flow.md | 19 +- ocis/docs/public-upload-flow.md | 10 +- ocis/docs/request-flow.md | 15 +- ocis/docs/testing.md | 62 +- ocis/docs/tracing.md | 25 +- ocs/CHANGELOG.md | 159 +-- ocs/README.md | 4 +- .../0.1.0_2020-07-23/config-management.md | 2 +- .../0.1.0_2020-07-23/initial-release.md | 2 +- .../0.1.0_2020-07-23/support-signing-key.md | 6 +- .../0.1.0_2020-07-23/upgrade-micro.md | 2 +- .../0.1.0_2020-07-23/use-alpine-latest.md | 2 +- .../fix-file-descriptor-leak.md | 4 +- .../0.2.0_2020-08-17/groups-provisioning.md | 2 +- .../0.2.0_2020-08-17/user-provisioning.md | 2 +- ocs/changelog/0.3.0_2020-08-27/add-uid-gid.md | 2 +- .../mimic-user-enabled-string.md | 2 +- .../0.3.1_2020-09-02/ocs-response-format.md | 5 +- .../0.3.1_2020-09-02/update-ocis-accounts.md | 2 +- ocs/changelog/unreleased/fix-users-format.md | 4 +- ocs/docs/_index.md | 9 +- ocs/docs/building.md | 21 +- ocs/docs/getting-started.md | 23 +- ocs/docs/license.md | 9 +- proxy/CHANGELOG.md | 441 +++--- proxy/README.md | 8 +- .../0.1.0_2020-03-18/runtime-policies.md | 4 +- .../advanced-route-matching.md | 2 +- .../changelog/0.2.0_2020-03-25/client-urls.md | 4 +- .../0.2.0_2020-03-25/tls-cert-configurable.md | 2 +- .../fix-set-tls-cert-correctly.md | 2 +- proxy/changelog/0.3.0_2020-03-30/add-oidc.md | 3 +- .../0.3.0_2020-03-30/policy_selectors.md | 3 +- .../0.3.0_2020-03-30/redirect_to_https.md | 3 +- .../auto_provision_accounts.md | 4 +- .../respect_account_enabled_flag.md | 2 +- .../add-accounts-ui-routes.md | 9 +- .../0.5.0_2020-07-23/add-disable-tls.md | 4 +- .../0.5.0_2020-07-23/add-oidc-config-flags.md | 7 +- .../create-home-if-migrated.md | 4 +- .../fix-createhome-middleware.md | 2 +- .../fix-createhome-segfault.md | 2 +- .../0.5.0_2020-07-23/root-tracing.md | 2 +- .../0.5.0_2020-07-23/support-signed-urls.md | 8 +- .../user-and-group-name-mapping.md | 2 +- .../0.6.0_2020-08-17/enable-new-accounts.md | 2 +- .../presigned-url-lookup-fix.md | 6 +- .../0.6.0_2020-08-17/use-alpine-latest.md | 2 +- .../0.6.0_2020-08-17/user-provisioning-api.md | 2 +- .../0.7.0_2020-08-21/mint-uid-and-gid.md | 2 +- .../pre-signed-url-configuration.md | 4 +- .../unreleased/fix-director-selection.md | 2 +- .../unreleased/hello-in-example-config.md | 2 +- proxy/changelog/unreleased/mint-roles.md | 2 +- .../unreleased/remove-account-caching.md | 2 +- .../unreleased/settings-in-example-config.md | 2 +- proxy/docs/_index.md | 9 +- proxy/docs/about.md | 9 +- proxy/docs/building.md | 21 +- proxy/docs/configuration.md | 66 +- proxy/docs/getting-started.md | 19 +- settings/CHANGELOG.md | 259 ++-- settings/README.md | 4 +- .../adjust-uuid-validation.md | 4 +- .../0.1.0_2020-08-17/cleanup-makefile.md | 2 +- settings/changelog/0.1.0_2020-08-17/docs.md | 4 +- .../0.1.0_2020-08-17/dynamic-nav-items.md | 2 +- .../hardening-type-assertion.md | 4 +- .../0.1.0_2020-08-17/input-validation.md | 8 +- .../changelog/0.1.0_2020-08-17/update-pkg2.md | 2 +- .../changelog/0.1.0_2020-08-17/upgrade-ods.md | 6 +- .../0.1.0_2020-08-17/use-access-token.md | 2 +- .../0.1.0_2020-08-17/use-alpine-latest.md | 2 +- .../0.1.0_2020-08-17/use-server-config.md | 2 +- .../0.2.0_2020-08-20/add-role-service.md | 6 +- .../0.2.0_2020-08-20/refactor-naming.md | 6 +- .../0.2.0_2020-08-20/switch-to-uuids.md | 2 +- .../0.3.0_2020-08-26/filter-settings.md | 4 +- .../0.3.1_2020-08-27/fix-fetching-bundles.md | 3 +- .../unreleased/add-endpoint-permissions.md | 3 +- .../unreleased/fix-system-scope-values.md | 3 +- .../changelog/unreleased/input-validation.md | 3 +- .../unreleased/role-ids-from-context.md | 3 +- .../roleids-helper-moved-package.md | 4 +- settings/docs/_index.md | 27 +- settings/docs/building.md | 21 +- settings/docs/bundles.md | 20 +- settings/docs/getting-started.md | 53 +- settings/docs/glossary.md | 43 +- settings/docs/license.md | 9 +- settings/docs/values.md | 29 +- store/CHANGELOG.md | 42 +- store/README.md | 28 +- .../0.1.0_2020-07-23/initial-release.md | 4 +- .../0.1.0_2020-07-23/use-alpine-latest.md | 2 +- .../0.1.1_2020-08-17/cleanup-code.md | 3 +- store/docs/_index.md | 9 +- store/docs/building.md | 21 +- store/docs/getting-started.md | 53 +- store/docs/license.md | 9 +- thumbnails/CHANGELOG.md | 117 +- thumbnails/README.md | 4 +- .../0.1.0_2020-03-31/initial-version.md | 2 +- .../predefined-resolutions.md | 2 +- .../0.1.0_2020-03-31/thumbnail-service.md | 2 +- .../changelog/0.1.1_2020-04-21/fix-flags.md | 2 +- .../0.1.2_2020-05-11/fix-context-handling.md | 2 +- .../0.2.0_2020-07-10/add-resolutions.md | 2 +- .../0.2.0_2020-07-10/fix-code-smells.md | 2 +- .../group-thumbnails-by-users.md | 2 +- .../0.2.0_2020-07-10/use-micro-error-api.md | 2 +- .../0.3.0_2020-08-17/serve-metrics.md | 2 +- .../0.3.0_2020-08-17/use-alpine-latest.md | 2 +- thumbnails/docs/_index.md | 9 +- thumbnails/docs/building.md | 21 +- thumbnails/docs/getting-started.md | 63 +- thumbnails/docs/grpc.md | 81 +- thumbnails/docs/license.md | 9 +- thumbnails/docs/releasing.md | 61 +- webdav/CHANGELOG.md | 59 +- webdav/README.md | 4 +- .../0.1.0_2020-03-31/config-management.md | 2 +- .../0.1.0_2020-03-31/initial-release.md | 2 +- .../changelog/0.1.0_2020-03-31/preview-api.md | 2 +- .../0.1.0_2020-03-31/update-ocis-pkg.md | 2 +- ...change-status-code-on-missing-thumbnail.md | 4 +- .../0.1.1_2020-07-23/use-alpine-latest.md | 2 +- webdav/docs/archetypes/default.md | 7 +- webdav/docs/content/about.md | 7 +- webdav/docs/content/building.md | 17 +- webdav/docs/content/getting-started.md | 49 +- webdav/docs/content/license.md | 7 +- 447 files changed, 6088 insertions(+), 6178 deletions(-) diff --git a/Makefile b/Makefile index 97e3c7111..ae21a2ed0 100644 --- a/Makefile +++ b/Makefile @@ -18,8 +18,8 @@ clean: .PHONY: generate-docs $(EXTENSIONS) generate-docs: $(EXTENSIONS) $(EXTENSIONS): - $(MAKE) -C $@ docs; \\ - mkdir -p docs/extensions/$@; \\ + $(MAKE) -C $@ docs; \ + mkdir -p docs/extensions/$@; \ cp -R $@/docs/ docs/extensions/$@ .PHONY: clean-docs @@ -28,8 +28,8 @@ clean-docs: .PHONY: ocis-docs ocis-docs: - mkdir -p docs/ocis; \\ - $(MAKE) -C ocis docs; \\ + mkdir -p docs/ocis; \ + $(MAKE) -C ocis docs; \ cp -R ocis/docs/ docs/ocis .PHONY: docs diff --git a/accounts/CHANGELOG.md b/accounts/CHANGELOG.md index ab5c98369..ed31a8f73 100644 --- a/accounts/CHANGELOG.md +++ b/accounts/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-accounts unreleased. @@ -6,110 +6,110 @@ The following sections list the changes in ocis-accounts unreleased. ## Summary -- Bugfix - Initialize roleService client in GRPC server: [#114](https://github.com/owncloud/ocis/accounts/pull/114) -- Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) -- Change - Set user role on builtin users: [#102](https://github.com/owncloud/ocis/accounts/pull/102) -- Change - Add new builtin admin user: [#102](https://github.com/owncloud/ocis/accounts/pull/102) -- Change - We make use of the roles cache to enforce permission checks: [#100](https://github.com/owncloud/ocis/accounts/pull/100) -- Change - We make use of the roles manager to enforce permission checks: [#108](https://github.com/owncloud/ocis/accounts/pull/108) -- Enhancement - Add create account form: [#148](https://github.com/owncloud/product/issues/148) -- Enhancement - Add delete accounts action: [#148](https://github.com/owncloud/product/issues/148) -- Enhancement - Add enable/disable capabilities to the WebUI: [#118](https://github.com/owncloud/product/issues/118) -- Enhancement - Improve visual appearance of accounts UI: [#222](https://github.com/owncloud/product/issues/222) +* Bugfix - Initialize roleService client in GRPC server: [#114](https://github.com/owncloud/ocis/accounts/pull/114) +* Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) +* Change - Set user role on builtin users: [#102](https://github.com/owncloud/ocis/accounts/pull/102) +* Change - Add new builtin admin user: [#102](https://github.com/owncloud/ocis/accounts/pull/102) +* Change - We make use of the roles cache to enforce permission checks: [#100](https://github.com/owncloud/ocis/accounts/pull/100) +* Change - We make use of the roles manager to enforce permission checks: [#108](https://github.com/owncloud/ocis/accounts/pull/108) +* Enhancement - Add create account form: [#148](https://github.com/owncloud/product/issues/148) +* Enhancement - Add delete accounts action: [#148](https://github.com/owncloud/product/issues/148) +* Enhancement - Add enable/disable capabilities to the WebUI: [#118](https://github.com/owncloud/product/issues/118) +* Enhancement - Improve visual appearance of accounts UI: [#222](https://github.com/owncloud/product/issues/222) ## Details -- Bugfix - Initialize roleService client in GRPC server: [#114](https://github.com/owncloud/ocis/accounts/pull/114) +* Bugfix - Initialize roleService client in GRPC server: [#114](https://github.com/owncloud/ocis/accounts/pull/114) - We fixed the initialization of the GRPC server by also providing a roleService client and a - roleManager instance. + We fixed the initialization of the GRPC server by also providing a roleService client and a + roleManager instance. - + https://github.com/owncloud/ocis/accounts/pull/114 -- Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) +* Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) - The accounts service was creating a bleve index instance in the service handler, thus creating - separate in memory indices for the http and grpc servers. We moved the service handler creation - out of the server creation so that the service handler, thus also the bleve index, is a shared - instance of the servers. + The accounts service was creating a bleve index instance in the service handler, thus creating + separate in memory indices for the http and grpc servers. We moved the service handler creation + out of the server creation so that the service handler, thus also the bleve index, is a shared + instance of the servers. - This fixes a bug that accounts created through the web ui were not able to sign in until a service - restart. + This fixes a bug that accounts created through the web ui were not able to sign in until a service + restart. - - - + https://github.com/owncloud/product/issues/224 + https://github.com/owncloud/ocis/accounts/pull/117 + https://github.com/owncloud/ocis/accounts/pull/118 -- Change - Set user role on builtin users: [#102](https://github.com/owncloud/ocis/accounts/pull/102) +* Change - Set user role on builtin users: [#102](https://github.com/owncloud/ocis/accounts/pull/102) - We now set the default `user` role on our builtin users. + We now set the default `user` role on our builtin users. - + https://github.com/owncloud/ocis/accounts/pull/102 -- Change - Add new builtin admin user: [#102](https://github.com/owncloud/ocis/accounts/pull/102) +* Change - Add new builtin admin user: [#102](https://github.com/owncloud/ocis/accounts/pull/102) - We added a new builtin user `moss` and assigned the admin role. + We added a new builtin user `moss` and assigned the admin role. - + https://github.com/owncloud/ocis/accounts/pull/102 -- Change - We make use of the roles cache to enforce permission checks: [#100](https://github.com/owncloud/ocis/accounts/pull/100) +* Change - We make use of the roles cache to enforce permission checks: [#100](https://github.com/owncloud/ocis/accounts/pull/100) - The roles cache and its cache update middleware are used to make permission checks possible. - The permission checks take place in the accounts handler. + The roles cache and its cache update middleware are used to make permission checks possible. + The permission checks take place in the accounts handler. - + https://github.com/owncloud/ocis/accounts/pull/100 -- Change - We make use of the roles manager to enforce permission checks: [#108](https://github.com/owncloud/ocis/accounts/pull/108) +* Change - We make use of the roles manager to enforce permission checks: [#108](https://github.com/owncloud/ocis/accounts/pull/108) - The roles cache and its cache update middleware have been replaced with a roles manager in - ocis-pkg/v2. We've switched over to the new roles manager implementation, to prepare for - permission checks on grpc requests as well. + The roles cache and its cache update middleware have been replaced with a roles manager in + ocis-pkg/v2. We've switched over to the new roles manager implementation, to prepare for + permission checks on grpc requests as well. - - + https://github.com/owncloud/ocis/accounts/pull/108 + https://github.com/owncloud/ocis-pkg/pull/60 -- Enhancement - Add create account form: [#148](https://github.com/owncloud/product/issues/148) +* Enhancement - Add create account form: [#148](https://github.com/owncloud/product/issues/148) - We've added a form to create new users above the accounts list. + We've added a form to create new users above the accounts list. - - + https://github.com/owncloud/product/issues/148 + https://github.com/owncloud/ocis/accounts/pull/115 -- Enhancement - Add delete accounts action: [#148](https://github.com/owncloud/product/issues/148) +* Enhancement - Add delete accounts action: [#148](https://github.com/owncloud/product/issues/148) - We've added an action into the actions dropdown to enable admins to delete users. + We've added an action into the actions dropdown to enable admins to delete users. - - + https://github.com/owncloud/product/issues/148 + https://github.com/owncloud/ocis/accounts/pull/115 -- Enhancement - Add enable/disable capabilities to the WebUI: [#118](https://github.com/owncloud/product/issues/118) +* Enhancement - Add enable/disable capabilities to the WebUI: [#118](https://github.com/owncloud/product/issues/118) - We've added batch actions into the accounts listing to provide options to enable and disable - accounts. + We've added batch actions into the accounts listing to provide options to enable and disable + accounts. - - + https://github.com/owncloud/product/issues/118 + https://github.com/owncloud/ocis/accounts/pull/109 -- Enhancement - Improve visual appearance of accounts UI: [#222](https://github.com/owncloud/product/issues/222) +* Enhancement - Improve visual appearance of accounts UI: [#222](https://github.com/owncloud/product/issues/222) - We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, - style of batch actions), added icons to buttons, extracted the buttons from the batch actions - dropdown into individual buttons, improved the wording added a confirmation widget for the - user deletion and removed the uid and gid columns. + We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, + style of batch actions), added icons to buttons, extracted the buttons from the batch actions + dropdown into individual buttons, improved the wording added a confirmation widget for the + user deletion and removed the uid and gid columns. - - + https://github.com/owncloud/product/issues/222 + https://github.com/owncloud/ocis/accounts/pull/116 -# Changelog for [0.4.1] \(2020-08-27) +# Changelog for [0.4.1] (2020-08-27) The following sections list the changes in ocis-accounts 0.4.1. @@ -117,25 +117,25 @@ The following sections list the changes in ocis-accounts 0.4.1. ## Summary -- Bugfix - Adapting to new settings API for fetching roles: [#96](https://github.com/owncloud/ocis/accounts/pull/96) -- Change - Create account api-call implicitly adds "default-user" role: [#173](https://github.com/owncloud/product/issues/173) +* Bugfix - Adapting to new settings API for fetching roles: [#96](https://github.com/owncloud/ocis/accounts/pull/96) +* Change - Create account api-call implicitly adds "default-user" role: [#173](https://github.com/owncloud/product/issues/173) ## Details -- Bugfix - Adapting to new settings API for fetching roles: [#96](https://github.com/owncloud/ocis/accounts/pull/96) +* Bugfix - Adapting to new settings API for fetching roles: [#96](https://github.com/owncloud/ocis/accounts/pull/96) - We fixed the usage of the ocis-settings endpoint for fetching roles. + We fixed the usage of the ocis-settings endpoint for fetching roles. - + https://github.com/owncloud/ocis/accounts/pull/96 -- Change - Create account api-call implicitly adds "default-user" role: [#173](https://github.com/owncloud/product/issues/173) +* Change - Create account api-call implicitly adds "default-user" role: [#173](https://github.com/owncloud/product/issues/173) - When calling CreateAccount default-user-role is implicitly added. + When calling CreateAccount default-user-role is implicitly added. - + https://github.com/owncloud/product/issues/173 -# Changelog for [0.3.0] \(2020-08-20) +# Changelog for [0.3.0] (2020-08-20) The following sections list the changes in ocis-accounts 0.3.0. @@ -143,45 +143,45 @@ The following sections list the changes in ocis-accounts 0.3.0. ## Summary -- Bugfix - Atomic Requests: [#82](https://github.com/owncloud/ocis/accounts/pull/82) -- Bugfix - Unescape value for prefix query: [#76](https://github.com/owncloud/ocis/accounts/pull/76) -- Change - Adapt to new ocis-settings data model: [#87](https://github.com/owncloud/ocis/accounts/pull/87) -- Change - Add permissions for language to default roles: [#88](https://github.com/owncloud/ocis/accounts/pull/88) +* Bugfix - Atomic Requests: [#82](https://github.com/owncloud/ocis/accounts/pull/82) +* Bugfix - Unescape value for prefix query: [#76](https://github.com/owncloud/ocis/accounts/pull/76) +* Change - Adapt to new ocis-settings data model: [#87](https://github.com/owncloud/ocis/accounts/pull/87) +* Change - Add permissions for language to default roles: [#88](https://github.com/owncloud/ocis/accounts/pull/88) ## Details -- Bugfix - Atomic Requests: [#82](https://github.com/owncloud/ocis/accounts/pull/82) +* Bugfix - Atomic Requests: [#82](https://github.com/owncloud/ocis/accounts/pull/82) - Operations on the file system level are now atomic. This happens only on the provisioning API. + Operations on the file system level are now atomic. This happens only on the provisioning API. - + https://github.com/owncloud/ocis/accounts/pull/82 -- Bugfix - Unescape value for prefix query: [#76](https://github.com/owncloud/ocis/accounts/pull/76) +* Bugfix - Unescape value for prefix query: [#76](https://github.com/owncloud/ocis/accounts/pull/76) - Prefix queries also need to unescape token values like `'some ''ol string'` to `some 'ol - string` before using it in a prefix query + Prefix queries also need to unescape token values like `'some ''ol string'` to `some 'ol + string` before using it in a prefix query - + https://github.com/owncloud/ocis/accounts/pull/76 -- Change - Adapt to new ocis-settings data model: [#87](https://github.com/owncloud/ocis/accounts/pull/87) +* Change - Adapt to new ocis-settings data model: [#87](https://github.com/owncloud/ocis/accounts/pull/87) - Ocis-settings introduced UUIDs and less verbose endpoint and message type names. This PR - adjusts ocis-accounts accordingly. + Ocis-settings introduced UUIDs and less verbose endpoint and message type names. This PR + adjusts ocis-accounts accordingly. - - + https://github.com/owncloud/ocis/accounts/pull/87 + https://github.com/owncloud/ocis/settings/pull/46 -- Change - Add permissions for language to default roles: [#88](https://github.com/owncloud/ocis/accounts/pull/88) +* Change - Add permissions for language to default roles: [#88](https://github.com/owncloud/ocis/accounts/pull/88) - Ocis-settings has default roles and exposes the respective bundle uuids. We now added - permissions for reading/writing the preferred language to the default roles. + Ocis-settings has default roles and exposes the respective bundle uuids. We now added + permissions for reading/writing the preferred language to the default roles. - + https://github.com/owncloud/ocis/accounts/pull/88 -# Changelog for [0.4.0] \(2020-08-20) +# Changelog for [0.4.0] (2020-08-20) The following sections list the changes in ocis-accounts 0.4.0. @@ -189,19 +189,19 @@ The following sections list the changes in ocis-accounts 0.4.0. ## Summary -- Change - Add role selection to accounts UI: [#103](https://github.com/owncloud/product/issues/103) +* Change - Add role selection to accounts UI: [#103](https://github.com/owncloud/product/issues/103) ## Details -- Change - Add role selection to accounts UI: [#103](https://github.com/owncloud/product/issues/103) +* Change - Add role selection to accounts UI: [#103](https://github.com/owncloud/product/issues/103) - We added a role selection dropdown for each account in the accounts UI. As a first iteration, - this doesn't require account management permissions. + We added a role selection dropdown for each account in the accounts UI. As a first iteration, + this doesn't require account management permissions. - - + https://github.com/owncloud/product/issues/103 + https://github.com/owncloud/ocis/accounts/pull/89 -# Changelog for [0.2.0] \(2020-08-19) +# Changelog for [0.2.0] (2020-08-19) The following sections list the changes in ocis-accounts 0.2.0. @@ -209,185 +209,185 @@ The following sections list the changes in ocis-accounts 0.2.0. ## Summary -- Bugfix - Add write mutexes: [#71](https://github.com/owncloud/ocis/accounts/pull/71) -- Bugfix - Fix the accountId and groupId mismatch in DeleteGroup Method: [#60](https://github.com/owncloud/ocis/accounts/pull/60) -- Bugfix - Fix index mapping: [#73](https://github.com/owncloud/ocis/accounts/issues/73) -- Bugfix - Use NewNumericRangeInclusiveQuery for numeric literals: [#28](https://github.com/owncloud/ocis-glauth/issues/28) -- Bugfix - Prevent segfault when no password is set: [#65](https://github.com/owncloud/ocis/accounts/pull/65) -- Bugfix - Update account return value not used: [#70](https://github.com/owncloud/ocis/accounts/pull/70) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#64](https://github.com/owncloud/ocis/accounts/pull/64) -- Change - Align structure of this extension with other extensions: [#51](https://github.com/owncloud/ocis/accounts/pull/51) -- Change - Change api errors: [#11](https://github.com/owncloud/ocis/accounts/issues/11) -- Change - Enable accounts on creation: [#43](https://github.com/owncloud/ocis/accounts/issues/43) -- Change - Fix index update on create/update: [#57](https://github.com/owncloud/ocis/accounts/issues/57) -- Change - Pass around the correct logger throughout the code: [#41](https://github.com/owncloud/ocis/accounts/issues/41) -- Change - Remove timezone setting: [#33](https://github.com/owncloud/ocis/accounts/pull/33) -- Change - Tighten screws on usernames and email addresses: [#65](https://github.com/owncloud/ocis/accounts/pull/65) -- Enhancement - Add early version of cli tools for user-management: [#69](https://github.com/owncloud/ocis/accounts/pull/69) -- Enhancement - Update accounts API: [#30](https://github.com/owncloud/ocis/accounts/pull/30) -- Enhancement - Add simple user listing UI: [#51](https://github.com/owncloud/ocis/accounts/pull/51) +* Bugfix - Add write mutexes: [#71](https://github.com/owncloud/ocis/accounts/pull/71) +* Bugfix - Fix the accountId and groupId mismatch in DeleteGroup Method: [#60](https://github.com/owncloud/ocis/accounts/pull/60) +* Bugfix - Fix index mapping: [#73](https://github.com/owncloud/ocis/accounts/issues/73) +* Bugfix - Use NewNumericRangeInclusiveQuery for numeric literals: [#28](https://github.com/owncloud/ocis-glauth/issues/28) +* Bugfix - Prevent segfault when no password is set: [#65](https://github.com/owncloud/ocis/accounts/pull/65) +* Bugfix - Update account return value not used: [#70](https://github.com/owncloud/ocis/accounts/pull/70) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#64](https://github.com/owncloud/ocis/accounts/pull/64) +* Change - Align structure of this extension with other extensions: [#51](https://github.com/owncloud/ocis/accounts/pull/51) +* Change - Change api errors: [#11](https://github.com/owncloud/ocis/accounts/issues/11) +* Change - Enable accounts on creation: [#43](https://github.com/owncloud/ocis/accounts/issues/43) +* Change - Fix index update on create/update: [#57](https://github.com/owncloud/ocis/accounts/issues/57) +* Change - Pass around the correct logger throughout the code: [#41](https://github.com/owncloud/ocis/accounts/issues/41) +* Change - Remove timezone setting: [#33](https://github.com/owncloud/ocis/accounts/pull/33) +* Change - Tighten screws on usernames and email addresses: [#65](https://github.com/owncloud/ocis/accounts/pull/65) +* Enhancement - Add early version of cli tools for user-management: [#69](https://github.com/owncloud/ocis/accounts/pull/69) +* Enhancement - Update accounts API: [#30](https://github.com/owncloud/ocis/accounts/pull/30) +* Enhancement - Add simple user listing UI: [#51](https://github.com/owncloud/ocis/accounts/pull/51) ## Details -- Bugfix - Add write mutexes: [#71](https://github.com/owncloud/ocis/accounts/pull/71) +* Bugfix - Add write mutexes: [#71](https://github.com/owncloud/ocis/accounts/pull/71) - Concurrent account or groups writes would corrupt the json file on disk, because the different - goroutines would be treated as a single thread from the os. We introduce a mutex for account and - group file writes each. This locks the update frequency for all accounts/groups and could be - further improved by using a concurrent map of mutexes with a mutex per account / group. PR - welcome. + Concurrent account or groups writes would corrupt the json file on disk, because the different + goroutines would be treated as a single thread from the os. We introduce a mutex for account and + group file writes each. This locks the update frequency for all accounts/groups and could be + further improved by using a concurrent map of mutexes with a mutex per account / group. PR + welcome. - + https://github.com/owncloud/ocis/accounts/pull/71 -- Bugfix - Fix the accountId and groupId mismatch in DeleteGroup Method: [#60](https://github.com/owncloud/ocis/accounts/pull/60) +* Bugfix - Fix the accountId and groupId mismatch in DeleteGroup Method: [#60](https://github.com/owncloud/ocis/accounts/pull/60) - We've fixed a bug in deleting the groups. + We've fixed a bug in deleting the groups. - The accountId and GroupId were swapped when removing the member from a group after deleting the - group. + The accountId and GroupId were swapped when removing the member from a group after deleting the + group. - + https://github.com/owncloud/ocis/accounts/pull/60 -- Bugfix - Fix index mapping: [#73](https://github.com/owncloud/ocis/accounts/issues/73) +* Bugfix - Fix index mapping: [#73](https://github.com/owncloud/ocis/accounts/issues/73) - The index mapping was not being used because we were not using the right blevesearch TypeField, - leading to username like properties like `preferred_name` and - `on_premises_sam_account_name` to be case sensitive. + The index mapping was not being used because we were not using the right blevesearch TypeField, + leading to username like properties like `preferred_name` and + `on_premises_sam_account_name` to be case sensitive. - + https://github.com/owncloud/ocis/accounts/issues/73 -- Bugfix - Use NewNumericRangeInclusiveQuery for numeric literals: [#28](https://github.com/owncloud/ocis-glauth/issues/28) +* Bugfix - Use NewNumericRangeInclusiveQuery for numeric literals: [#28](https://github.com/owncloud/ocis-glauth/issues/28) - Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a - user it will not only try to lookup the user by username, but also by the `uidnumber`: - `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was - sending that as a string query `uid_number eq '20000'` and has been changed to send it as - `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to identify the - numeric literal and use the NewNumericRangeInclusiveQuery instead of a TermQuery. + Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a + user it will not only try to lookup the user by username, but also by the `uidnumber`: + `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was + sending that as a string query `uid_number eq '20000'` and has been changed to send it as + `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to identify the + numeric literal and use the NewNumericRangeInclusiveQuery instead of a TermQuery. - - - + https://github.com/owncloud/ocis-glauth/issues/28 + https://github.com/owncloud/ocis/accounts/pull/68 + https://github.com/owncloud/ocis-glauth/pull/29 -- Bugfix - Prevent segfault when no password is set: [#65](https://github.com/owncloud/ocis/accounts/pull/65) +* Bugfix - Prevent segfault when no password is set: [#65](https://github.com/owncloud/ocis/accounts/pull/65) - Passwords are stored in a dedicated child struct of an account. We fixed several segfault - conditions where the methods would try to unset a password when that child struct was not - existing. + Passwords are stored in a dedicated child struct of an account. We fixed several segfault + conditions where the methods would try to unset a password when that child struct was not + existing. - + https://github.com/owncloud/ocis/accounts/pull/65 -- Bugfix - Update account return value not used: [#70](https://github.com/owncloud/ocis/accounts/pull/70) +* Bugfix - Update account return value not used: [#70](https://github.com/owncloud/ocis/accounts/pull/70) - In order to return a value using the micro go code we need to override the `out` value. + In order to return a value using the micro go code we need to override the `out` value. - + https://github.com/owncloud/ocis/accounts/pull/70 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#64](https://github.com/owncloud/ocis/accounts/pull/64) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#64](https://github.com/owncloud/ocis/accounts/pull/64) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/accounts/pull/64 -- Change - Align structure of this extension with other extensions: [#51](https://github.com/owncloud/ocis/accounts/pull/51) +* Change - Align structure of this extension with other extensions: [#51](https://github.com/owncloud/ocis/accounts/pull/51) - We aim to have a similar project structure for all our ocis extensions. This extension was - different with regard to the structure of the server command and naming of some flag names. + We aim to have a similar project structure for all our ocis extensions. This extension was + different with regard to the structure of the server command and naming of some flag names. - + https://github.com/owncloud/ocis/accounts/pull/51 -- Change - Change api errors: [#11](https://github.com/owncloud/ocis/accounts/issues/11) +* Change - Change api errors: [#11](https://github.com/owncloud/ocis/accounts/issues/11) - Replaced the plain golang errors with the error model from the micro framework. + Replaced the plain golang errors with the error model from the micro framework. - + https://github.com/owncloud/ocis/accounts/issues/11 -- Change - Enable accounts on creation: [#43](https://github.com/owncloud/ocis/accounts/issues/43) +* Change - Enable accounts on creation: [#43](https://github.com/owncloud/ocis/accounts/issues/43) - Accounts have been created with the account_enabled flag set to false. Now when they are - created accounts will be enabled per default. + Accounts have been created with the account_enabled flag set to false. Now when they are + created accounts will be enabled per default. - + https://github.com/owncloud/ocis/accounts/issues/43 -- Change - Fix index update on create/update: [#57](https://github.com/owncloud/ocis/accounts/issues/57) +* Change - Fix index update on create/update: [#57](https://github.com/owncloud/ocis/accounts/issues/57) - We fixed a bug in creating/updating accounts and groups, that caused new entities not to show up - in list queries. + We fixed a bug in creating/updating accounts and groups, that caused new entities not to show up + in list queries. - - + https://github.com/owncloud/ocis/accounts/issues/57 + https://github.com/owncloud/ocis/accounts/pull/59 -- Change - Pass around the correct logger throughout the code: [#41](https://github.com/owncloud/ocis/accounts/issues/41) +* Change - Pass around the correct logger throughout the code: [#41](https://github.com/owncloud/ocis/accounts/issues/41) - Pass around the logger to have consistent log formatting, log level, etc. + Pass around the logger to have consistent log formatting, log level, etc. - - + https://github.com/owncloud/ocis/accounts/issues/41 + https://github.com/owncloud/ocis/accounts/pull/48 -- Change - Remove timezone setting: [#33](https://github.com/owncloud/ocis/accounts/pull/33) +* Change - Remove timezone setting: [#33](https://github.com/owncloud/ocis/accounts/pull/33) - We had a timezone setting in our profile settings bundle. As we're not dealing with a timezone - yet it would be confusing for the user to have a timezone setting available. We removed it, until - we have a timezone implementation available in ocis-web. + We had a timezone setting in our profile settings bundle. As we're not dealing with a timezone + yet it would be confusing for the user to have a timezone setting available. We removed it, until + we have a timezone implementation available in ocis-web. - + https://github.com/owncloud/ocis/accounts/pull/33 -- Change - Tighten screws on usernames and email addresses: [#65](https://github.com/owncloud/ocis/accounts/pull/65) +* Change - Tighten screws on usernames and email addresses: [#65](https://github.com/owncloud/ocis/accounts/pull/65) - In order to match accounts to the OIDC claims we currently rely on the email address or username - to be present. We force both to match the [W3C recommended - regex](https://www.w3.org/TR/2016/REC-html51-20161101/sec-forms.html#valid-e-mail-address) - with usernames having to start with a character or `_`. This allows the username to be presented - and used in ACLs when integrating the os with the glauth LDAP service of ocis. + In order to match accounts to the OIDC claims we currently rely on the email address or username + to be present. We force both to match the [W3C recommended + regex](https://www.w3.org/TR/2016/REC-html51-20161101/sec-forms.html#valid-e-mail-address) + with usernames having to start with a character or `_`. This allows the username to be presented + and used in ACLs when integrating the os with the glauth LDAP service of ocis. - + https://github.com/owncloud/ocis/accounts/pull/65 -- Enhancement - Add early version of cli tools for user-management: [#69](https://github.com/owncloud/ocis/accounts/pull/69) +* Enhancement - Add early version of cli tools for user-management: [#69](https://github.com/owncloud/ocis/accounts/pull/69) - Following commands are available: + Following commands are available: - List, ls List existing accounts add, create, Create a new account update Make changes to an - existing account remove, rm Removes an existing account inspect Show detailed data on an - existing account + List, ls List existing accounts add, create, Create a new account update Make changes to an + existing account remove, rm Removes an existing account inspect Show detailed data on an + existing account - See --help for details. + See --help for details. - Note that not all account-attributes have an effect yet. This is due to ocis being in an early - development stage. + Note that not all account-attributes have an effect yet. This is due to ocis being in an early + development stage. - - + https://github.com/owncloud/product/issues/115 + https://github.com/owncloud/ocis/accounts/pull/69 -- Enhancement - Update accounts API: [#30](https://github.com/owncloud/ocis/accounts/pull/30) +* Enhancement - Update accounts API: [#30](https://github.com/owncloud/ocis/accounts/pull/30) - We updated the api to allow fetching users not onyl by UUID, but also by identity (OpenID issuer - and subject) email, username and optionally a password. + We updated the api to allow fetching users not onyl by UUID, but also by identity (OpenID issuer + and subject) email, username and optionally a password. - + https://github.com/owncloud/ocis/accounts/pull/30 -- Enhancement - Add simple user listing UI: [#51](https://github.com/owncloud/ocis/accounts/pull/51) +* Enhancement - Add simple user listing UI: [#51](https://github.com/owncloud/ocis/accounts/pull/51) - We added an extension for ocis-web that shows a simple list of all existing users. + We added an extension for ocis-web that shows a simple list of all existing users. - + https://github.com/owncloud/ocis/accounts/pull/51 -# Changelog for [0.1.1] \(2020-04-29) +# Changelog for [0.1.1] (2020-04-29) The following sections list the changes in ocis-accounts 0.1.1. @@ -395,18 +395,18 @@ The following sections list the changes in ocis-accounts 0.1.1. ## Summary -- Enhancement - Logging is configurable: [#24](https://github.com/owncloud/ocis/accounts/pull/24) +* Enhancement - Logging is configurable: [#24](https://github.com/owncloud/ocis/accounts/pull/24) ## Details -- Enhancement - Logging is configurable: [#24](https://github.com/owncloud/ocis/accounts/pull/24) +* Enhancement - Logging is configurable: [#24](https://github.com/owncloud/ocis/accounts/pull/24) - ACCOUNTS_LOG_\* env-vars or cli-flags can be used for logging configuration. See --help for - more details. + ACCOUNTS_LOG_* env-vars or cli-flags can be used for logging configuration. See --help for + more details. - + https://github.com/owncloud/ocis/accounts/pull/24 -# Changelog for [0.1.0] \(2020-03-18) +# Changelog for [0.1.0] (2020-03-18) The following sections list the changes in ocis-accounts 0.1.0. @@ -414,21 +414,22 @@ The following sections list the changes in ocis-accounts 0.1.0. ## Summary -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/accounts/issues/1) -- Enhancement - Configuration: [#15](https://github.com/owncloud/ocis/accounts/pull/15) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/accounts/issues/1) +* Enhancement - Configuration: [#15](https://github.com/owncloud/ocis/accounts/pull/15) ## Details -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/accounts/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/accounts/issues/1) - Just prepared an initial basic version. + Just prepared an initial basic version. - + https://github.com/owncloud/ocis/accounts/issues/1 -- Enhancement - Configuration: [#15](https://github.com/owncloud/ocis/accounts/pull/15) +* Enhancement - Configuration: [#15](https://github.com/owncloud/ocis/accounts/pull/15) - Extensions should be responsible of configuring themselves. We use Viper for config loading - from default paths. Environment variables **WILL** take precedence over config files. + Extensions should be responsible of configuring themselves. We use Viper for config loading + from default paths. Environment variables **WILL** take precedence over config files. + + https://github.com/owncloud/ocis/accounts/pull/15 - diff --git a/accounts/README.md b/accounts/README.md index e0464dd79..e8c889b38 100644 --- a/accounts/README.md +++ b/accounts/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-accounts/status.svg)](https://cloud.drone.io/owncloud/ocis-accounts) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/d005a4722c1b463b9b95060479018e99)](https://www.codacy.com/gh/owncloud/ocis-accounts?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-accounts&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/d005a4722c1b463b9b95060479018e99)](https://www.codacy.com/gh/owncloud/ocis-accounts?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-accounts&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-accounts?status.svg)](http://godoc.org/github.com/owncloud/ocis-accounts) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-accounts)](http://goreportcard.com/report/github.com/owncloud/ocis-accounts) [![](https://images.microbadger.com/badges/image/owncloud/ocis-accounts.svg)](http://microbadger.com/images/owncloud/ocis-accounts "Get your own image badge on microbadger.com") @@ -12,9 +12,7 @@ ## Install You can download prebuilt binaries from the GitHub releases or from our [download mirrors](http://download.owncloud.com/ocis/accounts/). For instructions how to install this on your platform you should take a look at our [documentation](https://owncloud.github.io/extensions/ocis_accounts/) - -* * * - +**** ## Development Make sure you have a working Go environment, for further reference or a guide take a look at the [install instructions](http://golang.org/doc/install.html). This project requires Go >= v1.13. @@ -30,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/accounts/changelog/0.1.0_2020-03-18/self-config.md b/accounts/changelog/0.1.0_2020-03-18/self-config.md index e1aa8d911..2363b7b35 100644 --- a/accounts/changelog/0.1.0_2020-03-18/self-config.md +++ b/accounts/changelog/0.1.0_2020-03-18/self-config.md @@ -2,4 +2,4 @@ Enhancement: Configuration Extensions should be responsible of configuring themselves. We use Viper for config loading from default paths. Environment variables **WILL** take precedence over config files. - +https://github.com/owncloud/ocis/accounts/pull/15 diff --git a/accounts/changelog/0.1.1_2020-04-29/configurable-log.md b/accounts/changelog/0.1.1_2020-04-29/configurable-log.md index e8fb14d25..bd51052a1 100644 --- a/accounts/changelog/0.1.1_2020-04-29/configurable-log.md +++ b/accounts/changelog/0.1.1_2020-04-29/configurable-log.md @@ -1,5 +1,5 @@ Enhancement: Logging is configurable -ACCOUNTS_LOG_\* env-vars or cli-flags can be used for logging configuration. See --help for more details. +ACCOUNTS_LOG_* env-vars or cli-flags can be used for logging configuration. See --help for more details. - +https://github.com/owncloud/ocis/accounts/pull/24 diff --git a/accounts/changelog/0.2.0_2020-08-19/add-cli-user-management.md b/accounts/changelog/0.2.0_2020-08-19/add-cli-user-management.md index d03cf39f0..19b4fca56 100644 --- a/accounts/changelog/0.2.0_2020-08-19/add-cli-user-management.md +++ b/accounts/changelog/0.2.0_2020-08-19/add-cli-user-management.md @@ -13,5 +13,5 @@ See --help for details. Note that not all account-attributes have an effect yet. This is due to ocis being in an early development stage. - - +https://github.com/owncloud/ocis/accounts/pull/69 +https://github.com/owncloud/product/issues/115 diff --git a/accounts/changelog/0.2.0_2020-08-19/add-write-mutexes.md b/accounts/changelog/0.2.0_2020-08-19/add-write-mutexes.md index 0ca105d54..86a53127c 100644 --- a/accounts/changelog/0.2.0_2020-08-19/add-write-mutexes.md +++ b/accounts/changelog/0.2.0_2020-08-19/add-write-mutexes.md @@ -2,4 +2,4 @@ Bugfix: Add write mutexes Concurrent account or groups writes would corrupt the json file on disk, because the different goroutines would be treated as a single thread from the os. We introduce a mutex for account and group file writes each. This locks the update frequency for all accounts/groups and could be further improved by using a concurrent map of mutexes with a mutex per account / group. PR welcome. - +https://github.com/owncloud/ocis/accounts/pull/71 diff --git a/accounts/changelog/0.2.0_2020-08-19/align-project-structure.md b/accounts/changelog/0.2.0_2020-08-19/align-project-structure.md index 52af19730..db1f6a86a 100644 --- a/accounts/changelog/0.2.0_2020-08-19/align-project-structure.md +++ b/accounts/changelog/0.2.0_2020-08-19/align-project-structure.md @@ -2,4 +2,4 @@ Change: Align structure of this extension with other extensions We aim to have a similar project structure for all our ocis extensions. This extension was different with regard to the structure of the server command and naming of some flag names. - +https://github.com/owncloud/ocis/accounts/pull/51 diff --git a/accounts/changelog/0.2.0_2020-08-19/change-grpc-error-messages.md b/accounts/changelog/0.2.0_2020-08-19/change-grpc-error-messages.md index 54ca96846..6d42a79fc 100644 --- a/accounts/changelog/0.2.0_2020-08-19/change-grpc-error-messages.md +++ b/accounts/changelog/0.2.0_2020-08-19/change-grpc-error-messages.md @@ -2,4 +2,5 @@ Change: change api errors Replaced the plain golang errors with the error model from the micro framework. - + +https://github.com/owncloud/ocis/accounts/issues/11 diff --git a/accounts/changelog/0.2.0_2020-08-19/enable_accounts.md b/accounts/changelog/0.2.0_2020-08-19/enable_accounts.md index 26e1a7a78..67eee43dc 100644 --- a/accounts/changelog/0.2.0_2020-08-19/enable_accounts.md +++ b/accounts/changelog/0.2.0_2020-08-19/enable_accounts.md @@ -3,4 +3,4 @@ Change: Enable accounts on creation Accounts have been created with the account_enabled flag set to false. Now when they are created accounts will be enabled per default. - +https://github.com/owncloud/ocis/accounts/issues/43 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-account-group-id.md b/accounts/changelog/0.2.0_2020-08-19/fix-account-group-id.md index afab2d559..379f6917f 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-account-group-id.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-account-group-id.md @@ -5,4 +5,4 @@ We've fixed a bug in deleting the groups. The accountId and GroupId were swapped when removing the member from a group after deleting the group. - +https://github.com/owncloud/ocis/accounts/pull/60 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-index-mapping.md b/accounts/changelog/0.2.0_2020-08-19/fix-index-mapping.md index 32ad2d43d..816dd1af4 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-index-mapping.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-index-mapping.md @@ -2,4 +2,4 @@ Bugfix: Fix index mapping The index mapping was not being used because we were not using the right blevesearch TypeField, leading to username like properties like `preferred_name` and `on_premises_sam_account_name` to be case sensitive. - +https://github.com/owncloud/ocis/accounts/issues/73 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-indexing.md b/accounts/changelog/0.2.0_2020-08-19/fix-indexing.md index 0b8fa5d51..140716636 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-indexing.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-indexing.md @@ -2,5 +2,5 @@ Change: Fix index update on create/update We fixed a bug in creating/updating accounts and groups, that caused new entities not to show up in list queries. - - +https://github.com/owncloud/ocis/accounts/issues/57 +https://github.com/owncloud/ocis/accounts/pull/59 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-int-queries.md b/accounts/changelog/0.2.0_2020-08-19/fix-int-queries.md index e392e72e5..ae8b7c520 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-int-queries.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-int-queries.md @@ -2,6 +2,6 @@ Bugfix: use NewNumericRangeInclusiveQuery for numeric literals Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a user it will not only try to lookup the user by username, but also by the `uidnumber`: `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was sending that as a string query `uid_number eq '20000'` and has been changed to send it as `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to identify the numeric literal and use the NewNumericRangeInclusiveQuery instead of a TermQuery. - - - +https://github.com/owncloud/ocis-glauth/issues/28 +https://github.com/owncloud/ocis/accounts/pull/68 +https://github.com/owncloud/ocis-glauth/pull/29 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-segfault.md b/accounts/changelog/0.2.0_2020-08-19/fix-segfault.md index 8eb016513..57b224a60 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-segfault.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-segfault.md @@ -2,4 +2,4 @@ Bugfix: Prevent segfault when no password is set Passwords are stored in a dedicated child struct of an account. We fixed several segfault conditions where the methods would try to unset a password when that child struct was not existing. - +https://github.com/owncloud/ocis/accounts/pull/65 diff --git a/accounts/changelog/0.2.0_2020-08-19/fix-update.md b/accounts/changelog/0.2.0_2020-08-19/fix-update.md index 1245f3e6b..b35978b62 100644 --- a/accounts/changelog/0.2.0_2020-08-19/fix-update.md +++ b/accounts/changelog/0.2.0_2020-08-19/fix-update.md @@ -2,4 +2,4 @@ Bugfix: Update account return value not used In order to return a value using the micro go code we need to override the `out` value. - +https://github.com/owncloud/ocis/accounts/pull/70 diff --git a/accounts/changelog/0.2.0_2020-08-19/pass-correct-logger.md b/accounts/changelog/0.2.0_2020-08-19/pass-correct-logger.md index dafa65eca..114b8e7a7 100644 --- a/accounts/changelog/0.2.0_2020-08-19/pass-correct-logger.md +++ b/accounts/changelog/0.2.0_2020-08-19/pass-correct-logger.md @@ -2,5 +2,5 @@ Change: pass around the correct logger throughout the code Pass around the logger to have consistent log formatting, log level, etc. - - +https://github.com/owncloud/ocis/accounts/issues/41 +https://github.com/owncloud/ocis/accounts/pull/48 diff --git a/accounts/changelog/0.2.0_2020-08-19/remove-timezone-setting.md b/accounts/changelog/0.2.0_2020-08-19/remove-timezone-setting.md index 232516471..25483afca 100644 --- a/accounts/changelog/0.2.0_2020-08-19/remove-timezone-setting.md +++ b/accounts/changelog/0.2.0_2020-08-19/remove-timezone-setting.md @@ -4,4 +4,4 @@ We had a timezone setting in our profile settings bundle. As we're not dealing w it would be confusing for the user to have a timezone setting available. We removed it, until we have a timezone implementation available in ocis-web. - +https://github.com/owncloud/ocis/accounts/pull/33 diff --git a/accounts/changelog/0.2.0_2020-08-19/tighten-screws.md b/accounts/changelog/0.2.0_2020-08-19/tighten-screws.md index c33f5eec7..90171b04d 100644 --- a/accounts/changelog/0.2.0_2020-08-19/tighten-screws.md +++ b/accounts/changelog/0.2.0_2020-08-19/tighten-screws.md @@ -2,4 +2,4 @@ Change: Tighten screws on usernames and email addresses In order to match accounts to the OIDC claims we currently rely on the email address or username to be present. We force both to match the [W3C recommended regex](https://www.w3.org/TR/2016/REC-html51-20161101/sec-forms.html#valid-e-mail-address) with usernames having to start with a character or `_`. This allows the username to be presented and used in ACLs when integrating the os with the glauth LDAP service of ocis. - +https://github.com/owncloud/ocis/accounts/pull/65 diff --git a/accounts/changelog/0.2.0_2020-08-19/update-accounts-api.md b/accounts/changelog/0.2.0_2020-08-19/update-accounts-api.md index ab5ab908b..d3cc3a154 100644 --- a/accounts/changelog/0.2.0_2020-08-19/update-accounts-api.md +++ b/accounts/changelog/0.2.0_2020-08-19/update-accounts-api.md @@ -2,4 +2,4 @@ Enhancement: Update accounts API We updated the api to allow fetching users not onyl by UUID, but also by identity (OpenID issuer and subject) email, username and optionally a password. - +https://github.com/owncloud/ocis/accounts/pull/30 diff --git a/accounts/changelog/0.2.0_2020-08-19/use-alpine-latest.md b/accounts/changelog/0.2.0_2020-08-19/use-alpine-latest.md index beab7dbc8..7ea076b61 100644 --- a/accounts/changelog/0.2.0_2020-08-19/use-alpine-latest.md +++ b/accounts/changelog/0.2.0_2020-08-19/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/accounts/pull/64 diff --git a/accounts/changelog/0.2.0_2020-08-19/user-listing-ui.md b/accounts/changelog/0.2.0_2020-08-19/user-listing-ui.md index 61032f186..51e6e98f1 100644 --- a/accounts/changelog/0.2.0_2020-08-19/user-listing-ui.md +++ b/accounts/changelog/0.2.0_2020-08-19/user-listing-ui.md @@ -2,4 +2,4 @@ Enhancement: Add simple user listing UI We added an extension for ocis-web that shows a simple list of all existing users. - +https://github.com/owncloud/ocis/accounts/pull/51 diff --git a/accounts/changelog/0.3.0_2020-08-20/adapt-to-settings-data-model.md b/accounts/changelog/0.3.0_2020-08-20/adapt-to-settings-data-model.md index 2c84c1364..ee57d3781 100644 --- a/accounts/changelog/0.3.0_2020-08-20/adapt-to-settings-data-model.md +++ b/accounts/changelog/0.3.0_2020-08-20/adapt-to-settings-data-model.md @@ -2,5 +2,5 @@ Change: Adapt to new ocis-settings data model ocis-settings introduced UUIDs and less verbose endpoint and message type names. This PR adjusts ocis-accounts accordingly. - - +https://github.com/owncloud/ocis/accounts/pull/87 +https://github.com/owncloud/ocis/settings/pull/46 diff --git a/accounts/changelog/0.3.0_2020-08-20/add-language-permissions-to-default-roles.md b/accounts/changelog/0.3.0_2020-08-20/add-language-permissions-to-default-roles.md index a076cea46..f937e30f2 100644 --- a/accounts/changelog/0.3.0_2020-08-20/add-language-permissions-to-default-roles.md +++ b/accounts/changelog/0.3.0_2020-08-20/add-language-permissions-to-default-roles.md @@ -3,4 +3,4 @@ Change: Add permissions for language to default roles ocis-settings has default roles and exposes the respective bundle uuids. We now added permissions for reading/writing the preferred language to the default roles. - +https://github.com/owncloud/ocis/accounts/pull/88 diff --git a/accounts/changelog/0.3.0_2020-08-20/atomic-requests.md b/accounts/changelog/0.3.0_2020-08-20/atomic-requests.md index 1ec7b3996..cc6dd3b72 100644 --- a/accounts/changelog/0.3.0_2020-08-20/atomic-requests.md +++ b/accounts/changelog/0.3.0_2020-08-20/atomic-requests.md @@ -2,4 +2,4 @@ Bugfix: Atomic Requests Operations on the file system level are now atomic. This happens only on the provisioning API. - +https://github.com/owncloud/ocis/accounts/pull/82 diff --git a/accounts/changelog/0.3.0_2020-08-20/fix-prefix-query.md b/accounts/changelog/0.3.0_2020-08-20/fix-prefix-query.md index 272066fbc..b2a7509ff 100644 --- a/accounts/changelog/0.3.0_2020-08-20/fix-prefix-query.md +++ b/accounts/changelog/0.3.0_2020-08-20/fix-prefix-query.md @@ -2,4 +2,4 @@ Bugfix: Unescape value for prefix query Prefix queries also need to unescape token values like `'some ''ol string'` to `some 'ol string` before using it in a prefix query - +https://github.com/owncloud/ocis/accounts/pull/76 diff --git a/accounts/changelog/0.4.0_2020-08-20/select-role-in-ui.md b/accounts/changelog/0.4.0_2020-08-20/select-role-in-ui.md index 3be7c07cc..82530b726 100644 --- a/accounts/changelog/0.4.0_2020-08-20/select-role-in-ui.md +++ b/accounts/changelog/0.4.0_2020-08-20/select-role-in-ui.md @@ -3,5 +3,5 @@ Change: Add role selection to accounts UI We added a role selection dropdown for each account in the accounts UI. As a first iteration, this doesn't require account management permissions. - - +https://github.com/owncloud/product/issues/103 +https://github.com/owncloud/ocis/accounts/pull/89 diff --git a/accounts/changelog/0.4.1_2020-08-27/assign_role.md b/accounts/changelog/0.4.1_2020-08-27/assign_role.md index b9718cbd9..5ad8c3fb8 100644 --- a/accounts/changelog/0.4.1_2020-08-27/assign_role.md +++ b/accounts/changelog/0.4.1_2020-08-27/assign_role.md @@ -2,4 +2,4 @@ Change: Create account api-call implicitly adds "default-user" role When calling CreateAccount default-user-role is implicitly added. - +https://github.com/owncloud/product/issues/173 diff --git a/accounts/changelog/unreleased/add-create-form.md b/accounts/changelog/unreleased/add-create-form.md index c28566465..790e4af9a 100644 --- a/accounts/changelog/unreleased/add-create-form.md +++ b/accounts/changelog/unreleased/add-create-form.md @@ -2,5 +2,5 @@ Enhancement: Add create account form We've added a form to create new users above the accounts list. - - +https://github.com/owncloud/product/issues/148 +https://github.com/owncloud/ocis/accounts/pull/115 diff --git a/accounts/changelog/unreleased/add-delete-action.md b/accounts/changelog/unreleased/add-delete-action.md index 704b42fce..506975346 100644 --- a/accounts/changelog/unreleased/add-delete-action.md +++ b/accounts/changelog/unreleased/add-delete-action.md @@ -2,5 +2,5 @@ Enhancement: Add delete accounts action We've added an action into the actions dropdown to enable admins to delete users. - - +https://github.com/owncloud/product/issues/148 +https://github.com/owncloud/ocis/accounts/pull/115 diff --git a/accounts/changelog/unreleased/add-enable-disable-ui.md b/accounts/changelog/unreleased/add-enable-disable-ui.md index c2a0aa1cc..135be1242 100644 --- a/accounts/changelog/unreleased/add-enable-disable-ui.md +++ b/accounts/changelog/unreleased/add-enable-disable-ui.md @@ -2,5 +2,5 @@ Enhancement: Add enable/disable capabilities to the WebUI We've added batch actions into the accounts listing to provide options to enable and disable accounts. - - +https://github.com/owncloud/product/issues/118 +https://github.com/owncloud/ocis/accounts/pull/109 diff --git a/accounts/changelog/unreleased/builtin-regular-users.md b/accounts/changelog/unreleased/builtin-regular-users.md index 10a799ed2..35451c76e 100644 --- a/accounts/changelog/unreleased/builtin-regular-users.md +++ b/accounts/changelog/unreleased/builtin-regular-users.md @@ -2,4 +2,4 @@ Change: Set user role on builtin users We now set the default `user` role on our builtin users. - +https://github.com/owncloud/ocis/accounts/pull/102 diff --git a/accounts/changelog/unreleased/fix-role-service-grpc.md b/accounts/changelog/unreleased/fix-role-service-grpc.md index 76a14c3b9..8cba20fe2 100644 --- a/accounts/changelog/unreleased/fix-role-service-grpc.md +++ b/accounts/changelog/unreleased/fix-role-service-grpc.md @@ -2,4 +2,5 @@ Bugfix: initialize roleService client in GRPC server We fixed the initialization of the GRPC server by also providing a roleService client and a roleManager instance. - +https://github.com/owncloud/ocis/accounts/pull/114 + diff --git a/accounts/changelog/unreleased/improve-accounts-ui.md b/accounts/changelog/unreleased/improve-accounts-ui.md index b992d8698..75831a7f0 100644 --- a/accounts/changelog/unreleased/improve-accounts-ui.md +++ b/accounts/changelog/unreleased/improve-accounts-ui.md @@ -2,5 +2,5 @@ Enhancement: Improve visual appearance of accounts UI We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, style of batch actions), added icons to buttons, extracted the buttons from the batch actions dropdown into individual buttons, improved the wording added a confirmation widget for the user deletion and removed the uid and gid columns. - - +https://github.com/owncloud/product/issues/222 +https://github.com/owncloud/ocis/accounts/pull/116 diff --git a/accounts/changelog/unreleased/new-admin-user.md b/accounts/changelog/unreleased/new-admin-user.md index 60b275f71..d012f0e52 100644 --- a/accounts/changelog/unreleased/new-admin-user.md +++ b/accounts/changelog/unreleased/new-admin-user.md @@ -2,4 +2,4 @@ Change: Add new builtin admin user We added a new builtin user `moss` and assigned the admin role. - +https://github.com/owncloud/ocis/accounts/pull/102 diff --git a/accounts/changelog/unreleased/single-service-handler.md b/accounts/changelog/unreleased/single-service-handler.md index 41d36404c..3478dfd7e 100644 --- a/accounts/changelog/unreleased/single-service-handler.md +++ b/accounts/changelog/unreleased/single-service-handler.md @@ -4,6 +4,7 @@ The accounts service was creating a bleve index instance in the service handler, This fixes a bug that accounts created through the web ui were not able to sign in until a service restart. - - - +https://github.com/owncloud/product/issues/224 +https://github.com/owncloud/ocis/accounts/pull/117 +https://github.com/owncloud/ocis/accounts/pull/118 + diff --git a/accounts/changelog/unreleased/use-roles-cache.md b/accounts/changelog/unreleased/use-roles-cache.md index 95b953b17..973fb90de 100644 --- a/accounts/changelog/unreleased/use-roles-cache.md +++ b/accounts/changelog/unreleased/use-roles-cache.md @@ -2,4 +2,4 @@ Change: We make use of the roles cache to enforce permission checks The roles cache and its cache update middleware are used to make permission checks possible. The permission checks take place in the accounts handler. - +https://github.com/owncloud/ocis/accounts/pull/100 diff --git a/accounts/changelog/unreleased/use-roles-manager.md b/accounts/changelog/unreleased/use-roles-manager.md index d92ed9aa2..4db8736cf 100644 --- a/accounts/changelog/unreleased/use-roles-manager.md +++ b/accounts/changelog/unreleased/use-roles-manager.md @@ -3,5 +3,5 @@ Change: We make use of the roles manager to enforce permission checks The roles cache and its cache update middleware have been replaced with a roles manager in ocis-pkg/v2. We've switched over to the new roles manager implementation, to prepare for permission checks on grpc requests as well. - - +https://github.com/owncloud/ocis/accounts/pull/108 +https://github.com/owncloud/ocis-pkg/pull/60 diff --git a/accounts/docs/_index.md b/accounts/docs/_index.md index 261c87f68..3249c0241 100644 --- a/accounts/docs/_index.md +++ b/accounts/docs/_index.md @@ -1,23 +1,21 @@ -* * * - +--- title: Accounts date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- [![GitHub](https://img.shields.io/github/license/owncloud/ocis-hello)](https://github.com/owncloud/ocis-hello/blob/master/LICENSE) ## Abstract - OCIS needs to be able to identify users. Whithout a non reassignable and persistend account ID share metadata cannot be reliably persisted. `ocis-accounts` allows exchanging oidc claims for a uuid. Using a uuid allows users to change the login, mail or even openid connect provider without breaking any persisted metadata that might have been attached to it. -- persists accounts -- uses graph api properties - \-ldap can be synced using the onpremise\* attributes +- persists accounts +- uses graph api properties + -ldap can be synced using the onpremise* attributes ## Table of Contents -{{< toc-tree >}} +{{< toc-tree >}} \ No newline at end of file diff --git a/accounts/docs/building.md b/accounts/docs/building.md index 809640aec..2d96c7ceb 100644 --- a/accounts/docs/building.md +++ b/accounts/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-accounts.git cd ocis-accounts -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-accounts -h` to see all available options and subcommands. diff --git a/accounts/docs/configuration.md b/accounts/docs/configuration.md index a9a70c927..f6c383023 100644 --- a/accounts/docs/configuration.md +++ b/accounts/docs/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-07-01T11:10:52+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,28 +43,28 @@ Start ocis accounts service Usage: `ocis-reva server [command options] [arguments...]` -\--http-namespace | $ACCOUNTS_HTTP_NAMESPACE +--http-namespace | $ACCOUNTS_HTTP_NAMESPACE : Set the base namespace for the http namespace. Default: `com.owncloud.web`. -\--http-addr | $ACCOUNTS_HTTP_ADDR +--http-addr | $ACCOUNTS_HTTP_ADDR : Address to bind http server. Default: `localhost:9181`. -\--http-root | $ACCOUNTS_HTTP_ROOT +--http-root | $ACCOUNTS_HTTP_ROOT : Root path of http server. Default: `/`. -\--grpc-namespace | $ACCOUNTS_GRPC_NAMESPACE +--grpc-namespace | $ACCOUNTS_GRPC_NAMESPACE : Set the base namespace for the grpc namespace. Default: `com.owncloud.api`. -\--grpc-addr | $ACCOUNTS_GRPC_ADDR +--grpc-addr | $ACCOUNTS_GRPC_ADDR : Address to bind grpc server. Default: `localhost:9180`. -\--name | $ACCOUNTS_NAME +--name | $ACCOUNTS_NAME : service name. Default: `accounts`. -\--accounts-data-path | $ACCOUNTS_DATA_PATH +--accounts-data-path | $ACCOUNTS_DATA_PATH : accounts folder. Default: `/var/tmp/ocis-accounts`. -\--asset-path | $HELLO_ASSET_PATH +--asset-path | $HELLO_ASSET_PATH : Path to custom assets. ### ocis-reva ocis-accounts @@ -74,11 +73,12 @@ Provide accounts and groups for oCIS Usage: `ocis-reva ocis-accounts [command options] [arguments...]` -\--log-level | $ACCOUNTS_LOG_LEVEL +--log-level | $ACCOUNTS_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $ACCOUNTS_LOG_PRETTY +--log-pretty | $ACCOUNTS_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $ACCOUNTS_LOG_COLOR +--log-color | $ACCOUNTS_LOG_COLOR : Enable colored logging. Default: `true`. + diff --git a/accounts/docs/getting-started.md b/accounts/docs/getting-started.md index a692272ab..d389b843c 100644 --- a/accounts/docs/getting-started.md +++ b/accounts/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -57,6 +56,6 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the grpc server. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-accounts server --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/docs/extensions/accounts/_index.md b/docs/extensions/accounts/_index.md index 261c87f68..3249c0241 100644 --- a/docs/extensions/accounts/_index.md +++ b/docs/extensions/accounts/_index.md @@ -1,23 +1,21 @@ -* * * - +--- title: Accounts date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- [![GitHub](https://img.shields.io/github/license/owncloud/ocis-hello)](https://github.com/owncloud/ocis-hello/blob/master/LICENSE) ## Abstract - OCIS needs to be able to identify users. Whithout a non reassignable and persistend account ID share metadata cannot be reliably persisted. `ocis-accounts` allows exchanging oidc claims for a uuid. Using a uuid allows users to change the login, mail or even openid connect provider without breaking any persisted metadata that might have been attached to it. -- persists accounts -- uses graph api properties - \-ldap can be synced using the onpremise\* attributes +- persists accounts +- uses graph api properties + -ldap can be synced using the onpremise* attributes ## Table of Contents -{{< toc-tree >}} +{{< toc-tree >}} \ No newline at end of file diff --git a/docs/extensions/accounts/building.md b/docs/extensions/accounts/building.md index 809640aec..2d96c7ceb 100644 --- a/docs/extensions/accounts/building.md +++ b/docs/extensions/accounts/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-accounts.git cd ocis-accounts -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-accounts -h` to see all available options and subcommands. diff --git a/docs/extensions/accounts/configuration.md b/docs/extensions/accounts/configuration.md index a9a70c927..f6c383023 100644 --- a/docs/extensions/accounts/configuration.md +++ b/docs/extensions/accounts/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-07-01T11:10:52+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,28 +43,28 @@ Start ocis accounts service Usage: `ocis-reva server [command options] [arguments...]` -\--http-namespace | $ACCOUNTS_HTTP_NAMESPACE +--http-namespace | $ACCOUNTS_HTTP_NAMESPACE : Set the base namespace for the http namespace. Default: `com.owncloud.web`. -\--http-addr | $ACCOUNTS_HTTP_ADDR +--http-addr | $ACCOUNTS_HTTP_ADDR : Address to bind http server. Default: `localhost:9181`. -\--http-root | $ACCOUNTS_HTTP_ROOT +--http-root | $ACCOUNTS_HTTP_ROOT : Root path of http server. Default: `/`. -\--grpc-namespace | $ACCOUNTS_GRPC_NAMESPACE +--grpc-namespace | $ACCOUNTS_GRPC_NAMESPACE : Set the base namespace for the grpc namespace. Default: `com.owncloud.api`. -\--grpc-addr | $ACCOUNTS_GRPC_ADDR +--grpc-addr | $ACCOUNTS_GRPC_ADDR : Address to bind grpc server. Default: `localhost:9180`. -\--name | $ACCOUNTS_NAME +--name | $ACCOUNTS_NAME : service name. Default: `accounts`. -\--accounts-data-path | $ACCOUNTS_DATA_PATH +--accounts-data-path | $ACCOUNTS_DATA_PATH : accounts folder. Default: `/var/tmp/ocis-accounts`. -\--asset-path | $HELLO_ASSET_PATH +--asset-path | $HELLO_ASSET_PATH : Path to custom assets. ### ocis-reva ocis-accounts @@ -74,11 +73,12 @@ Provide accounts and groups for oCIS Usage: `ocis-reva ocis-accounts [command options] [arguments...]` -\--log-level | $ACCOUNTS_LOG_LEVEL +--log-level | $ACCOUNTS_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $ACCOUNTS_LOG_PRETTY +--log-pretty | $ACCOUNTS_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $ACCOUNTS_LOG_COLOR +--log-color | $ACCOUNTS_LOG_COLOR : Enable colored logging. Default: `true`. + diff --git a/docs/extensions/accounts/getting-started.md b/docs/extensions/accounts/getting-started.md index a692272ab..d389b843c 100644 --- a/docs/extensions/accounts/getting-started.md +++ b/docs/extensions/accounts/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-accounts geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -57,6 +56,6 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the grpc server. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-accounts server --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/docs/extensions/glauth/_index.md b/docs/extensions/glauth/_index.md index 199a85dba..25756306d 100644 --- a/docs/extensions/glauth/_index.md +++ b/docs/extensions/glauth/_index.md @@ -1,15 +1,14 @@ -* * * - +--- title: "GLAuth" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides a simple glauth world API which can be used by clients or other extensions. -- reiner proxy - ldap für eos und firewall -- backend ist der accounts service +- reiner proxy +ldap für eos und firewall +- backend ist der accounts service \ No newline at end of file diff --git a/docs/extensions/glauth/building.md b/docs/extensions/glauth/building.md index a234621c1..7dc26619f 100644 --- a/docs/extensions/glauth/building.md +++ b/docs/extensions/glauth/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-glauth.git cd ocis-glauth -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-glauth -h` to see all available options. diff --git a/docs/extensions/glauth/getting-started.md b/docs/extensions/glauth/getting-started.md index 456ad694d..f28c31e1f 100644 --- a/docs/extensions/glauth/getting-started.md +++ b/docs/extensions/glauth/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `glauth` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9124` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9120` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9124` ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-glauth server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-glauth health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/glauth/license.md b/docs/extensions/glauth/license.md index 1f8d3255a..914cd70bd 100644 --- a/docs/extensions/glauth/license.md +++ b/docs/extensions/glauth/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/glauth/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/graph/archetypes/default.md b/docs/extensions/graph/archetypes/default.md index 4826d2892..4e777bee1 100644 --- a/docs/extensions/graph/archetypes/default.md +++ b/docs/extensions/graph/archetypes/default.md @@ -1,7 +1,6 @@ -* * * - +--- title: "{{ replace .TranslationBaseName "-" " " | title }}" date: {{ .Date }} anchor: "{{ replace .TranslationBaseName "-" " " | title | urlize }}" - -## weight: +weight: +--- diff --git a/docs/extensions/graph/content/about.md b/docs/extensions/graph/content/about.md index a2bb1c857..22736cdbd 100644 --- a/docs/extensions/graph/content/about.md +++ b/docs/extensions/graph/content/about.md @@ -1,9 +1,8 @@ -* * * - +--- title: "About" date: 2018-05-02T00:00:00+00:00 anchor: "about" - -## weight: 10 +weight: 10 +--- This service provides a simple graph world API which can be used by clients or other extensions. diff --git a/docs/extensions/graph/content/building.md b/docs/extensions/graph/content/building.md index 981f9513a..91d0ca2c3 100644 --- a/docs/extensions/graph/content/building.md +++ b/docs/extensions/graph/content/building.md @@ -1,25 +1,24 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 anchor: "building" - -## weight: 30 +weight: 30 +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-graph.git cd ocis-graph -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ### Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-graph -h` to see all available options. diff --git a/docs/extensions/graph/content/getting-started.md b/docs/extensions/graph/content/getting-started.md index 350afc50a..3de31b20e 100644 --- a/docs/extensions/graph/content/getting-started.md +++ b/docs/extensions/graph/content/getting-started.md @@ -1,10 +1,9 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 anchor: "getting-started" - -## weight: 20 +weight: 20 +--- ### Installation @@ -86,59 +85,59 @@ If you prefer to configure the service with commandline flags you can see the av ##### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` ##### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `graph` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9124` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9120` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` ##### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9124` #### Configuration file @@ -153,17 +152,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-graph server --help -{{< / highlight >}} +{{< / highlight >}} #### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-graph health --help -{{< / highlight >}} +{{< / highlight >}} ### Metrics diff --git a/docs/extensions/graph/content/license.md b/docs/extensions/graph/content/license.md index 268a9e1d4..5400a0450 100644 --- a/docs/extensions/graph/content/license.md +++ b/docs/extensions/graph/content/license.md @@ -1,9 +1,8 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 anchor: "license" - -## weight: 40 +weight: 40 +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/graph/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/konnectd/_index.md b/docs/extensions/konnectd/_index.md index 96b05a089..b12cd3b0e 100644 --- a/docs/extensions/konnectd/_index.md +++ b/docs/extensions/konnectd/_index.md @@ -1,9 +1,8 @@ -* * * - +--- title: Konnectd -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an OpenID Connect provider which is the default way to authenticate in OCIS. diff --git a/docs/extensions/konnectd/building.md b/docs/extensions/konnectd/building.md index e75779e85..b044dd1d4 100644 --- a/docs/extensions/konnectd/building.md +++ b/docs/extensions/konnectd/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2020-02-21T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-konnectd.git cd ocis-konnectd -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-konnectd -h` to see all available options and subcommands. diff --git a/docs/extensions/konnectd/configuration.md b/docs/extensions/konnectd/configuration.md index eaffb1b59..281b64fde 100644 --- a/docs/extensions/konnectd/configuration.md +++ b/docs/extensions/konnectd/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:47+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ Serve Konnectd API for oCIS Usage: `ocis-konnectd [global options] command [command options] [arguments...]` -\--config-file | $KONNECTD_CONFIG_FILE +--config-file | $KONNECTD_CONFIG_FILE : Path to config file. -\--log-level | $KONNECTD_LOG_LEVEL +--log-level | $KONNECTD_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $KONNECTD_LOG_PRETTY +--log-pretty | $KONNECTD_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $KONNECTD_LOG_COLOR +--log-color | $KONNECTD_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis-konnectd health [command options] [arguments...]` -\--debug-addr | $KONNECTD_DEBUG_ADDR +--debug-addr | $KONNECTD_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9134`. ### ocis-konnectd server @@ -73,104 +72,105 @@ Start integrated server Usage: `ocis-konnectd server [command options] [arguments...]` -\--tracing-enabled | $KONNECTD_TRACING_ENABLED +--tracing-enabled | $KONNECTD_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $KONNECTD_TRACING_TYPE +--tracing-type | $KONNECTD_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $KONNECTD_TRACING_ENDPOINT +--tracing-endpoint | $KONNECTD_TRACING_ENDPOINT : Endpoint for the agent. -\--tracing-collector | $KONNECTD_TRACING_COLLECTOR +--tracing-collector | $KONNECTD_TRACING_COLLECTOR : Endpoint for the collector. -\--tracing-service | $KONNECTD_TRACING_SERVICE +--tracing-service | $KONNECTD_TRACING_SERVICE : Service name for tracing. Default: `konnectd`. -\--debug-addr | $KONNECTD_DEBUG_ADDR +--debug-addr | $KONNECTD_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9134`. -\--debug-token | $KONNECTD_DEBUG_TOKEN +--debug-token | $KONNECTD_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $KONNECTD_DEBUG_PPROF +--debug-pprof | $KONNECTD_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $KONNECTD_DEBUG_ZPAGES +--debug-zpages | $KONNECTD_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $KONNECTD_HTTP_ADDR +--http-addr | $KONNECTD_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9130`. -\--http-root | $KONNECTD_HTTP_ROOT +--http-root | $KONNECTD_HTTP_ROOT : Root path of http server. Default: `/`. -\--http-namespace | $KONNECTD_HTTP_NAMESPACE +--http-namespace | $KONNECTD_HTTP_NAMESPACE : Set the base namespace for service discovery. Default: `com.owncloud.web`. -\--identity-manager | $KONNECTD_IDENTITY_MANAGER +--identity-manager | $KONNECTD_IDENTITY_MANAGER : Identity manager (one of ldap,kc,cookie,dummy). Default: `ldap`. -\--transport-tls-cert | $KONNECTD_TRANSPORT_TLS_CERT +--transport-tls-cert | $KONNECTD_TRANSPORT_TLS_CERT : Certificate file for transport encryption. -\--transport-tls-key | $KONNECTD_TRANSPORT_TLS_KEY +--transport-tls-key | $KONNECTD_TRANSPORT_TLS_KEY : Secret file for transport encryption. -\--iss | $KONNECTD_ISS +--iss | $KONNECTD_ISS : OIDC issuer URL. Default: `https://localhost:9200`. -\--signing-kid | $KONNECTD_SIGNING_KID +--signing-kid | $KONNECTD_SIGNING_KID : Value of kid field to use in created tokens (uniquely identifying the signing-private-key). -\--validation-keys-path | $KONNECTD_VALIDATION_KEYS_PATH +--validation-keys-path | $KONNECTD_VALIDATION_KEYS_PATH : Full path to a folder containg PEM encoded private or public key files used for token validaton (file name without extension is used as kid). -\--encryption-secret | $KONNECTD_ENCRYPTION_SECRET +--encryption-secret | $KONNECTD_ENCRYPTION_SECRET : Full path to a file containing a %d bytes secret key. -\--signing-method | $KONNECTD_SIGNING_METHOD +--signing-method | $KONNECTD_SIGNING_METHOD : JWT default signing method. Default: `PS256`. -\--uri-base-path | $KONNECTD_URI_BASE_PATH +--uri-base-path | $KONNECTD_URI_BASE_PATH : Custom base path for URI endpoints. -\--sign-in-uri | $KONNECTD_SIGN_IN_URI +--sign-in-uri | $KONNECTD_SIGN_IN_URI : Custom redirection URI to sign-in form. -\--signed-out-uri | $KONNECTD_SIGN_OUT_URI +--signed-out-uri | $KONNECTD_SIGN_OUT_URI : Custom redirection URI to signed-out goodbye page. -\--authorization-endpoint-uri | $KONNECTD_ENDPOINT_URI +--authorization-endpoint-uri | $KONNECTD_ENDPOINT_URI : Custom authorization endpoint URI. -\--endsession-endpoint-uri | $KONNECTD_ENDSESSION_ENDPOINT_URI +--endsession-endpoint-uri | $KONNECTD_ENDSESSION_ENDPOINT_URI : Custom endsession endpoint URI. -\--asset-path | $KONNECTD_ASSET_PATH +--asset-path | $KONNECTD_ASSET_PATH : Path to custom assets. -\--identifier-client-path | $KONNECTD_IDENTIFIER_CLIENT_PATH +--identifier-client-path | $KONNECTD_IDENTIFIER_CLIENT_PATH : Path to the identifier web client base folder. Default: `/var/tmp/konnectd`. -\--identifier-registration-conf | $KONNECTD_IDENTIFIER_REGISTRATION_CONF +--identifier-registration-conf | $KONNECTD_IDENTIFIER_REGISTRATION_CONF : Path to a identifier-registration.yaml configuration file. Default: `./config/identifier-registration.yaml`. -\--identifier-scopes-conf | $KONNECTD_IDENTIFIER_SCOPES_CONF +--identifier-scopes-conf | $KONNECTD_IDENTIFIER_SCOPES_CONF : Path to a scopes.yaml configuration file. -\--insecure | $KONNECTD_INSECURE +--insecure | $KONNECTD_INSECURE : Disable TLS certificate and hostname validation. -\--tls | $KONNECTD_TLS +--tls | $KONNECTD_TLS : Use TLS (disable only if konnectd is behind a TLS-terminating reverse-proxy).. Default: `false`. -\--allow-client-guests | $KONNECTD_ALLOW_CLIENT_GUESTS +--allow-client-guests | $KONNECTD_ALLOW_CLIENT_GUESTS : Allow sign in of client controlled guest users. -\--allow-dynamic-client-registration | $KONNECTD_ALLOW_DYNAMIC_CLIENT_REGISTRATION +--allow-dynamic-client-registration | $KONNECTD_ALLOW_DYNAMIC_CLIENT_REGISTRATION : Allow dynamic OAuth2 client registration. -\--disable-identifier-webapp | $KONNECTD_DISABLE_IDENTIFIER_WEBAPP +--disable-identifier-webapp | $KONNECTD_DISABLE_IDENTIFIER_WEBAPP : Disable built-in identifier-webapp to use a frontend hosted elsewhere.. Default: `true`. + diff --git a/docs/extensions/konnectd/getting-started.md b/docs/extensions/konnectd/getting-started.md index d74c63555..96be58e3b 100644 --- a/docs/extensions/konnectd/getting-started.md +++ b/docs/extensions/konnectd/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-konnectd. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-konnectd ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-konnectd/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-konnectd/testing/ ```console curl https://download.owncloud.com/ocis/ocis-konnectd/1.0.0-beta1/ocis-konnectd-1.0.0-beta1-darwin-amd64 --output ocis-konnectd @@ -42,17 +41,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-konnectd server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-konnectd health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/ocis-phoenix/_index.md b/docs/extensions/ocis-phoenix/_index.md index 970154566..c48d8bc68 100644 --- a/docs/extensions/ocis-phoenix/_index.md +++ b/docs/extensions/ocis-phoenix/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Phoenix" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service embeds [Phoenix](https://github.com/owncloud/phoenix) to provide a UI for ownCloud Infinite Scale. diff --git a/docs/extensions/ocis-phoenix/building.md b/docs/extensions/ocis-phoenix/building.md index 18700f92f..0063c67f8 100644 --- a/docs/extensions/ocis-phoenix/building.md +++ b/docs/extensions/ocis-phoenix/building.md @@ -1,27 +1,26 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-phoenix.git cd ocis-phoenix -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} The above commands will download a [Phoenix](https://github.com/owncloud/phoenix) release and embed it into the binary. Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-phoenix -h` to see all available options. diff --git a/docs/extensions/ocis-phoenix/getting-started.md b/docs/extensions/ocis-phoenix/getting-started.md index be92411f5..2963fd911 100644 --- a/docs/extensions/ocis-phoenix/getting-started.md +++ b/docs/extensions/ocis-phoenix/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -128,91 +127,91 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `phoenix` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9104` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9100` -\--http-root +--http-root : Root path of http server, defaults to `/` -\--asset-path +--asset-path : Path to custom assets, empty default value -\--web-config +--web-config : Path to phoenix config, empty default value -\--web-config-server +--web-config-server : Server URL, defaults to `http://localhost:9135` -\--web-config-theme +--web-config-theme : Theme, defaults to `owncloud` -\--web-config-version +--web-config-version : Version, defaults to `0.1.0` -\--web-config-app +--web-config-app : Provide multiple apps, defaults to `""`. Usage: `phoenix --web-config-app files --web-config-app pdf-viewer` -\--oidc-metadata-url +--oidc-metadata-url : OpenID Connect metadata URL, defaults to `http://localhost:9130/.well-known/openid-configuration` -\--oidc-authority +--oidc-authority : OpenID Connect authority, defaults to `http://localhost:9130` -\--oidc-client-id +--oidc-client-id : OpenID Connect client ID, defaults to `phoenix` -\--oidc-response-type +--oidc-response-type : OpenID Connect response type, defaults to `code` -\--oidc-scope +--oidc-scope : OpenID Connect scope, defaults to `openid profile email` In case you want to render any additional properties in the config.json you can provide a custom config.json using eg. `ocis-phoenix server --web-config=/path/to/config.json` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9104` ### Configuration file @@ -227,17 +226,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-phoenix server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-phoenix health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/ocis-phoenix/license.md b/docs/extensions/ocis-phoenix/license.md index 86b2a5794..1bcdc02c5 100644 --- a/docs/extensions/ocis-phoenix/license.md +++ b/docs/extensions/ocis-phoenix/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocis-phoenix/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/ocis-phoenix/releasing.md b/docs/extensions/ocis-phoenix/releasing.md index 3c2abcfbf..e314c2ba7 100644 --- a/docs/extensions/ocis-phoenix/releasing.md +++ b/docs/extensions/ocis-phoenix/releasing.md @@ -1,13 +1,12 @@ -* * * - +--- title: "Releasing" weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} ## Releasing @@ -17,10 +16,10 @@ To update this package within all the deliveries, we need to update the package ### Package Hierarchy -- [ocis](https://githug.com/owncloud/ocis) - - [ocis-phoenix](https://github.com/owncloud/ocis-phoenix) - - [ocis-pkg](https://github.com/owncloud/ocis-pkg) - - [phoenix](https://github.com/owncloud/phoenix) +- [ocis](https://githug.com/owncloud/ocis) + - [ocis-phoenix](https://github.com/owncloud/ocis-phoenix) + - [ocis-pkg](https://github.com/owncloud/ocis-pkg) + - [phoenix](https://github.com/owncloud/phoenix) #### Prerequisites @@ -29,15 +28,15 @@ and take note of its release tag name. #### Updating ocis-phoenix -1. Create a branch `release-$version`. in -2. Create a Folder in `changelog` for the release version and date `mkdir $major.$minor.$patchVersion_YYYY-MM-DD`. -3. Move all changelog items from the `changelog/unreleased/` folder to the `$major.$minor.$patchVersion_YYYY-MM-DD` folder. -4. Update the go module `ocis-pkg` to the latest version . -5. Update the phoenix asset by adjusting the value of `PHOENIX_ASSETS_VERSION` at the top of the Makefile and specify the tag name of the latest [Phoenix release](https://github.com/owncloud/phoenix/tags). -6. Run `make clean generate`. -7. Create a changelog item for the update in the `changelog/$major.$minor.$patchVersion_YYYY-MM-DD` folder. -8. Commit your changes. -9. After merging, wait for the CI to run on the merge commit. +1. Create a branch `release-$version`. in +2. Create a Folder in `changelog` for the release version and date `mkdir $major.$minor.$patchVersion_YYYY-MM-DD`. +3. Move all changelog items from the `changelog/unreleased/` folder to the `$major.$minor.$patchVersion_YYYY-MM-DD` folder. +4. Update the go module `ocis-pkg` to the latest version . +5. Update the phoenix asset by adjusting the value of `PHOENIX_ASSETS_VERSION` at the top of the Makefile and specify the tag name of the latest [Phoenix release](https://github.com/owncloud/phoenix/tags). +6. Run `make clean generate`. +7. Create a changelog item for the update in the `changelog/$major.$minor.$patchVersion_YYYY-MM-DD` folder. +8. Commit your changes. +9. After merging, wait for the CI to run on the merge commit. 10. Go to "Releases" in GH click "Draft a new Release". 11. Use `v$major.$minor.$patch` as a tag (the `v` prefix is important) and publish it. 12. The tag and the Release artifacts will be created automatically. @@ -45,3 +44,4 @@ and take note of its release tag name. #### Next steps Next steps is usually updating the ocis-phoenix version in the [ocis](https://githug.com/owncloud/ocis) repository. + diff --git a/docs/extensions/ocis-reva/_index.md b/docs/extensions/ocis-reva/_index.md index 23d4809c2..ab942240c 100644 --- a/docs/extensions/ocis-reva/_index.md +++ b/docs/extensions/ocis-reva/_index.md @@ -1,19 +1,18 @@ -* * * - +--- title: "Reva" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an ocis extension that wraps [reva](https://github.com/cs3org/reva/) and adds an opinionated configuration to it. It uses the port range 9140-9179 to preconfigure several services. | port | service | -\+------+---------+ ++------+---------+ | 9109 | health? | | 9140 | frontend | | 9141 | frontend debug | diff --git a/docs/extensions/ocis-reva/building.md b/docs/extensions/ocis-reva/building.md index c3dc9015c..cebab803f 100644 --- a/docs/extensions/ocis-reva/building.md +++ b/docs/extensions/ocis-reva/building.md @@ -1,26 +1,26 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install).To build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-reva.git cd ocis-reva -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. + ### Backend -{{< highlight txt >}} +{{< highlight txt >}} make build -{{< / highlight >}} +{{< / highlight >}} The above command should produce the binary within the `bin/` folder now, give it a try with `./bin/ocis-reva -h` to see all available options. diff --git a/docs/extensions/ocis-reva/configuration.md b/docs/extensions/ocis-reva/configuration.md index 9dcf4713f..a66cb1f5d 100644 --- a/docs/extensions/ocis-reva/configuration.md +++ b/docs/extensions/ocis-reva/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:49+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ Example service for Reva/oCIS Usage: `ocis-reva [global options] command [command options] [arguments...]` -\--config-file | $REVA_CONFIG_FILE +--config-file | $REVA_CONFIG_FILE : Path to config file. -\--log-level | $REVA_LOG_LEVEL +--log-level | $REVA_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $REVA_LOG_PRETTY +--log-pretty | $REVA_LOG_PRETTY : Enable pretty logging. -\--log-color | $REVA_LOG_COLOR +--log-color | $REVA_LOG_COLOR : Enable colored logging. ## Sub Commands @@ -64,25 +63,25 @@ Start reva authprovider for basic auth Usage: `ocis-reva auth-basic [command options] [arguments...]` -\--debug-addr | $REVA_AUTH_BASIC_DEBUG_ADDR +--debug-addr | $REVA_AUTH_BASIC_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9147`. -\--auth-driver | $REVA_AUTH_DRIVER +--auth-driver | $REVA_AUTH_DRIVER : auth driver: 'demo', 'json' or 'ldap'. Default: `ldap`. -\--auth-json | $REVA_AUTH_JSON +--auth-json | $REVA_AUTH_JSON : Path to users.json file. -\--network | $REVA_AUTH_BASIC_NETWORK +--network | $REVA_AUTH_BASIC_NETWORK : Network to use for the reva auth-basic service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_AUTH_BASIC_PROTOCOL +--protocol | $REVA_AUTH_BASIC_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_AUTH_BASIC_ADDR +--addr | $REVA_AUTH_BASIC_ADDR : Address to bind reva service. Default: `0.0.0.0:9146`. -\--url | $REVA_AUTH_BASIC_URL +--url | $REVA_AUTH_BASIC_URL : URL to use for the reva service. Default: `localhost:9146`. ### ocis-reva frontend @@ -91,46 +90,46 @@ Start reva frontend service Usage: `ocis-reva frontend [command options] [arguments...]` -\--debug-addr | $REVA_FRONTEND_DEBUG_ADDR +--debug-addr | $REVA_FRONTEND_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9141`. -\--transfer-secret | $REVA_TRANSFER_SECRET +--transfer-secret | $REVA_TRANSFER_SECRET : Transfer secret for datagateway. Default: `replace-me-with-a-transfer-secret`. -\--webdav-namespace | $WEBDAV_NAMESPACE +--webdav-namespace | $WEBDAV_NAMESPACE : Namespace prefix for the /webdav endpoint. Default: `/home/`. -\--dav-files-namespace | $DAV_FILES_NAMESPACE +--dav-files-namespace | $DAV_FILES_NAMESPACE : Namespace prefix for the webdav /dav/files endpoint. Default: `/oc/`. -\--network | $REVA_FRONTEND_NETWORK +--network | $REVA_FRONTEND_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_FRONTEND_PROTOCOL +--protocol | $REVA_FRONTEND_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_FRONTEND_ADDR +--addr | $REVA_FRONTEND_ADDR : Address to bind reva service. Default: `0.0.0.0:9140`. -\--url | $REVA_FRONTEND_URL +--url | $REVA_FRONTEND_URL : URL to use for the reva service. Default: `https://localhost:9200`. -\--datagateway-prefix | $REVA_FRONTEND_DATAGATEWAY_PREFIX +--datagateway-prefix | $REVA_FRONTEND_DATAGATEWAY_PREFIX : datagateway prefix. Default: `data`. -\--ocdav-prefix | $REVA_FRONTEND_OCDAV_PREFIX +--ocdav-prefix | $REVA_FRONTEND_OCDAV_PREFIX : owncloud webdav endpoint prefix. -\--ocs-prefix | $REVA_FRONTEND_OCS_PREFIX +--ocs-prefix | $REVA_FRONTEND_OCS_PREFIX : open collaboration services endpoint prefix. Default: `ocs`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--upload-disable-tus | $REVA_FRONTEND_UPLOAD_DISABLE_TUS +--upload-disable-tus | $REVA_FRONTEND_UPLOAD_DISABLE_TUS : Disables TUS upload mechanism. Default: `false`. -\--upload-http-method-override | $REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE +--upload-http-method-override | $REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE : Specify an HTTP method (ex: POST) that clients should to use when uploading instead of PATCH. ### ocis-reva gateway @@ -139,100 +138,100 @@ Start reva gateway Usage: `ocis-reva gateway [command options] [arguments...]` -\--debug-addr | $REVA_GATEWAY_DEBUG_ADDR +--debug-addr | $REVA_GATEWAY_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9143`. -\--transfer-secret | $REVA_TRANSFER_SECRET +--transfer-secret | $REVA_TRANSFER_SECRET : Transfer secret for datagateway. Default: `replace-me-with-a-transfer-secret`. -\--network | $REVA_GATEWAY_NETWORK +--network | $REVA_GATEWAY_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_GATEWAY_PROTOCOL +--protocol | $REVA_GATEWAY_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_GATEWAY_ADDR +--addr | $REVA_GATEWAY_ADDR : Address to bind reva service. Default: `0.0.0.0:9142`. -\--url | $REVA_GATEWAY_URL +--url | $REVA_GATEWAY_URL : URL to use for the reva service. Default: `localhost:9142`. -\--commit-share-to-storage-grant | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_GRANT +--commit-share-to-storage-grant | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_GRANT : Commit shares to the share manager. Default: `true`. -\--commit-share-to-storage-ref | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_REF +--commit-share-to-storage-ref | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_REF : Commit shares to the storage. Default: `true`. -\--share-folder | $REVA_GATEWAY_SHARE_FOLDER +--share-folder | $REVA_GATEWAY_SHARE_FOLDER : mount shares in this folder of the home storage provider. Default: `Shares`. -\--disable-home-creation-on-login | $REVA_GATEWAY_DISABLE_HOME_CREATION_ON_LOGIN +--disable-home-creation-on-login | $REVA_GATEWAY_DISABLE_HOME_CREATION_ON_LOGIN : Disable creation of home folder on login. -\--storage-registry-driver | $REVA_STORAGE_REGISTRY_DRIVER +--storage-registry-driver | $REVA_STORAGE_REGISTRY_DRIVER : driver of the storage registry. Default: `static`. -\--storage-home-provider | $REVA_STORAGE_HOME_PROVIDER +--storage-home-provider | $REVA_STORAGE_HOME_PROVIDER : mount point of the storage provider for user homes in the global namespace. Default: `/home`. -\--frontend-url | $REVA_FRONTEND_URL +--frontend-url | $REVA_FRONTEND_URL : URL to use for the reva service. Default: `https://localhost:9200`. -\--datagateway-url | $REVA_DATAGATEWAY_URL +--datagateway-url | $REVA_DATAGATEWAY_URL : URL to use for the reva datagateway. Default: `https://localhost:9200/data`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. -\--auth-basic-url | $REVA_AUTH_BASIC_URL +--auth-basic-url | $REVA_AUTH_BASIC_URL : URL to use for the reva service. Default: `localhost:9146`. -\--auth-bearer-url | $REVA_AUTH_BEARER_URL +--auth-bearer-url | $REVA_AUTH_BEARER_URL : URL to use for the reva service. Default: `localhost:9148`. -\--sharing-url | $REVA_SHARING_URL +--sharing-url | $REVA_SHARING_URL : URL to use for the reva service. Default: `localhost:9150`. -\--storage-root-url | $REVA_STORAGE_ROOT_URL +--storage-root-url | $REVA_STORAGE_ROOT_URL : URL to use for the reva service. Default: `localhost:9152`. -\--storage-root-mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH +--storage-root-mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH : mount path. Default: `/`. -\--storage-root-mount-id | $REVA_STORAGE_ROOT_MOUNT_ID +--storage-root-mount-id | $REVA_STORAGE_ROOT_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009152`. -\--storage-home-url | $REVA_STORAGE_HOME_URL +--storage-home-url | $REVA_STORAGE_HOME_URL : URL to use for the reva service. Default: `localhost:9154`. -\--storage-home-mount-path | $REVA_STORAGE_HOME_MOUNT_PATH +--storage-home-mount-path | $REVA_STORAGE_HOME_MOUNT_PATH : mount path. Default: `/home`. -\--storage-home-mount-id | $REVA_STORAGE_HOME_MOUNT_ID +--storage-home-mount-id | $REVA_STORAGE_HOME_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009154`. -\--storage-eos-url | $REVA_STORAGE_EOS_URL +--storage-eos-url | $REVA_STORAGE_EOS_URL : URL to use for the reva service. Default: `localhost:9158`. -\--storage-eos-mount-path | $REVA_STORAGE_EOS_MOUNT_PATH +--storage-eos-mount-path | $REVA_STORAGE_EOS_MOUNT_PATH : mount path. Default: `/eos`. -\--storage-eos-mount-id | $REVA_STORAGE_EOS_MOUNT_ID +--storage-eos-mount-id | $REVA_STORAGE_EOS_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009158`. -\--storage-oc-url | $REVA_STORAGE_OC_URL +--storage-oc-url | $REVA_STORAGE_OC_URL : URL to use for the reva service. Default: `localhost:9162`. -\--storage-oc-mount-path | $REVA_STORAGE_OC_MOUNT_PATH +--storage-oc-mount-path | $REVA_STORAGE_OC_MOUNT_PATH : mount path. Default: `/oc`. -\--storage-oc-mount-id | $REVA_STORAGE_OC_MOUNT_ID +--storage-oc-mount-id | $REVA_STORAGE_OC_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--public-link-url | $REVA_STORAGE_PUBLIC_LINK_URL +--public-link-url | $REVA_STORAGE_PUBLIC_LINK_URL : URL to use for the public links service. Default: `localhost:9178`. -\--storage-public-link-mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH +--storage-public-link-mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH : mount path. Default: `/public/`. ### ocis-reva sharing @@ -241,28 +240,28 @@ Start reva sharing service Usage: `ocis-reva sharing [command options] [arguments...]` -\--debug-addr | $REVA_SHARING_DEBUG_ADDR +--debug-addr | $REVA_SHARING_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9151`. -\--network | $REVA_SHARING_NETWORK +--network | $REVA_SHARING_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_SHARING_PROTOCOL +--protocol | $REVA_SHARING_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_SHARING_ADDR +--addr | $REVA_SHARING_ADDR : Address to bind reva service. Default: `0.0.0.0:9150`. -\--url | $REVA_SHARING_URL +--url | $REVA_SHARING_URL : URL to use for the reva service. Default: `localhost:9150`. -\--user-driver | $REVA_SHARING_USER_DRIVER +--user-driver | $REVA_SHARING_USER_DRIVER : driver to use for the UserShareProvider. Default: `json`. -\--user-json-file | $REVA_SHARING_USER_JSON_FILE +--user-json-file | $REVA_SHARING_USER_JSON_FILE : file used to persist shares for the UserShareProvider. Default: `/var/tmp/reva/shares.json`. -\--public-driver | $REVA_SHARING_PUBLIC_DRIVER +--public-driver | $REVA_SHARING_PUBLIC_DRIVER : driver to use for the PublicShareProvider. Default: `json`. ### ocis-reva storage-home-data @@ -271,37 +270,37 @@ Start reva storage-home-data service Usage: `ocis-reva storage-home-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_HOME_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_HOME_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9157`. -\--network | $REVA_STORAGE_HOME_DATA_NETWORK +--network | $REVA_STORAGE_HOME_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_HOME_DATA_PROTOCOL +--protocol | $REVA_STORAGE_HOME_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_HOME_DATA_ADDR +--addr | $REVA_STORAGE_HOME_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9156`. -\--url | $REVA_STORAGE_HOME_DATA_URL +--url | $REVA_STORAGE_HOME_DATA_URL : URL to use for the reva service. Default: `localhost:9156`. -\--driver | $REVA_STORAGE_HOME_DATA_DRIVER +--driver | $REVA_STORAGE_HOME_DATA_DRIVER : storage driver for home data mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--prefix | $REVA_STORAGE_HOME_DATA_PREFIX +--prefix | $REVA_STORAGE_HOME_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_HOME_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_HOME_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME +--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME : enable the creation of home directories. Default: `true`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva health @@ -310,7 +309,7 @@ Check health status Usage: `ocis-reva health [command options] [arguments...]` -\--debug-addr | $REVA_DEBUG_ADDR +--debug-addr | $REVA_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9109`. ### ocis-reva storage-home @@ -319,40 +318,40 @@ Start reva storage-home service Usage: `ocis-reva storage-home [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_HOME_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_HOME_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9155`. -\--network | $REVA_STORAGE_HOME_NETWORK +--network | $REVA_STORAGE_HOME_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_HOME_PROTOCOL +--protocol | $REVA_STORAGE_HOME_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_HOME_ADDR +--addr | $REVA_STORAGE_HOME_ADDR : Address to bind reva service. Default: `0.0.0.0:9154`. -\--url | $REVA_STORAGE_HOME_URL +--url | $REVA_STORAGE_HOME_URL : URL to use for the reva service. Default: `localhost:9154`. -\--driver | $REVA_STORAGE_HOME_DRIVER +--driver | $REVA_STORAGE_HOME_DRIVER : storage driver for home mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--mount-path | $REVA_STORAGE_HOME_MOUNT_PATH +--mount-path | $REVA_STORAGE_HOME_MOUNT_PATH : mount path. Default: `/home`. -\--mount-id | $REVA_STORAGE_HOME_MOUNT_ID +--mount-id | $REVA_STORAGE_HOME_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--expose-data-server | $REVA_STORAGE_HOME_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_HOME_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_HOME_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_HOME_DATA_SERVER_URL : data server url. Default: `http://localhost:9156/data`. -\--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME +--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME : enable the creation of home directories. Default: `true`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-eos-data @@ -361,34 +360,34 @@ Start reva storage-eos-data service Usage: `ocis-reva storage-eos-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9161`. -\--network | $REVA_STORAGE_EOS_DATA_NETWORK +--network | $REVA_STORAGE_EOS_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_EOS_DATA_PROTOCOL +--protocol | $REVA_STORAGE_EOS_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_EOS_DATA_ADDR +--addr | $REVA_STORAGE_EOS_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9160`. -\--url | $REVA_STORAGE_EOS_DATA_URL +--url | $REVA_STORAGE_EOS_DATA_URL : URL to use for the reva service. Default: `localhost:9160`. -\--driver | $REVA_STORAGE_EOS_DATA_DRIVER +--driver | $REVA_STORAGE_EOS_DATA_DRIVER : storage driver for eos data mount: eg. local, eos, owncloud, ocis or s3. Default: `eos`. -\--prefix | $REVA_STORAGE_EOS_DATA_PREFIX +--prefix | $REVA_STORAGE_EOS_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_EOS_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_EOS_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva reva-storage-public-link @@ -397,25 +396,25 @@ Start reva storage-public-link service Usage: `ocis-reva reva-storage-public-link [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_PUBLIC_LINK_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_PUBLIC_LINK_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9179`. -\--network | $REVA_STORAGE_PUBLIC_LINK_NETWORK +--network | $REVA_STORAGE_PUBLIC_LINK_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_PUBLIC_LINK_PROTOCOL +--protocol | $REVA_STORAGE_PUBLIC_LINK_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_PUBLIC_LINK_ADDR +--addr | $REVA_STORAGE_PUBLIC_LINK_ADDR : Address to bind reva service. Default: `0.0.0.0:9178`. -\--url | $REVA_STORAGE_PUBLIC_LINK_URL +--url | $REVA_STORAGE_PUBLIC_LINK_URL : Address to bind reva service. Default: `localhost:9178`. -\--mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH +--mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH : mount path. Default: `/public/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. ### ocis-reva users @@ -424,52 +423,52 @@ Start reva users service Usage: `ocis-reva users [command options] [arguments...]` -\--debug-addr | $REVA_SHARING_DEBUG_ADDR +--debug-addr | $REVA_SHARING_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9145`. -\--network | $REVA_USERS_NETWORK +--network | $REVA_USERS_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_USERS_PROTOCOL +--protocol | $REVA_USERS_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_USERS_ADDR +--addr | $REVA_USERS_ADDR : Address to bind reva service. Default: `0.0.0.0:9144`. -\--url | $REVA_USERS_URL +--url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. -\--driver | $REVA_USERS_DRIVER +--driver | $REVA_USERS_DRIVER : user driver: 'demo', 'json', 'ldap', or 'rest'. Default: `ldap`. -\--json-config | $REVA_USERS_JSON +--json-config | $REVA_USERS_JSON : Path to users.json file. -\--rest-client-id | $REVA_REST_CLIENT_ID +--rest-client-id | $REVA_REST_CLIENT_ID : User rest driver Client ID. -\--rest-client-secret | $REVA_REST_CLIENT_SECRET +--rest-client-secret | $REVA_REST_CLIENT_SECRET : User rest driver Client Secret. -\--rest-redis-address | $REVA_REST_REDIS_ADDRESS +--rest-redis-address | $REVA_REST_REDIS_ADDRESS : Address for redis server. Default: `localhost:6379`. -\--rest-redis-username | $REVA_REST_REDIS_USERNAME +--rest-redis-username | $REVA_REST_REDIS_USERNAME : Username for redis server. -\--rest-redis-password | $REVA_REST_REDIS_PASSWORD +--rest-redis-password | $REVA_REST_REDIS_PASSWORD : Password for redis server. -\--rest-id-provider | $REVA_REST_ID_PROVIDER +--rest-id-provider | $REVA_REST_ID_PROVIDER : The OIDC Provider. -\--rest-api-base-url | $REVA_REST_API_BASE_URL +--rest-api-base-url | $REVA_REST_API_BASE_URL : Base API Endpoint. -\--rest-oidc-token-endpoint | $REVA_REST_OIDC_TOKEN_ENDPOINT +--rest-oidc-token-endpoint | $REVA_REST_OIDC_TOKEN_ENDPOINT : Endpoint to generate token to access the API. -\--rest-target-api | $REVA_REST_TARGET_API +--rest-target-api | $REVA_REST_TARGET_API : The target application. ### ocis-reva auth-bearer @@ -478,34 +477,34 @@ Start reva authprovider for bearer auth Usage: `ocis-reva auth-bearer [command options] [arguments...]` -\--debug-addr | $REVA_AUTH_BEARER_DEBUG_ADDR +--debug-addr | $REVA_AUTH_BEARER_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9149`. -\--oidc-issuer | $REVA_OIDC_ISSUER +--oidc-issuer | $REVA_OIDC_ISSUER : OIDC issuer. Default: `https://localhost:9200`. -\--oidc-insecure | $REVA_OIDC_INSECURE +--oidc-insecure | $REVA_OIDC_INSECURE : OIDC allow insecure communication. Default: `true`. -\--oidc-id-claim | $REVA_OIDC_ID_CLAIM +--oidc-id-claim | $REVA_OIDC_ID_CLAIM : OIDC id claim. Default: `preferred_username`. -\--oidc-uid-claim | $REVA_OIDC_UID_CLAIM +--oidc-uid-claim | $REVA_OIDC_UID_CLAIM : OIDC uid claim. -\--oidc-gid-claim | $REVA_OIDC_GID_CLAIM +--oidc-gid-claim | $REVA_OIDC_GID_CLAIM : OIDC gid claim. -\--network | $REVA_AUTH_BEARER_NETWORK +--network | $REVA_AUTH_BEARER_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_AUTH_BEARER_PROTOCOL +--protocol | $REVA_AUTH_BEARER_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_AUTH_BEARER_ADDR +--addr | $REVA_AUTH_BEARER_ADDR : Address to bind reva service. Default: `0.0.0.0:9148`. -\--url | $REVA_AUTH_BEARER_URL +--url | $REVA_AUTH_BEARER_URL : URL to use for the reva service. Default: `localhost:9148`. ### ocis-reva storage-eos @@ -514,34 +513,34 @@ Start reva storage-eos service Usage: `ocis-reva storage-eos [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_EOS_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_EOS_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9159`. -\--network | $REVA_STORAGE_EOS_NETWORK +--network | $REVA_STORAGE_EOS_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_EOS_PROTOCOL +--protocol | $REVA_STORAGE_EOS_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_EOS_ADDR +--addr | $REVA_STORAGE_EOS_ADDR : Address to bind reva service. Default: `0.0.0.0:9158`. -\--url | $REVA_STORAGE_EOS_URL +--url | $REVA_STORAGE_EOS_URL : URL to use for the reva service. Default: `localhost:9158`. -\--driver | $REVA_STORAGE_EOS_DRIVER +--driver | $REVA_STORAGE_EOS_DRIVER : storage driver for eos mount: eg. local, eos, owncloud, ocis or s3. Default: `eos`. -\--mount-path | $REVA_STORAGE_EOS_MOUNT_PATH +--mount-path | $REVA_STORAGE_EOS_MOUNT_PATH : mount path. Default: `/eos`. -\--mount-id | $REVA_STORAGE_EOS_MOUNT_ID +--mount-id | $REVA_STORAGE_EOS_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009158`. -\--expose-data-server | $REVA_STORAGE_EOS_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_EOS_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_EOS_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_EOS_DATA_SERVER_URL : data server url. Default: `http://localhost:9160/data`. ### ocis-reva storage-oc @@ -550,37 +549,37 @@ Start reva storage-oc service Usage: `ocis-reva storage-oc [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9163`. -\--network | $REVA_STORAGE_OC_NETWORK +--network | $REVA_STORAGE_OC_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_OC_PROTOCOL +--protocol | $REVA_STORAGE_OC_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_OC_ADDR +--addr | $REVA_STORAGE_OC_ADDR : Address to bind reva service. Default: `0.0.0.0:9162`. -\--url | $REVA_STORAGE_OC_URL +--url | $REVA_STORAGE_OC_URL : URL to use for the reva service. Default: `localhost:9162`. -\--driver | $REVA_STORAGE_OC_DRIVER +--driver | $REVA_STORAGE_OC_DRIVER : storage driver for oc mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--mount-path | $REVA_STORAGE_OC_MOUNT_PATH +--mount-path | $REVA_STORAGE_OC_MOUNT_PATH : mount path. Default: `/oc`. -\--mount-id | $REVA_STORAGE_OC_MOUNT_ID +--mount-id | $REVA_STORAGE_OC_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--expose-data-server | $REVA_STORAGE_OC_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_OC_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_OC_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_OC_DATA_SERVER_URL : data server url. Default: `http://localhost:9164/data`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-oc-data @@ -589,34 +588,34 @@ Start reva storage-oc-data service Usage: `ocis-reva storage-oc-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9165`. -\--network | $REVA_STORAGE_OC_DATA_NETWORK +--network | $REVA_STORAGE_OC_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_OC_DATA_PROTOCOL +--protocol | $REVA_STORAGE_OC_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_OC_DATA_ADDR +--addr | $REVA_STORAGE_OC_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9164`. -\--url | $REVA_STORAGE_OC_DATA_URL +--url | $REVA_STORAGE_OC_DATA_URL : URL to use for the reva service. Default: `localhost:9164`. -\--driver | $REVA_STORAGE_OC_DATA_DRIVER +--driver | $REVA_STORAGE_OC_DATA_DRIVER : storage driver for oc data mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--prefix | $REVA_STORAGE_OC_DATA_PREFIX +--prefix | $REVA_STORAGE_OC_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_OC_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_OC_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-root @@ -625,32 +624,33 @@ Start reva storage-root service Usage: `ocis-reva storage-root [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_ROOT_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_ROOT_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9153`. -\--network | $REVA_STORAGE_ROOT_NETWORK +--network | $REVA_STORAGE_ROOT_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_ROOT_PROTOCOL +--protocol | $REVA_STORAGE_ROOT_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_ROOT_ADDR +--addr | $REVA_STORAGE_ROOT_ADDR : Address to bind reva service. Default: `0.0.0.0:9152`. -\--url | $REVA_STORAGE_ROOT_URL +--url | $REVA_STORAGE_ROOT_URL : URL to use for the reva service. Default: `localhost:9152`. -\--driver | $REVA_STORAGE_ROOT_DRIVER +--driver | $REVA_STORAGE_ROOT_DRIVER : storage driver for root mount: eg. local, eos, owncloud, ocis or s3. Default: `local`. -\--mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH +--mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH : mount path. Default: `/`. -\--mount-id | $REVA_STORAGE_ROOT_MOUNT_ID +--mount-id | $REVA_STORAGE_ROOT_MOUNT_ID : mount id. Default: `123e4567-e89b-12d3-a456-426655440001`. -\--expose-data-server | $REVA_STORAGE_ROOT_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_ROOT_EXPOSE_DATA_SERVER : exposes a dedicated data server. -\--data-server-url | $REVA_STORAGE_ROOT_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_ROOT_DATA_SERVER_URL : data server url. + diff --git a/docs/extensions/ocis-reva/getting-started.md b/docs/extensions/ocis-reva/getting-started.md index fc391e446..e7140676e 100644 --- a/docs/extensions/ocis-reva/getting-started.md +++ b/docs/extensions/ocis-reva/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-reva. The `latest` tag always reflects the current master branch. @@ -26,12 +25,12 @@ docker pull owncloud/ocis-reva #### Dependencies -- Running ocis-reva currently needs a working Redis caching server -- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage +- Running ocis-reva currently needs a working Redis caching server +- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-reva/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-reva/testing/ ```console curl https://download.owncloud.com/ocis/ocis/1.0.0-beta1/ocis-reva-1.0.0-beta1-darwin-amd64 --output ocis-reva @@ -41,8 +40,8 @@ chmod +x ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. +- Running ocis currently needs a working Redis caching server +- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. ## Usage @@ -52,6 +51,6 @@ The program provides a few sub-commands on execution. The available configuratio The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-reva health --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/docs/extensions/ocis-reva/license.md b/docs/extensions/ocis-reva/license.md index 060c35c4f..84210633a 100644 --- a/docs/extensions/ocis-reva/license.md +++ b/docs/extensions/ocis-reva/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocis-revablob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/ocis-reva/releasing.md b/docs/extensions/ocis-reva/releasing.md index c9f38ba9e..b233ca59c 100644 --- a/docs/extensions/ocis-reva/releasing.md +++ b/docs/extensions/ocis-reva/releasing.md @@ -1,49 +1,47 @@ -* * * - +--- title: "Releasing" date: 2020-05-22T00:00:00+00:00 weight: 60 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} To release a new version of ocis-reva, you have to follow a few simple steps. ## Preparation -1. Before releasing, make sure that reva has been [updated to the desired version]\({{< ref "updating.md" >}}) -2. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. -3. Checkout the preparation branch. -4. Create a new changelog folder and move the unreleased snippets there. - {{< highlight txt >}} - mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date - mv changelog/unreleased/\* changelog/x.x.x_yyyy-MM-dd/ - {{< / highlight >}} -5. Commit and push the changes - {{< highlight txt >}} - git add --all - git commit -m "prepare release x.x.x" - git push origin release-x.x.x - {{< / highlight >}} -6. Create a pull request to the master branch. +1. Before releasing, make sure that reva has been [updated to the desired version]({{< ref "updating.md" >}}) +2. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. +3. Checkout the preparation branch. +4. Create a new changelog folder and move the unreleased snippets there. +{{< highlight txt >}} +mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date +mv changelog/unreleased/* changelog/x.x.x_yyyy-MM-dd/ +{{< / highlight >}} +5. Commit and push the changes +{{< highlight txt >}} +git add --all +git commit -m "prepare release x.x.x" +git push origin release-x.x.x +{{< / highlight >}} +6. Create a pull request to the master branch. ## Release - -1. After the preparation branch has been merged update your local master. -2. [Wait for CI](https://cloud.drone.io/owncloud/ocis-reva) to generate a commit for the changelog update -3. Check out master (or make sure to check out the generated changelog commit in case of subsequent merges) - {{< highlight txt >}} - git checkout master - git pull origin master - {{< / highlight >}} -4. Create a new tag (preferably signed) and replace the version number accordingly. - {{< highlight txt >}} - git tag -s vx.x.x -m "release vx.x.x" - git push origin vx.x.x - {{< / highlight >}} -5. Wait for CI and check that the GitHub release was published. +1. After the preparation branch has been merged update your local master. +2. [Wait for CI](https://cloud.drone.io/owncloud/ocis-reva) to generate a commit for the changelog update +3. Check out master (or make sure to check out the generated changelog commit in case of subsequent merges) +{{< highlight txt >}} +git checkout master +git pull origin master +{{< / highlight >}} +4. Create a new tag (preferably signed) and replace the version number accordingly. +{{< highlight txt >}} +git tag -s vx.x.x -m "release vx.x.x" +git push origin vx.x.x +{{< / highlight >}} +5. Wait for CI and check that the GitHub release was published. Congratulations, you just released ocis-reva! diff --git a/docs/extensions/ocis-reva/storages.md b/docs/extensions/ocis-reva/storages.md index 022d59482..bc623d065 100644 --- a/docs/extensions/ocis-reva/storages.md +++ b/docs/extensions/ocis-reva/storages.md @@ -1,127 +1,117 @@ -* * * - +--- title: "Storages" date: 2020-04-27T18:46:00+01:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: storages.md +geekdocFilePath: storages.md +--- ## Storage commands -`ocis-reva` has multiple storage provider commands to preconfigure different default configurations for the reva _storage provider_ service. While you could rerun `ocis-reva storage-oc` multiple times with different flags to get multiple instances we are giving the different commands the necessary default configuration to allow the `ocis` binary to simply start them and not deal with configuration. +`ocis-reva` has multiple storage provider commands to preconfigure different default configurations for the reva *storage provider* service. While you could rerun `ocis-reva storage-oc` multiple times with different flags to get multiple instances we are giving the different commands the necessary default configuration to allow the `ocis` binary to simply start them and not deal with configuration. ## Storage providers -To manage the file tree ocis uses reva _storage providers_ that are accessing the underlying storage using a _storage driver_. The driver can be used to change the implementation of a storage aspect to better reflect the actual underlying storage capabilities. As an example a move operation on a POSIX filesystem ([theoretically](https://danluu.com/deconstruct-files/)) is an atomic operation. When trying to implement a file tree on top of S3 there is no native move operation that can be used. A naive implementation might fall back on a COPY and DELETE. Some S3 implementations provide a COPY operation that uses an existing key as the source, so the file at least does not need to be reuploaded. In the worst case scenario, which is renaming a folder with hundreds of thousands of objects, a reupload for every file has to be made. Instead of hiding this complexity a better choice might be to disable renaming of files or at least folders on S3. There are however implementations of filesystems on top of S3 that store the tree metadata in dedicated objects or use a completely different persistence mechanism like a distributed key value store to implement the file tree aspect of a storage. +To manage the file tree ocis uses reva *storage providers* that are accessing the underlying storage using a *storage driver*. The driver can be used to change the implementation of a storage aspect to better reflect the actual underlying storage capabilities. As an example a move operation on a POSIX filesystem ([theoretically](https://danluu.com/deconstruct-files/)) is an atomic operation. When trying to implement a file tree on top of S3 there is no native move operation that can be used. A naive implementation might fall back on a COPY and DELETE. Some S3 implementations provide a COPY operation that uses an existing key as the source, so the file at least does not need to be reuploaded. In the worst case scenario, which is renaming a folder with hundreds of thousands of objects, a reupload for every file has to be made. Instead of hiding this complexity a better choice might be to disable renaming of files or at least folders on S3. There are however implementations of filesystems on top of S3 that store the tree metadata in dedicated objects or use a completely different persistence mechanism like a distributed key value store to implement the file tree aspect of a storage. -{{< hint info >}} -While the _storage provider_ is responsible for managing the tree, file up and download is delegated to a dedicated _data provider_. See below. -{{< /hint >}} + +{{< hint info >}} +While the *storage provider* is responsible for managing the tree, file up and download is delegated to a dedicated *data provider*. See below. +{{< /hint >}} ## Storage aspects - -A lot of different storage technologies exist, ranging from general purpose file systems with POSIX semantics to software defined storage with multiple APIs. Choosing any of them is making a tradeoff decision. Or, if a storage technology is already in place it automatically predetermines the capabilities that can be made available. _Not all storage systems are created equal._ +A lot of different storage technologies exist, ranging from general purpose file systems with POSIX semantics to software defined storage with multiple APIs. Choosing any of them is making a tradeoff decision. Or, if a storage technology is already in place it automatically predetermines the capabilities that can be made available. *Not all storage systems are created equal.* Unfortunately, no POSIX filesystem natively supports all storage aspects that ownCloud 10 requires: -### A hierarchical file tree +### A hierarchical file tree An important aspect of a filesystem is organizing files and directories in a file hierarchy, or tree. It allows you to create, move and delete nodes. Beside the name a node also has well known metadata like size and mtime that are persisted in the tree as well. -{{< hint info >}} +{{< hint info >}} **Folders are not directories** -There is a difference between _folder_ and _directory_: a _directory_ is a file system concept. A _folder_ is a metaphor for the concept of a physical file folder. There are also _virtual folders_ or _smart folders_ like the recent files folder which are no file system _directories_. So, every _directory_ and every _virtual folder_ is a _folder_, but not every _folder_ is a _directory_. See [the folder metaphor in wikipedia](https://en.wikipedia.org/wiki/Directory_(computing)#Folder_metaphor). Also see the activity history below. -{{< /hint >}} +There is a difference between *folder* and *directory*: a *directory* is a file system concept. A *folder* is a metaphor for the concept of a physical file folder. There are also *virtual folders* or *smart folders* like the recent files folder which are no file system *directories*. So, every *directory* and every *virtual folder* is a *folder*, but not every *folder* is a *directory*. See [the folder metaphor in wikipedia](https://en.wikipedia.org/wiki/Directory_(computing)#Folder_metaphor). Also see the activity history below. +{{< /hint >}} #### Id based lookup - While traditionally nodes in the tree are reached by traversing the path the tree persistence should be prepared to look up a node by an id. Think of an inode in a POSIX filesystem. If this operation needs to be cached for performance reasons keep in mind that cache invalidation is hard and crawling all files to update the inode to path mapping takes O(n), not O(1). #### ETag propagation - For the state based sync a client can discover changes by recursively descending the tree and comparing the ETag for every node. If the storage technology supports propagating ETag changes up the tree, only the root node of a tree needs to be checked to determine if a discovery needs to be started and which nodes need to be traversed. This allows using the storage technology itself to persist all metadata that is necessary for sync, without additional services or caches. #### Subtree size accounting - The tree can keep track of how many bytes are stored in a folder. Similar to ETag propagation a change in file size is propagated up the hierarchy. -{{< hint info >}} +{{< hint info >}} **ETag and Size propagation** When propagating the ETag (mtime) and size changes up the tree the question is where to stop. If all changes need to be propagated to the root of a storage then the root or busy folders will become a hotspot. There are two things to keep in mind: 1. propagation only happens up to the root of a single space (a user private drive or a single group drive), 2. no cross storage propagation. The latter was used in oc10 to let clients detect when a file in a received shared folder changed. This functionality is moving to the storage registry which caches the ETag for every root so clients can discover if and which storage changed. -{{< /hint >}} +{{< /hint >}} #### Rename +Depending on the underlying storage technology some operations may either be slow, up to a point where it makes more sense to disable them entirely. One example is a folder rename: on S3 a *simple* folder rename translates to a copy and delete operation for every child of the renamed folder. There is an exception though: this restriction only applies if the S3 storage is treated like a filesystem, where the keys are the path and the value is the file content. There are smarter ways to implement file systems on top of S3, but again: there is always a tradeoff. -Depending on the underlying storage technology some operations may either be slow, up to a point where it makes more sense to disable them entirely. One example is a folder rename: on S3 a _simple_ folder rename translates to a copy and delete operation for every child of the renamed folder. There is an exception though: this restriction only applies if the S3 storage is treated like a filesystem, where the keys are the path and the value is the file content. There are smarter ways to implement file systems on top of S3, but again: there is always a tradeoff. - -{{< hint info >}} +{{< hint info >}} **S3 has no rename** -Technically, [S3 has no rename operation at all](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/examples-s3-objects.html#copy-object). By design, the location of the value is determined by the key, so it always has to do a copy and delete. Another example is the [redis RENAME operation](https://redis.io/commands/rename): while being specified as O(1) it _executes an implicit DEL operation, so if the deleted key contains a very big value it may cause high latency..._ -{{< /hint >}} +Technically, [S3 has no rename operation at all](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/examples-s3-objects.html#copy-object). By design, the location of the value is determined by the key, so it always has to do a copy and delete. Another example is the [redis RENAME operation](https://redis.io/commands/rename): while being specified as O(1) it *executes an implicit DEL operation, so if the deleted key contains a very big value it may cause high latency...* +{{< /hint >}} #### Arbitrary metadata persistence - In addition to well known metadata like name size and mtime, users might be able to add arbitrary metadata like tags, comments or [dublin core](https://en.wikipedia.org/wiki/Dublin_Core). In POSIX filesystems this maps to extended attributes. ### Grant persistence - The CS3 API uses grants to describe access permissions. Storage systems have a wide range of permissions granularity and not all grants may be supported by every storage driver. POSIX ACLs for example have no expiry. If the storage system does not support certain grant properties, e.g. expiry, then the storage driver may choose to implement them in a different way. Expiries could be persisted in a different way and checked periodically to remove the grants. Again: every decision is a tradeoff. ### Trash persistence - After deleting a node the storage allows listing the deleted nodes and has an undo mechanism for them. ### Versions persistence - A user can restore a previous version of a file. -{{< hint info >}} +{{< hint info >}} **Snapshots are not versions** Modern POSIX filesystems support snapshotting of volumes. This is different from keeping track of versions to a file or folder, but might be another implementation strategy for a storage driver to allow users to restore content. -{{< /hint >}} +{{< /hint >}} ### Activity History - The storage keeps an activity history, tracking the different actions that have been performed. This does not only include file changes but also metadata changes like renames and permission changes. ## Storage drivers -Reva currently has four storage driver implementations that can be used for _storage providers_ an well as _data providers_. +Reva currently has four storage driver implementations that can be used for *storage providers* an well as *data providers*. ### Local Storage Driver -The _minimal_ storage driver for a POSIX based filesystem. It literally supports none of the storage aspect other than basic file tree management. Sharing can - to a degree - be implemented using POSIX ACLs. +The *minimal* storage driver for a POSIX based filesystem. It literally supports none of the storage aspect other than basic file tree management. Sharing can - to a degree - be implemented using POSIX ACLs. -- tree provided by a POSIX filesystem - - inefficient path by id lookup, currently uses the file path as id, so ids are not stable - - can store a uuid in extended attributes and use a cache to look them up, similar to the ownCloud driver - - no native ETag propagation, five options are available: - - built in propagation (changes bypassing ocis are not picked up until a rescan) - - built in inotify (requires 48 bytes of RAM per file, needs to keep track of every file and folder) - - external inotify (same RAM requirement, but could be triggered by external tools, e.g. a workflow engine) - - kernel audit log (use the linux kernel audit to capture file events on the storage and offload them to a queue) - - fuse filesystem overlay - - no subtree accounting, same options as for ETag propagation - - efficient rename - - arbitrary metadata using extended attributes -- grant persistence - - using POSIX ACLs - - requires an LDAP server to make guest accounts available in the OS - - OCIS has glauth which contains all users - - an existing LDAP could be used if guests ar provisioned in another way - - using extended attributes to implement expiry or sharing that does not require OS level integration - - fuse filesystem overlay -- no native trash - - could use the [The FreeDesktop.org Trash specification](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html) - - fuse filesystem overlay -- no native versions, multiple options possible - - git for folders - - rcs for single files - - rsnapshot for hourly / daily / weekly / monthly backups ... but this is not versioning as known from oc10 - - design new freedesktop spec, basically what is done in oc10 without the limitations or borrow ideas from the freedesktop trash spec - - fuse filesystem overlay +- tree provided by a POSIX filesystem + - inefficient path by id lookup, currently uses the file path as id, so ids are not stable + - can store a uuid in extended attributes and use a cache to look them up, similar to the ownCloud driver + - no native ETag propagation, five options are available: + - built in propagation (changes bypassing ocis are not picked up until a rescan) + - built in inotify (requires 48 bytes of RAM per file, needs to keep track of every file and folder) + - external inotify (same RAM requirement, but could be triggered by external tools, e.g. a workflow engine) + - kernel audit log (use the linux kernel audit to capture file events on the storage and offload them to a queue) + - fuse filesystem overlay + - no subtree accounting, same options as for ETag propagation + - efficient rename + - arbitrary metadata using extended attributes +- grant persistence + - using POSIX ACLs + - requires an LDAP server to make guest accounts available in the OS + - OCIS has glauth which contains all users + - an existing LDAP could be used if guests ar provisioned in another way + - using extended attributes to implement expiry or sharing that does not require OS level integration + - fuse filesystem overlay +- no native trash + - could use the [The FreeDesktop.org Trash specification](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html) + - fuse filesystem overlay +- no native versions, multiple options possible + - git for folders + - rcs for single files + - rsnapshot for hourly / daily / weekly / monthly backups ... but this is not versioning as known from oc10 + - design new freedesktop spec, basically what is done in oc10 without the limitations or borrow ideas from the freedesktop trash spec + - fuse filesystem overlay To provide the other storage aspects we plan to implement a FUSE overlay filesystem which will add the different aspects on top of local filesystems like ext4, btrfs or xfs. It should work on NFSv45 as well, although NFSv4 supports RichACLs and we will explore how to leverage them to implement sharing at a future date. The idea is to use the storages native capabilities to deliver the best user experience. But again: that means making the right tradeoffs. @@ -132,52 +122,54 @@ This is the current default storage driver. While it implements the file tree (u To setup it up properly in a distributed fashion, the storage-home and the storage-oc need to share the same underlying FS. Their "data" counterparts also need access to the same shared FS. For a simple docker-compose setup, you can create a volume which will be used by the "ocis-reva-storage-home", "ocis-reva-storage-home-data", "ocis-reva-storage-oc" and "ocis-reva-storage-oc-data" containers. Using the `owncloud/ocis-reva` docker image, the volume would need to be hooked in the `/var/tmp/reva` folder insde the containers. -- tree provided by a POSIX filesystem - - file layout is mapped to the old ownCloud 10 layout - - the root of tree for a user on disk is prefixed with `/path/to/data//files/` - - efficient path by id lookup - - all files and folders get assigned a uuid in the extended attributes - - when starting the storage provider it will walk all files to populate a redis kv store for uuid to path lookup - - slow to boot trees with lots of nodes - - build in ETag propagation - - ETags are calculated based on mtime - - mtime is propagated by the storage driver - - changes bypassing ocis are not picked up until a restart of the storage provider - - no subtree accounting, same options as for local storage - - efficient rename - - TODO [update the kv store for path lookup](https://github.com/cs3org/reva/issues/985), this is an O(n) operation - - arbitrary metadata using extended attributes -- grant persistence - - using custom ACLs that are stored as extended attributes - - a grant corresponds to one extended attribute of 40-100 bytes, effectively limiting the number of shares to ~100-40 - - extended attributes have varying limitations, based on the underlying filesystem - - the linux kernel imposes a limit of 255bytes per name and 64KiB per value - - ext2/3/4: total bytes for all attributes of a file is limited to 4KiB (a filesystem block) - - xfs: limit of 64KiB per value - - btrfs: total bytes used for the name, value, and implementation overhead bytes 16KiB (the default filesystem nodesize value) - - does not require OS level integration -- built in trash - - trashed files are moved to `/path/to/data//files_trashbin/` - - trashed files are appended a timestamp `.d`, which [breaks trashing of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) -- built in versions - - file versions are stored in `/path/to/data//files_versions/` - - file versions are appended a timestamp `.d`, which [breaks versioning of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) +- tree provided by a POSIX filesystem + - file layout is mapped to the old ownCloud 10 layout + - the root of tree for a user on disk is prefixed with `/path/to/data//files/` + - efficient path by id lookup + - all files and folders get assigned a uuid in the extended attributes + - when starting the storage provider it will walk all files to populate a redis kv store for uuid to path lookup + - slow to boot trees with lots of nodes + - build in ETag propagation + - ETags are calculated based on mtime + - mtime is propagated by the storage driver + - changes bypassing ocis are not picked up until a restart of the storage provider + - no subtree accounting, same options as for local storage + - efficient rename + - TODO [update the kv store for path lookup](https://github.com/cs3org/reva/issues/985), this is an O(n) operation + - arbitrary metadata using extended attributes +- grant persistence + - using custom ACLs that are stored as extended attributes + - a grant corresponds to one extended attribute of 40-100 bytes, effectively limiting the number of shares to ~100-40 + - extended attributes have varying limitations, based on the underlying filesystem + - the linux kernel imposes a limit of 255bytes per name and 64KiB per value + - ext2/3/4: total bytes for all attributes of a file is limited to 4KiB (a filesystem block) + - xfs: limit of 64KiB per value + - btrfs: total bytes used for the name, value, and implementation overhead bytes 16KiB (the default filesystem nodesize value) + - does not require OS level integration +- built in trash + - trashed files are moved to `/path/to/data//files_trashbin/` + - trashed files are appended a timestamp `.d`, which [breaks trashing of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) +- built in versions + - file versions are stored in `/path/to/data//files_versions/` + - file versions are appended a timestamp `.d`, which [breaks versioning of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) ### EOS Storage Driver -The CERN eos storage has evolved with ownCloud and natively supports id based lookup, ETag propagation, subtree size accounting, sharing, trash and versions. To use it you need to change the default configuration of the `ocis-reva storage-home` command (or have a look at the Makefile ̀ eos-start\` target): +The CERN eos storage has evolved with ownCloud and natively supports id based lookup, ETag propagation, subtree size accounting, sharing, trash and versions. To use it you need to change the default configuration of the `ocis-reva storage-home` command (or have a look at the Makefile ̀ eos-start` target): - export REVA_STORAGE_HOME_DRIVER=eos - export REVA_STORAGE_EOS_NAMESPACE=/eos - export REVA_STORAGE_EOS_MASTER_URL="root://eos-mgm1.eoscluster.cern.ch:1094" - export REVA_STORAGE_EOS_ENABLE_HOME=true - export REVA_STORAGE_EOS_LAYOUT="dockertest/{{.Username}}" +``` +export REVA_STORAGE_HOME_DRIVER=eos +export REVA_STORAGE_EOS_NAMESPACE=/eos +export REVA_STORAGE_EOS_MASTER_URL="root://eos-mgm1.eoscluster.cern.ch:1094" +export REVA_STORAGE_EOS_ENABLE_HOME=true +export REVA_STORAGE_EOS_LAYOUT="dockertest/{{.Username}}" +``` Running it locally also requires the `eos` and `xrootd` binaries. Running it using `make eos-start` will use CentOS based containers that already have the necessary packages installed. -{{< hint info >}} +{{< hint info >}} Pull requests to add explicit `reva storage-(s3|custom|...)` commands with working defaults are welcome. -{{< /hint >}} +{{< /hint >}} ### S3 Storage Driver @@ -185,20 +177,18 @@ A naive driver that treats the keys in an S3 capable storage as `/` delimited pa ## Data Providers -Clients using the CS3 API use an [InitiateFileDownload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileDownloadRequest) and ]InitiateUpload]() request at the [reva gateway](https://cs3org.github.io/cs3apis/#cs3.gateway.v1beta1.GatewayAPI) to obtain a URL endpoint that can be used to either GET the file content or upload content using the resumable [tus.io](https://tus.io) protocol. +Clients using the CS3 API use an [InitiateFileDownload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileDownloadRequest) and ]InitiateUpload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileUploadRequest) request at the [reva gateway](https://cs3org.github.io/cs3apis/#cs3.gateway.v1beta1.GatewayAPI) to obtain a URL endpoint that can be used to either GET the file content or upload content using the resumable [tus.io](https://tus.io) protocol. -The _data provider_ uses the same _storage driver_ as the _storage provider_ but can be scaled independently. +The *data provider* uses the same *storage driver* as the *storage provider* but can be scaled independently. The dataprovider allows uploading the file to a quarantine area where further data analysis may happen before making the file accessible again. One use case for this is anti virus scanning for files coming from untrusted sources. ## Future work ### FUSE overlay filesystem - We are planning to further separate the concerns and use a local storage provider with a FUSE filesystem overlaying the actual POSIX storage that can be used to capture deletes and writes that might happen outside of ocis/reva. It would allow us to extend the local storage driver with missing storage aspects while keeping a tree like filesystem that end users are used to see when sshing into the machine. ### Upload to Quarantine area - Antivirus scanning of random files uploaded from untrusted sources and executing metadata extraction or thumbnail generation should happen in a sandboxed system to prevent malicious users from gaining any information about the system. By spawning a new container with access to only the uploaded data we can further limit the attack surface. diff --git a/docs/extensions/ocis-reva/testing.md b/docs/extensions/ocis-reva/testing.md index 849ea927c..2c03fd2a1 100644 --- a/docs/extensions/ocis-reva/testing.md +++ b/docs/extensions/ocis-reva/testing.md @@ -1,12 +1,12 @@ -* * * - +--- title: "Testing" date: 2018-05-02T00:00:00+00:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: testing.md +--- -## geekdocFilePath: testing.md ## API Acceptance tests @@ -15,22 +15,24 @@ We are using the ownCloud 10 API acceptance testsuite against ocis. To set this ### Getting the tests All you need to do to get the acceptance tests is check out the core repo: - - git clone https://github.com/owncloud/core.git +``` +git clone https://github.com/owncloud/core.git +``` ### Run a ldap server in a docker container The ownCloud 10 acceptance tests will need write permission. You can start a suitable ldap server in a docker container with: - docker run --hostname ldap.my-company.com \ - -e LDAP_TLS_VERIFY_CLIENT=never \ - -e LDAP_DOMAIN=owncloud.com \ - -e LDAP_ORGANISATION=ownCloud \ - -e LDAP_ADMIN_PASSWORD=admin \ - --name docker-slapd \ - -p 127.0.0.1:389:389 \ - -p 636:636 -d osixia/openldap - +``` +docker run --hostname ldap.my-company.com \ + -e LDAP_TLS_VERIFY_CLIENT=never \ + -e LDAP_DOMAIN=owncloud.com \ + -e LDAP_ORGANISATION=ownCloud \ + -e LDAP_ADMIN_PASSWORD=admin \ + --name docker-slapd \ + -p 127.0.0.1:389:389 \ + -p 636:636 -d osixia/openldap +``` ### Run a redis server in a docker container File versions need a redis server. Start one with docker by using: @@ -41,45 +43,50 @@ File versions need a redis server. Start one with docker by using: `ocis-reva` provides multiple subcommands. To configure them all via env vars you can export these environment variables. - export REVA_USERS_DRIVER=ldap - export REVA_LDAP_HOSTNAME=localhost - export REVA_LDAP_PORT=636 - export REVA_LDAP_BASE_DN='dc=owncloud,dc=com' - export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' - export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' - export REVA_LDAP_BIND_DN='cn=admin,dc=owncloud,dc=com' - export REVA_LDAP_BIND_PASSWORD=admin - export REVA_LDAP_SCHEMA_UID=uid - export REVA_LDAP_SCHEMA_MAIL=mail - export REVA_LDAP_SCHEMA_DISPLAYNAME=displayName - export REVA_LDAP_SCHEMA_CN=cn - export REVA_FRONTEND_URL=http://localhost:9140 # needed because the proxy is not started - export REVA_DATAGATEWAY_URL=http://localhost:9140/data # needed because the proxy is not started +``` +export REVA_USERS_DRIVER=ldap +export REVA_LDAP_HOSTNAME=localhost +export REVA_LDAP_PORT=636 +export REVA_LDAP_BASE_DN='dc=owncloud,dc=com' +export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' +export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' +export REVA_LDAP_BIND_DN='cn=admin,dc=owncloud,dc=com' +export REVA_LDAP_BIND_PASSWORD=admin +export REVA_LDAP_SCHEMA_UID=uid +export REVA_LDAP_SCHEMA_MAIL=mail +export REVA_LDAP_SCHEMA_DISPLAYNAME=displayName +export REVA_LDAP_SCHEMA_CN=cn +export REVA_FRONTEND_URL=http://localhost:9140 # needed because the proxy is not started +export REVA_DATAGATEWAY_URL=http://localhost:9140/data # needed because the proxy is not started +``` Then you need to start the ocis-reva services - - bin/ocis-reva frontend & \ - bin/ocis-reva gateway & \ - bin/ocis-reva auth-basic & \ - bin/ocis-reva auth-bearer & \ - bin/ocis-reva sharing & \ - bin/ocis-reva storage-home & \ - bin/ocis-reva storage-home-data & \ - bin/ocis-reva storage-oc & \ - bin/ocis-reva storage-oc-data & \ - bin/ocis-reva users & +``` +bin/ocis-reva frontend & \ +bin/ocis-reva gateway & \ +bin/ocis-reva auth-basic & \ +bin/ocis-reva auth-bearer & \ +bin/ocis-reva sharing & \ +bin/ocis-reva storage-home & \ +bin/ocis-reva storage-home-data & \ +bin/ocis-reva storage-oc & \ +bin/ocis-reva storage-oc-data & \ +bin/ocis-reva users & +``` ### Run the API acceptance tests In the ownCloud 10 core repo run - make test-acceptance-api \ - TEST_SERVER_URL=http://localhost:9140 \ - TEST_EXTERNAL_USER_BACKENDS=true \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS&&~@preview-extension-required' \ - SKELETON_DIR=apps/testing/data/apiSkeleton +``` +make test-acceptance-api \ +TEST_SERVER_URL=http://localhost:9140 \ +TEST_EXTERNAL_USER_BACKENDS=true \ +TEST_OCIS=true \ +OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ +BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS&&~@preview-extension-required' \ +SKELETON_DIR=apps/testing/data/apiSkeleton +``` Make sure to adjust the settings `TEST_SERVER_URL`,`OCIS_REVA_DATA_ROOT` and `SKELETON_DIR` according to your environment. @@ -116,32 +123,26 @@ If you want to work on a specific issue 2. locally run each of the tests marked with that issue in the expected failures file: E.g.: - - make test-acceptance-api \ - TEST_SERVER_URL=http://localhost:9140 \ - TEST_EXTERNAL_USER_BACKENDS=true \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` + make test-acceptance-api \ + TEST_SERVER_URL=http://localhost:9140 \ + TEST_EXTERNAL_USER_BACKENDS=true \ + TEST_OCIS=true \ + OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ + BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` 3. the tests will fail, try to understand how and why they are failing - 4. fix the code - 5. go back to 2. and repeat till the tests are passing. - 6. remove those tests from the expected failures file. - 7. run each of the local tests that were demonstrating the **buggy** behavior. They should fail. - 8. delete each of the local tests that were demonstrating the **buggy** behavior. - 9. make a PR that has the fixed code, relevant lines removed from the expected failures file and bug demonstration tests deleted. If the changes also affect the `ocis` repository make sure the changes get ported over there. That will need the fixed code in `ocis-reva` to be applied to `ocis` along with the test-related changes. ### Notes - -- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. This can be done by simply running `docker stop docker-slapd && docker rm docker-slapd` and [restarting the LDAP server container](#run-a-ldap-server-in-a-docker-container) -- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. +- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. This can be done by simply running `docker stop docker-slapd && docker rm docker-slapd` and [restarting the LDAP server container](#run-a-ldap-server-in-a-docker-container) +- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. diff --git a/docs/extensions/ocis-reva/updating.md b/docs/extensions/ocis-reva/updating.md index 03d0d0836..569c646f3 100644 --- a/docs/extensions/ocis-reva/updating.md +++ b/docs/extensions/ocis-reva/updating.md @@ -1,19 +1,19 @@ -* * * - +--- title: "Updating reva" date: 2020-05-22T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: updating.md +--- -## geekdocFilePath: updating.md - -{{< toc >}} +{{< toc >}} ## Updating reva -1. Run `go get github.com/cs3org/reva@master` -2. Create a changelog entry containing changes that were done in [reva](https://github.com/cs3org/reva/commits/master) -3. Create a Pull Request to ocis-reva master with those changes -4. If test issues appear, you might need to [adjust the tests]\({{< ref "testing.md" >}}) -5. After the PR is merged, consider doing a [release of ocis-reva]\({{< ref "releasing.md" >}}) +1. Run `go get github.com/cs3org/reva@master` +2. Create a changelog entry containing changes that were done in [reva](https://github.com/cs3org/reva/commits/master) +3. Create a Pull Request to ocis-reva master with those changes +4. If test issues appear, you might need to [adjust the tests]({{< ref "testing.md" >}}) +5. After the PR is merged, consider doing a [release of ocis-reva]({{< ref "releasing.md" >}}) + diff --git a/docs/extensions/ocis-reva/users.md b/docs/extensions/ocis-reva/users.md index b339e75df..475c21290 100644 --- a/docs/extensions/ocis-reva/users.md +++ b/docs/extensions/ocis-reva/users.md @@ -1,31 +1,32 @@ -* * * - +--- title: "Users" date: 2020-01-16T00:00:00+00:00 weight: 35 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: users.md +geekdocFilePath: users.md +--- ### Demo driver This is a simple user driver for testing. It contains three users: - - einstein:relativity - marie:radioactivty - richard:superfluidity - +``` +einstein:relativity +marie:radioactivty +richard:superfluidity +``` In order to use the `demo` driver you need to export the relevant environment variable: - - export REVA_USERS_DRIVER=demo +``` +export REVA_USERS_DRIVER=demo +``` ### JSON driver In order to switch from the `ldap` driver to JSON based users you need to export the relevant environment variables: - - export REVA_USERS_DRIVER=json - export REVA_USERS_JSON=/path/to/users.json +``` +export REVA_USERS_DRIVER=json +export REVA_USERS_JSON=/path/to/users.json +``` For the format of the users.json have a look at the [reva examples](https://github.com/cs3org/reva/blob/master/examples/separate/users.demo.json) @@ -34,17 +35,18 @@ For the format of the users.json have a look at the [reva examples](https://gith This is the default user driver. If the below defaults don't match your environment change them accordingly: - - export REVA_LDAP_HOSTNAME=localhost - export REVA_LDAP_PORT=9126 - export REVA_LDAP_BASE_DN='dc=example,dc=org' - export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' - export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' - export REVA_LDAP_BIND_DN='cn=reva,ou=sysusers,dc=example,dc=org' - export REVA_LDAP_BIND_PASSWORD=reva - export REVA_LDAP_SCHEMA_UID=uid - export REVA_LDAP_SCHEMA_MAIL=mail - export REVA_LDAP_SCHEMA_DISPLAYNAME=sn - export REVA_LDAP_SCHEMA_CN=cn +``` +export REVA_LDAP_HOSTNAME=localhost +export REVA_LDAP_PORT=9126 +export REVA_LDAP_BASE_DN='dc=example,dc=org' +export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' +export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' +export REVA_LDAP_BIND_DN='cn=reva,ou=sysusers,dc=example,dc=org' +export REVA_LDAP_BIND_PASSWORD=reva +export REVA_LDAP_SCHEMA_UID=uid +export REVA_LDAP_SCHEMA_MAIL=mail +export REVA_LDAP_SCHEMA_DISPLAYNAME=sn +export REVA_LDAP_SCHEMA_CN=cn +``` Then restart the `bin/ocis-reva users` and `bin/ocis-reva auth-basic` services for the changes to take effect. diff --git a/docs/extensions/ocs/_index.md b/docs/extensions/ocs/_index.md index eb4a57168..4f0c15126 100644 --- a/docs/extensions/ocs/_index.md +++ b/docs/extensions/ocs/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Ocs" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides the OCS API which is required by some ownCloud clients. diff --git a/docs/extensions/ocs/building.md b/docs/extensions/ocs/building.md index ca2b931d9..e01237a50 100644 --- a/docs/extensions/ocs/building.md +++ b/docs/extensions/ocs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-ocs.git cd ocis-ocs -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-ocs -h` to see all available options. diff --git a/docs/extensions/ocs/getting-started.md b/docs/extensions/ocs/getting-started.md index c64e8d736..a082d53da 100644 --- a/docs/extensions/ocs/getting-started.md +++ b/docs/extensions/ocs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-ocs are hosted on . +Docker images for ocis-ocs are hosted on https://hub.docker.com/r/owncloud/ocis-ocs. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-ocs ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocs/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocs/testing/ ```console curl https://download.owncloud.com/ocis/ocis-ocs/1.0.0-beta1/ocis-ocs-1.0.0-beta1-darwin-amd64 --output ocis-ocs @@ -42,17 +41,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-ocs server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-ocs health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/ocs/license.md b/docs/extensions/ocs/license.md index ca0c6bfaf..ff55edfc6 100644 --- a/docs/extensions/ocs/license.md +++ b/docs/extensions/ocs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocs/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/proxy/_index.md b/docs/extensions/proxy/_index.md index c97f5762b..5ad1d7b5f 100644 --- a/docs/extensions/proxy/_index.md +++ b/docs/extensions/proxy/_index.md @@ -1,9 +1,8 @@ -* * * - +--- title: Proxy -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides a basic proxy in front of the public ocis services. diff --git a/docs/extensions/proxy/about.md b/docs/extensions/proxy/about.md index a3c76526c..2707afefe 100644 --- a/docs/extensions/proxy/about.md +++ b/docs/extensions/proxy/about.md @@ -1,11 +1,10 @@ -* * * - +--- title: "About" date: 2020-02-07T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs - -## geekdocFilePath: about.md +geekdocFilePath: about.md +--- This service provides an proxy service that routes requests to the correct services. diff --git a/docs/extensions/proxy/building.md b/docs/extensions/proxy/building.md index 464c3ec04..8007e8996 100644 --- a/docs/extensions/proxy/building.md +++ b/docs/extensions/proxy/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-proxy.git cd ocis-proxy -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-proxy -h` to see all available options and subcommands. diff --git a/docs/extensions/proxy/configuration.md b/docs/extensions/proxy/configuration.md index b808ff2e2..75e1fe63b 100644 --- a/docs/extensions/proxy/configuration.md +++ b/docs/extensions/proxy/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:51+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ proxy for Reva/oCIS Usage: `ocis-proxy [global options] command [command options] [arguments...]` -\--config-file | $PROXY_CONFIG_FILE +--config-file | $PROXY_CONFIG_FILE : Path to config file. -\--log-level | $PROXY_LOG_LEVEL +--log-level | $PROXY_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $PROXY_LOG_PRETTY +--log-pretty | $PROXY_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $PROXY_LOG_COLOR +--log-color | $PROXY_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis-proxy health [command options] [arguments...]` -\--debug-addr | $PROXY_DEBUG_ADDR +--debug-addr | $PROXY_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9109`. ### ocis-proxy server @@ -73,62 +72,63 @@ Start integrated server Usage: `ocis-proxy server [command options] [arguments...]` -\--tracing-enabled | $PROXY_TRACING_ENABLED +--tracing-enabled | $PROXY_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $PROXY_TRACING_TYPE +--tracing-type | $PROXY_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $PROXY_TRACING_ENDPOINT +--tracing-endpoint | $PROXY_TRACING_ENDPOINT : Endpoint for the agent. -\--tracing-collector | $PROXY_TRACING_COLLECTOR +--tracing-collector | $PROXY_TRACING_COLLECTOR : Endpoint for the collector. Default: `http://localhost:14268/api/traces`. -\--tracing-service | $PROXY_TRACING_SERVICE +--tracing-service | $PROXY_TRACING_SERVICE : Service name for tracing. Default: `proxy`. -\--debug-addr | $PROXY_DEBUG_ADDR +--debug-addr | $PROXY_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9205`. -\--debug-token | $PROXY_DEBUG_TOKEN +--debug-token | $PROXY_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $PROXY_DEBUG_PPROF +--debug-pprof | $PROXY_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $PROXY_DEBUG_ZPAGES +--debug-zpages | $PROXY_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $PROXY_HTTP_ADDR +--http-addr | $PROXY_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9200`. -\--http-root | $PROXY_HTTP_ROOT +--http-root | $PROXY_HTTP_ROOT : Root path of http server. Default: `/`. -\--asset-path | $PROXY_ASSET_PATH +--asset-path | $PROXY_ASSET_PATH : Path to custom assets. -\--http-namespace | $PROXY_HTTP_NAMESPACE +--http-namespace | $PROXY_HTTP_NAMESPACE : Set the base namespace for the http namespace. Default: `com.owncloud`. -\--transport-tls-cert | $PROXY_TRANSPORT_TLS_CERT +--transport-tls-cert | $PROXY_TRANSPORT_TLS_CERT : Certificate file for transport encryption. -\--transport-tls-key | $PROXY_TRANSPORT_TLS_KEY +--transport-tls-key | $PROXY_TRANSPORT_TLS_KEY : Secret file for transport encryption. -\--tls | $PROXY_TLS +--tls | $PROXY_TLS : Use TLS (disable only if proxy is behind a TLS-terminating reverse-proxy).. Default: `true`. -\--jwt-secret | $PROXY_JWT_SECRET +--jwt-secret | $PROXY_JWT_SECRET : Used to create JWT to talk to reva, should equal reva's jwt-secret. Default: `Pive-Fumkiu4`. -\--reva-gateway-addr | $PROXY_REVA_GATEWAY_ADDR +--reva-gateway-addr | $PROXY_REVA_GATEWAY_ADDR : REVA Gateway Endpoint. Default: `127.0.0.1:9142`. -\--oidc-issuer | $PROXY_OIDC_ISSUER +--oidc-issuer | $PROXY_OIDC_ISSUER : OIDC issuer. Default: `https://localhost:9200`. -\--oidc-insecure | $PROXY_OIDC_INSECURE +--oidc-insecure | $PROXY_OIDC_INSECURE : OIDC allow insecure communication. Default: `true`. + diff --git a/docs/extensions/proxy/getting-started.md b/docs/extensions/proxy/getting-started.md index 5c64f9b5c..95f8a185a 100644 --- a/docs/extensions/proxy/getting-started.md +++ b/docs/extensions/proxy/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-proxy. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-proxy ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-proxy/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-proxy/testing/ ```console curl https://download.owncloud.com/ocis/ocis-proxy/1.0.0-beta1/ocis-proxy-1.0.0-beta1-darwin-amd64 --output ocis-proxy @@ -42,6 +41,6 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http server. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-proxy server --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/docs/extensions/settings/_index.md b/docs/extensions/settings/_index.md index b33ae6647..9e70356dd 100644 --- a/docs/extensions/settings/_index.md +++ b/docs/extensions/settings/_index.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Settings" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- ## Abstract @@ -18,7 +17,7 @@ For ease of use, this extension provides an ocis-web extension which allows user Please refer to the [ocis-web extension docs](https://owncloud.github.io/ocis/extensions/#external-phoenix-apps) for running ocis-web extensions. -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} graph TD subgraph ow[ocis-web] ows[ocis-web-settings] @@ -30,20 +29,18 @@ graph TD sdks ---|"yes"| os sdks ---|"no"| defaults[Use set of
default values] oa[oCIS extensions
e.g. ocis-accounts] ---|"saveSettingsBundle(bundle)"| os -{{< /mermaid >}} +{{< /mermaid >}} The diagram shows how the settings service integrates into oCIS: **Settings management:** - -- oCIS extensions can register _settings bundles_ with the ocis-settings service. -- The settings frontend can be plugged into ocis-web, showing forms for changing _settings values_ as a user. - The forms are generated from the registered _settings bundles_. +- oCIS extensions can register *settings bundles* with the ocis-settings service. +- The settings frontend can be plugged into ocis-web, showing forms for changing *settings values* as a user. +The forms are generated from the registered *settings bundles*. **Settings usage:** - -- Extensions can query ocis-settings for _settings values_ of a user. -- The ownCloud SDK, used as a data abstraction layer for ocis-web, will query ocis-settings for _settings values_ of a user, - if it's available. The SDK uses sensible defaults when ocis-settings is not part of the setup. +- Extensions can query ocis-settings for *settings values* of a user. +- The ownCloud SDK, used as a data abstraction layer for ocis-web, will query ocis-settings for *settings values* of a user, +if it's available. The SDK uses sensible defaults when ocis-settings is not part of the setup. For compatibility with ownCloud 10, a migration of ownCloud 10 settings into the storage of ocis-settings will be available. diff --git a/docs/extensions/settings/building.md b/docs/extensions/settings/building.md index aed08d4f1..055b2387c 100644 --- a/docs/extensions/settings/building.md +++ b/docs/extensions/settings/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-settings.git cd ocis-settings -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-settings -h` to see all available options. diff --git a/docs/extensions/settings/bundles.md b/docs/extensions/settings/bundles.md index 1d5121bd6..957c21478 100644 --- a/docs/extensions/settings/bundles.md +++ b/docs/extensions/settings/bundles.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Settings Bundles" date: 2020-05-04T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: bundles.md +geekdocFilePath: bundles.md +--- A **Settings Bundle** is a collection of settings, uniquely identified by the key of the extension registering the bundle and the key of the bundle itself. It's purpose is to let @@ -14,12 +13,11 @@ oCIS extensions define settings and make them available to users. They are dynam rendered into forms, available in the frontend. As of now we support five different types of settings: - -- boolean -- integer -- string -- single choice list of integers or strings -- multiple choice list of integers or strings +- boolean +- integer +- string +- single choice list of integers or strings +- multiple choice list of integers or strings Each **Setting** is uniquely identified by a key within the bundle. Some attributes depend on the chosen type of setting. Through the information provided with the diff --git a/docs/extensions/settings/getting-started.md b/docs/extensions/settings/getting-started.md index 70522ab2c..b76a71873 100644 --- a/docs/extensions/settings/getting-started.md +++ b/docs/extensions/settings/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 25 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `settings` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9194` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9190` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9194` ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-settings server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-settings health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/settings/glossary.md b/docs/extensions/settings/glossary.md index 01aee5638..ffc9d8616 100644 --- a/docs/extensions/settings/glossary.md +++ b/docs/extensions/settings/glossary.md @@ -1,43 +1,42 @@ -* * * - +--- title: "Glossary" date: 2020-05-04T12:35:00+01:00 weight: 80 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: glossary.md +geekdocFilePath: glossary.md +--- In the context of this extension and oCIS in general, we are using the following terminology. ### Configuration -- System configuration -- e.g. service host names and ports -- Changes need to be propagated to other services -- Typically modified on the CLI +- System configuration +- e.g. service host names and ports +- Changes need to be propagated to other services +- Typically modified on the CLI ### Settings -- Application level settings -- e.g. default language -- Can be modified at runtime without restarting the service -- Typically modified in the UI +- Application level settings +- e.g. default language +- Can be modified at runtime without restarting the service +- Typically modified in the UI ### Preferences -- User settings -- Subset of "Settings" -- e.g. preferred language of a user +- User settings +- Subset of "Settings" +- e.g. preferred language of a user ### Settings Bundle -- Collection of related settings -- Registered by an ocis extension +- Collection of related settings +- Registered by an ocis extension ### Settings Value -- Manifestation of a setting for a specific user -- E.g. used for customization (at runtime) in `ocis-web` -- `ocis-web-settings` extension for modifying settings values is provided by this service -- Can be queried and modified by other ocis extensions +- Manifestation of a setting for a specific user +- E.g. used for customization (at runtime) in `ocis-web` +- `ocis-web-settings` extension for modifying settings values is provided by this service +- Can be queried and modified by other ocis extensions diff --git a/docs/extensions/settings/license.md b/docs/extensions/settings/license.md index a08ae7551..bce5bddc4 100644 --- a/docs/extensions/settings/license.md +++ b/docs/extensions/settings/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 90 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/settings/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/settings/values.md b/docs/extensions/settings/values.md index 6e2080728..9e03c681f 100644 --- a/docs/extensions/settings/values.md +++ b/docs/extensions/settings/values.md @@ -1,34 +1,32 @@ -* * * - +--- title: "Settings Values" date: 2020-05-04T00:00:00+00:00 weight: 51 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: values.md +geekdocFilePath: values.md +--- A **Settings Value** is the value an authenticated user has chosen for a specific setting, defined in a -_settings bundle_. For choosing settings values as a user the sole entry point is the ocis-web extension +*settings bundle*. For choosing settings values as a user the sole entry point is the ocis-web extension provided by this service. ## Identifying settings values -A _settings value_ is uniquely identified by four attributes. Three of them are coming from the definition of +A *settings value* is uniquely identified by four attributes. Three of them are coming from the definition of the setting within it's settings bundle (see [Settings Bundles](https://owncloud.github.io/extensions/ocis_settings/bundles/) for an example). The fourth identifies the user. +- extension: Key of the extension that registered the settings bundle, +- bundleKey: Key of the settings bundle, +- settingKey: Key of the setting as defined within the bundle, +- accountUuid: The UUID of the authenticated user who has saved the setting. -- extension: Key of the extension that registered the settings bundle, -- bundleKey: Key of the settings bundle, -- settingKey: Key of the setting as defined within the bundle, -- accountUuid: The UUID of the authenticated user who has saved the setting. - -{{< hint info >}} +{{< hint info >}} When requests are going through `ocis-proxy`, the accountUuid attribute can be set to the static keyword `me` instead of using a real UUID. `ocis-proxy` will take care of minting the UUID of the authenticated user into a JWT, providing it in the HTTP header as `x-access-token`. That UUID is then used in this service, to replace `me` with the actual UUID of the authenticated user. -{{< /hint >}} +{{< /hint >}} ## Example of stored settings values @@ -70,9 +68,8 @@ a JWT, providing it in the HTTP header as `x-access-token`. That UUID is then us ``` ## gRPC endpoints - The obvious way of modifying settings is the ocis-web extension, as described earlier. However, services can -use the respective gRPC endpoints of the `ValueService` to query and modify _settings values_ as well. +use the respective gRPC endpoints of the `ValueService` to query and modify *settings values* as well. The gRPC endpoints require the same identifier attributes as described above, so for making a request to the `ValueService` you will have to make sure that the accountUuid of the authenticated user is available in your service at the time of the request. diff --git a/docs/extensions/store/_index.md b/docs/extensions/store/_index.md index ca20ae336..3eec45a1d 100644 --- a/docs/extensions/store/_index.md +++ b/docs/extensions/store/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Store" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides ... diff --git a/docs/extensions/store/building.md b/docs/extensions/store/building.md index eb0979871..c8f2de2c0 100644 --- a/docs/extensions/store/building.md +++ b/docs/extensions/store/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-store.git cd ocis-store -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-store -h` to see all available options. diff --git a/docs/extensions/store/getting-started.md b/docs/extensions/store/getting-started.md index 5174c8805..e9724f7f3 100644 --- a/docs/extensions/store/getting-started.md +++ b/docs/extensions/store/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `store` -\--debug-addr +--debug-addr : Address to bind debug server -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9461` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-store server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-store health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/store/license.md b/docs/extensions/store/license.md index 3b44dddcb..a551d61f2 100644 --- a/docs/extensions/store/license.md +++ b/docs/extensions/store/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/store/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/thumbnails/_index.md b/docs/extensions/thumbnails/_index.md index 5bf69febe..1007ebc39 100644 --- a/docs/extensions/thumbnails/_index.md +++ b/docs/extensions/thumbnails/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Thumbnails" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an ocis extensions which generates thumbnails for image files. diff --git a/docs/extensions/thumbnails/building.md b/docs/extensions/thumbnails/building.md index 20b7f616e..4c0c3dac0 100644 --- a/docs/extensions/thumbnails/building.md +++ b/docs/extensions/thumbnails/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-thubnails.git cd {{ Name }} -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `Gopath`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-thumbnails -h` to see all available options. diff --git a/docs/extensions/thumbnails/getting-started.md b/docs/extensions/thumbnails/getting-started.md index bac3bf90f..2bcbd07e4 100644 --- a/docs/extensions/thumbnails/getting-started.md +++ b/docs/extensions/thumbnails/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -89,7 +88,7 @@ THUMBNAILS_WEBDAVSOURCE_BASEURL : Base url for a webdav api, defaults to `https://localhost:9200/remote.php/webdav/` THUMBNAILS_RESOLUTIONS -: List of resolutions supported by the service, defaults to \`["16x16", "32x32", "64x64", "128x128"] +: List of resolutions supported by the service, defaults to `["16x16", "32x32", "64x64", "128x128"] #### Health @@ -102,68 +101,68 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `thumbnails` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9189` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--grpc-name +--grpc-name : Name of the service, defaults to `thumbnails` -\--grpc-addr +--grpc-addr : Address to bind grpc server, defaults to `0.0.0.0:9185` -\--grpc-namespace +--grpc-namespace : Set the base namespace for the grpc namespace", defaults to `com.owncloud.api` -\--filesystemstorage-root +--filesystemstorage-root : Root path of the filesystem storage directory, defaults to `/ocis-thumbnails/` -\--webdavsource-baseurl +--webdavsource-baseurl : Base url for a webdav api, defaults to `https://localhost:9200/remote.php/webdav/` -\--thumbnail-resolution -: List of resolutions supported by the service, defaults to \`["16x16", "32x32", "64x64", "128x128"] +--thumbnail-resolution +: List of resolutions supported by the service, defaults to `["16x16", "32x32", "64x64", "128x128"] #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9189` ### Configuration file @@ -178,17 +177,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} {{ Name }} server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} {{ Name }} health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/docs/extensions/thumbnails/grpc.md b/docs/extensions/thumbnails/grpc.md index b5490db5b..27d9c2376 100644 --- a/docs/extensions/thumbnails/grpc.md +++ b/docs/extensions/thumbnails/grpc.md @@ -1,14 +1,13 @@ -* * * - +--- title: "GRPC API" date: 2018-05-02T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: grpc.md +--- -## geekdocFilePath: grpc.md - -{{< toc >}} +{{< toc >}} ## pkg/proto/v0/thumbnails.proto @@ -16,57 +15,57 @@ geekdocEditPath: edit/master/docs A request to retrieve a thumbnail -| Field | Type | Label | Description | -| ------------- | ------------------------------------------ | ----- | ------------------------------------------------------ | -| filepath | [string](#string) | | The path to the source image | -| filetype | [GetRequest.FileType](#getrequestfiletype) | | The type to which the thumbnail should get encoded to. | -| etag | [string](#string) | | The etag of the source image | -| width | [int32](#int32) | | The width of the thumbnail | -| height | [int32](#int32) | | The height of the thumbnail | -| authorization | [string](#string) | | The authorization token | +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| filepath | [string](#string) | | The path to the source image | +| filetype | [GetRequest.FileType](#getrequestfiletype) | | The type to which the thumbnail should get encoded to. | +| etag | [string](#string) | | The etag of the source image | +| width | [int32](#int32) | | The width of the thumbnail | +| height | [int32](#int32) | | The height of the thumbnail | +| authorization | [string](#string) | | The authorization token | ### GetResponse The service response -| Field | Type | Label | Description | -| --------- | ----------------- | ----- | ----------------------------- | -| thumbnail | [bytes](#bytes) | | The thumbnail as a binary | -| mimetype | [string](#string) | | The mimetype of the thumbnail | +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| thumbnail | [bytes](#bytes) | | The thumbnail as a binary | +| mimetype | [string](#string) | | The mimetype of the thumbnail | ### GetRequest.FileType The file types to which the thumbnail cna get encoded to. -| Name | Number | Description | -| ---- | ------ | ------------------- | -| PNG | 0 | Represents PNG type | -| JPG | 1 | Represents JPG type | +| Name | Number | Description | +| ---- | ------ | ----------- | +| PNG | 0 | Represents PNG type | +| JPG | 1 | Represents JPG type | ### ThumbnailService A Service for handling thumbnail generation -| Method Name | Request Type | Response Type | Description | -| ------------ | ------------------------- | --------------------------- | --------------------------------------- | +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| | GetThumbnail | [GetRequest](#getrequest) | [GetResponse](#getresponse) | Generates the thumbnail and returns it. | ## Scalar Value Types -| .proto Type | Notes | C++ | Java | -| ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ---------- | -| {{< div id="double" content="double" >}} | | double | double | -| {{< div id="float" content="float" >}} | | float | float | -| {{< div id="int32" content="int32" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | -| {{< div id="int64" content="int64" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | -| {{< div id="uint32" content="uint32" >}} | Uses variable-length encoding. | uint32 | int | -| {{< div id="uint64" content="uint64" >}} | Uses variable-length encoding. | uint64 | long | -| {{< div id="sint32" content="sint32" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | -| {{< div id="sint64" content="sint64" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | -| {{< div id="fixed32" content="fixed32" >}} | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | -| {{< div id="fixed64" content="fixed64" >}} | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | -| {{< div id="sfixed32" content="sfixed32" >}} | Always four bytes. | int32 | int | -| {{< div id="sfixed64" content="sfixed64" >}} | Always eight bytes. | int64 | long | -| {{< div id="bool" content="bool" >}} | | bool | boolean | -| {{< div id="string" content="string" >}} | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | -| {{< div id="bytes" content="bytes" >}} | May contain any arbitrary sequence of bytes. | string | ByteString | +| .proto Type | Notes | C++ | Java | +| ----------- | ----- | --- | ---- | +| {{< div id="double" content="double" >}} | | double | double | +| {{< div id="float" content="float" >}} | | float | float | +| {{< div id="int32" content="int32" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | +| {{< div id="int64" content="int64" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | +| {{< div id="uint32" content="uint32" >}} | Uses variable-length encoding. | uint32 | int | +| {{< div id="uint64" content="uint64" >}} | Uses variable-length encoding. | uint64 | long | +| {{< div id="sint32" content="sint32" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | +| {{< div id="sint64" content="sint64" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | +| {{< div id="fixed32" content="fixed32" >}} | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | +| {{< div id="fixed64" content="fixed64" >}} | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | +| {{< div id="sfixed32" content="sfixed32" >}} | Always four bytes. | int32 | int | +| {{< div id="sfixed64" content="sfixed64" >}} | Always eight bytes. | int64 | long | +| {{< div id="bool" content="bool" >}} | | bool | boolean | +| {{< div id="string" content="string" >}} | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | +| {{< div id="bytes" content="bytes" >}} | May contain any arbitrary sequence of bytes. | string | ByteString | diff --git a/docs/extensions/thumbnails/license.md b/docs/extensions/thumbnails/license.md index 142bbe412..69cda13be 100644 --- a/docs/extensions/thumbnails/license.md +++ b/docs/extensions/thumbnails/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 60 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/thumbnails/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/extensions/thumbnails/releasing.md b/docs/extensions/thumbnails/releasing.md index e6a386363..b3bc0c19a 100644 --- a/docs/extensions/thumbnails/releasing.md +++ b/docs/extensions/thumbnails/releasing.md @@ -1,46 +1,45 @@ -* * * - +--- title: "Releasing" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} To release a new version of ocis-thumbnails, you have to follow a few simple steps. ## Preperation -1. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. -2. Checkout the preparation branch. -3. Create a new changelog folder and move the unreleased snippets there. - {{< highlight txt >}} - mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date - mv changelog/unreleased/\* changelog/x.x.x_yyyy-MM-dd/ - {{< / highlight >}} -4. Commit and push the changes - {{< highlight txt >}} - git add --all - git commit -m "prepare release x.x.x" - git push - {{< / highlight >}} -5. Create a pull request to the master branch. +1. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. +2. Checkout the preparation branch. +3. Create a new changelog folder and move the unreleased snippets there. +{{< highlight txt >}} +mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date +mv changelog/unreleased/* changelog/x.x.x_yyyy-MM-dd/ +{{< / highlight >}} +4. Commit and push the changes +{{< highlight txt >}} +git add --all +git commit -m "prepare release x.x.x" +git push +{{< / highlight >}} +5. Create a pull request to the master branch. ## Release +1. After the preparation branch has been merged update your local master. +{{< highlight txt >}} +git checkout master +git pull +{{< / highlight >}} +2. Create a new tag (preferably signed). +{{< highlight txt >}} +git tag -s vx.x.x -m "release vx.x.x" +git push --tags +{{< / highlight >}} +3. Wait for CI and check that the GitHub release was published. -1. After the preparation branch has been merged update your local master. - {{< highlight txt >}} - git checkout master - git pull - {{< / highlight >}} -2. Create a new tag (preferably signed). - {{< highlight txt >}} - git tag -s vx.x.x -m "release vx.x.x" - git push --tags - {{< / highlight >}} -3. Wait for CI and check that the GitHub release was published. Congratulations, you just released ocis-thumbnails! diff --git a/docs/extensions/webdav/archetypes/default.md b/docs/extensions/webdav/archetypes/default.md index 4826d2892..4e777bee1 100644 --- a/docs/extensions/webdav/archetypes/default.md +++ b/docs/extensions/webdav/archetypes/default.md @@ -1,7 +1,6 @@ -* * * - +--- title: "{{ replace .TranslationBaseName "-" " " | title }}" date: {{ .Date }} anchor: "{{ replace .TranslationBaseName "-" " " | title | urlize }}" - -## weight: +weight: +--- diff --git a/docs/extensions/webdav/content/about.md b/docs/extensions/webdav/content/about.md index fdcadfc47..da72010f0 100644 --- a/docs/extensions/webdav/content/about.md +++ b/docs/extensions/webdav/content/about.md @@ -1,9 +1,8 @@ -* * * - +--- title: "About" date: 2018-05-02T00:00:00+00:00 anchor: "about" - -## weight: 10 +weight: 10 +--- This service provides the WebDAV API which is required by some ownCloud clients. diff --git a/docs/extensions/webdav/content/building.md b/docs/extensions/webdav/content/building.md index c377f85a0..98c0b31c8 100644 --- a/docs/extensions/webdav/content/building.md +++ b/docs/extensions/webdav/content/building.md @@ -1,25 +1,24 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 anchor: "building" - -## weight: 30 +weight: 30 +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-webdav.git cd ocis-webdav -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ### Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-webdav -h` to see all available options. diff --git a/docs/extensions/webdav/content/getting-started.md b/docs/extensions/webdav/content/getting-started.md index 1aa17df41..ba330a6ee 100644 --- a/docs/extensions/webdav/content/getting-started.md +++ b/docs/extensions/webdav/content/getting-started.md @@ -1,10 +1,9 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 anchor: "getting-started" - -## weight: 20 +weight: 20 +--- ### Installation @@ -86,59 +85,59 @@ If you prefer to configure the service with commandline flags you can see the av ##### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` ##### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `webdav` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9119` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9115` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` ##### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9119` #### Configuration file @@ -153,17 +152,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-webdav server --help -{{< / highlight >}} +{{< / highlight >}} #### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-webdav health --help -{{< / highlight >}} +{{< / highlight >}} ### Metrics diff --git a/docs/extensions/webdav/content/license.md b/docs/extensions/webdav/content/license.md index 0e16b2c04..e6bd9a08e 100644 --- a/docs/extensions/webdav/content/license.md +++ b/docs/extensions/webdav/content/license.md @@ -1,9 +1,8 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 anchor: "license" - -## weight: 40 +weight: 40 +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/webdav/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/ocis/_index.md b/docs/ocis/_index.md index 5da02067b..bafdc6e27 100644 --- a/docs/ocis/_index.md +++ b/docs/ocis/_index.md @@ -1,16 +1,15 @@ -* * * - +--- title: "Infinite Scale" date: 2020-02-27T20:35:00+01:00 weight: -10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This tool provides a single entrypoint for the whole ownCloud Infinite Scale stack. -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} graph TD ocis-proxy --> ocis-konnectd & ocis-phoenix & ocis-thumbnails & ocis-ocs & ocis-webdav @@ -19,12 +18,13 @@ ocis-phoenix --> ocis-reva-fronted ocis-reva-fronted --> ocis-reva-gateway ocis-konnectd --> ocis-glauth + ocis-reva-gateway --> ocis-reva-users ocis-reva-gateway --> ocis-reva-authbasic ocis-reva-gateway --> ocis-reva-auth-bearer ocis-reva-gateway --> ocis-reva-sharing -ocis-reva-gateway --> ocis-reva-storage-home-_ -ocis-reva-storage-home-_ --> ocis-reva-storage-home-\*-data +ocis-reva-gateway --> ocis-reva-storage-home-* +ocis-reva-storage-home-* --> ocis-reva-storage-home-*-data ocis-reva-sharing --> redis -{{< /mermaid >}} +{{< /mermaid >}} diff --git a/docs/ocis/basic-remote-setup.md b/docs/ocis/basic-remote-setup.md index e52b54345..c59e1bd89 100644 --- a/docs/ocis/basic-remote-setup.md +++ b/docs/ocis/basic-remote-setup.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Basic Remote Setup" date: 2020-02-27T20:35:00+01:00 weight: 16 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: basic-remote-setup.md +--- -## geekdocFilePath: basic-remote-setup.md - -{{< toc >}} +{{< toc >}} Out of the box the ocis single binary and the `owncloud/ocis` docker image are configured to run on localhost for quick testing and development. @@ -18,16 +17,16 @@ If you need to access ocis on a VM or a remote machine e.g. when testing a mobil If you start the ocis fullstack for the first time with `./bin/ocis server` it will generate a file `identifier-registration.yml` in the config folder relative to its location. This file is used to configure the clients for the built-in Identity Provider. -{{< hint warning >}} -**Outdated version**\\ +{{< hint warning >}} +**Outdated version**\ The `identifier-registration.yml` file will only be generated if there is no such file in place. You could miss updates on this file. Run `make clean` to delete the file and keep the development environment tidy otherwise as well. -{{< /hint >}} +{{< /hint >}} ### Add your hostname to the idp config Let us assume `your-host` is your remote domain name or IP adress. Add your host to the `identifier-registration.yml` like this: -```yaml {linenos=table,hl_lines=\["15-17",21]} +```yaml {linenos=table,hl_lines=["15-17",21]} # OpenID Connect client registry. clients: - id: phoenix @@ -74,10 +73,10 @@ KONNECTD_TLS=0 \ For more configuration options check the configuration secion in [ocis](https://owncloud.github.io/ocis/configuration/) and every ocis extension. -{{< hint info >}} -**TLS Certificate**\\ +{{< hint info >}} +**TLS Certificate**\ In this example, we are replacing the default self signed cert with a CA signed one to avoid the certificate warning when accessing the login page. -{{< /hint >}} +{{< /hint >}} ## Use Docker Compose diff --git a/docs/ocis/bridge.md b/docs/ocis/bridge.md index bb404e3cc..d8e63dc7f 100644 --- a/docs/ocis/bridge.md +++ b/docs/ocis/bridge.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Bridge" date: 2020-02-27T20:35:00+01:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: bridge.md +--- -## geekdocFilePath: bridge.md - -{{< toc >}} +{{< toc >}} We are planning to build a bridge from ownCloud 10 to ocis. The idea is to have a reverse proxy infront of ownCloud 10 that will forward requests to ownCloud 10 or ocis-reva, depending on the migration status of the logged in user. @@ -23,17 +22,19 @@ Using ocis and the ownCloud 10 openidconnect and graphapi plugins it is possible ### Install the owncloud 10 graphapi app In an owncloud 10 apps folder - - $ git clone git@github.com:owncloud/graphapi.git - $ cd graphapi - $ composer install +``` +$ git clone git@github.com:owncloud/graphapi.git +$ cd graphapi +$ composer install +``` ### Enable the graphapi app - occ a:e graphapi +``` +occ a:e graphapi +``` No configuration necessary. You can test with `curl`: - ```console $ curl https://cloud.example.com/index.php/apps/graphapi/v1.0/users -u admin | jq Enter host password for user 'admin': @@ -68,17 +69,17 @@ We are going to use the above ownCloud 10 and graphapi app to turn it into the d #### Grab it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-glauth.git - $ cd ocis-glauth - $ make - +``` +$ git clone git@github.com:owncloud/ocis-glauth.git +$ cd ocis-glauth +$ make +``` This should give you a `bin/ocis-glauth` binary. Try listing the help with `bin/ocis-glauth --help`. + #### Run it! You need to point `ocis-glauth` to your owncloud domain: - ```console $ bin/ocis-glauth --log-level debug server --backend-datastore owncloud --backend-server https://cloud.example.com --backend-basedn dc=example,dc=com ``` @@ -91,13 +92,11 @@ $ bin/ocis-glauth --log-level debug server --backend-datastore owncloud --backen #### Check it is up and running You should now be able to list accounts from your ownCloud 10 oc_accounts table using: - ```console $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=example,dc=com" -W '(objectclass=posixaccount)' ``` Groups should work as well: - ```console $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=example,dc=com" -W '(objectclass=posixgroup)' ``` @@ -109,44 +108,41 @@ $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=ex #### Get it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-phoenix.git - $ cd ocis-phoenix - $ make - +``` +$ git clone git@github.com:owncloud/ocis-phoenix.git +$ cd ocis-phoenix +$ make +``` This should give you a `bin/ocis-phoenix` binary. Try listing the help with `bin/ocis-phoenix --help`. #### Run it! Point `ocis-phoenix` to your owncloud domain and tell it where to find the openid connect issuing authority: - ```console $ bin/ocis-phoenix server --web-config-server https://cloud.example.com --oidc-authority https://192.168.1.100:9130 --oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration --oidc-client-id ocis ``` `ocis-phoenix` needs to know - -- `--web-config-server https://cloud.example.com` is ownCloud url with webdav and ocs endpoints (oc10 or ocis) -- `--oidc-authority https://192.168.1.100:9130` the openid connect issuing authority, in our case `oidc-konnectd`, running on port 9130 -- `--oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration` the openid connect configuration endpoint, typically the issuer host with `.well-known/openid-configuration`, but there are cases when another endpoint is used, eg. ping identity provides multiple endpoints to separate domains -- `--oidc-client-id ocis` the client id we will register later with `ocis-konnectd` in the `identifier-registration.yaml` +- `--web-config-server https://cloud.example.com` is ownCloud url with webdav and ocs endpoints (oc10 or ocis) +- `--oidc-authority https://192.168.1.100:9130` the openid connect issuing authority, in our case `oidc-konnectd`, running on port 9130 +- `--oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration` the openid connect configuration endpoint, typically the issuer host with `.well-known/openid-configuration`, but there are cases when another endpoint is used, eg. ping identity provides multiple endpoints to separate domains +- `--oidc-client-id ocis` the client id we will register later with `ocis-konnectd` in the `identifier-registration.yaml` ### Start ocis-konnectd #### Get it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-konnectd.git - $ cd ocis-konnectd - $ make - +``` +$ git clone git@github.com:owncloud/ocis-konnectd.git +$ cd ocis-konnectd +$ make +``` This should give you a `bin/ocis-konnectd` binary. Try listing the help with `bin/ocis-konnectd --help`. #### Set environment variables Konnectd needs environment variables to configure the LDAP server: - ```console export LDAP_URI=ldap://192.168.1.100:9125 export LDAP_BINDDN="cn=admin,dc=example,dc=com" @@ -160,13 +156,11 @@ export LDAP_UUID_ATTRIBUTE=uid export LDAP_UUID_ATTRIBUTE_TYPE=text export LDAP_FILTER="(objectClass=posixaccount)" ``` - Don't forget to use an existing user and the correct password. ### Configure clients Now we need to configure a client we can later use to configure the ownCloud 10 openidconnect app. In the `assets/identifier-registration.yaml` have: - ```yaml --- @@ -182,7 +176,6 @@ clients: - http://localhost:9100 - http://localhost:9100/ ``` - You will need the `insecure: yes` if you are using self signed certificates. Replace `cloud.example.com` in the redirect URI with your ownCloud 10 host and port. @@ -191,44 +184,43 @@ Replace `localhost:9100` in the redirect URIs with your the `ocis-phoenix` host #### Run it! You can now bring up `ocis-connectd` with: - ```console $ bin/ocis-konnectd server --iss https://192.168.1.100:9130 --identifier-registration-conf assets/identifier-registration.yaml --signing-kid gen1-2020-02-27 ``` `ocis-konnectd` needs to know +- `--iss https://192.168.1.100:9130` the issuer, which must be a reachable https endpoint. For testing an ip works. HTTPS is NOT optional. This url is exposed in the `https://192.168.1.100:9130/.well-known/openid-configuration` endpoint and clients need to be able to connect to it +- `--identifier-registration-conf assets/identifier-registration.yaml` the identifier-registration.yaml you created +- `--signing-kid gen1-2020-02-27` a signature key id, otherwise the jwks key has no name, which might cause problems with clients. a random key is ok, but it should change when the actual signing key changes. -- `--iss https://192.168.1.100:9130` the issuer, which must be a reachable https endpoint. For testing an ip works. HTTPS is NOT optional. This url is exposed in the `https://192.168.1.100:9130/.well-known/openid-configuration` endpoint and clients need to be able to connect to it -- `--identifier-registration-conf assets/identifier-registration.yaml` the identifier-registration.yaml you created -- `--signing-kid gen1-2020-02-27` a signature key id, otherwise the jwks key has no name, which might cause problems with clients. a random key is ok, but it should change when the actual signing key changes. #### Check it is up and running -1. Try getting the configuration: - +1. Try getting the configuration: ```console $ curl https://192.168.1.100:9130/.well-known/openid-configuration ``` -2. Check if the login works at +2. Check if the login works at https://192.168.1.100:9130/signin/v1/identifier -> Note: If you later get a `Unable to find a key for (algorithm, kid):PS256, )` Error make sure you did set a `--signing-kid` when starting `ocis-konnectd` by checking it is present in +> Note: If you later get a `Unable to find a key for (algorithm, kid):PS256, )` Error make sure you did set a `--signing-kid` when starting `ocis-konnectd` by checking it is present in https://192.168.1.100:9130/konnect/v1/jwks.json ### Patch owncloud While the UserSession in ownCloud 10 is currently used to test all available IAuthModule implementations, it immediately logs out the user when an exception occurs. However, existing owncloud 10 instances use the oauth2 app to create Bearer tokens for mobile and desktop clients. -To give the openidconnect app a chance to verify the tokens we need to change the code a bit. See for a possible solution. +To give the openidconnect app a chance to verify the tokens we need to change the code a bit. See https://github.com/owncloud/core/pull/37043 for a possible solution. -> Note: The PR is hot ... as in _younger than this list of steps_. And it messes with authentication. Use with caution. +> Note: The PR is hot ... as in *younger than this list of steps*. And it messes with authentication. Use with caution. ### Install the owncloud 10 openidconnect app In an owncloud 10 apps folder - - $ git clone git@github.com:owncloud/openidconnect.git - $ cd openidconnect - $ composer install +``` +$ git clone git@github.com:owncloud/openidconnect.git +$ cd openidconnect +$ composer install +``` After enabling the app configure it in `config/oidc.config.php` @@ -249,16 +241,14 @@ $CONFIG = [ ``` In the above configuration replace - -- `provider-url` with the URL to your `ocis-konnectd` issuer -- `https://cloud.example.com` with the URL to your ownCloud 10 instance -- `http://localhost:9100` with the URL to your phoenix instance +- `provider-url` with the URL to your `ocis-konnectd` issuer +- `https://cloud.example.com` with the URL to your ownCloud 10 instance +- `http://localhost:9100` with the URL to your phoenix instance > Note: By default the openidconnect app will use the email of the user to match the user from the oidc userinfo endpoint with the ownCloud account. So make sure your users have a unique primary email. ## Next steps Aside from the above todos these are the next stepo - -- tie it all together behind `ocis-proxy` -- create an `ocis bridge` command that runs all the ocis services in one step with a properly preconfigured `ocis-konnectd` `identifier-registration.yaml` file for `phoenix` and the owncloud 10 `openidconnect` app, as well as a randomized `--signing-kid`. +- tie it all together behind `ocis-proxy` +- create an `ocis bridge` command that runs all the ocis services in one step with a properly preconfigured `ocis-konnectd` `identifier-registration.yaml` file for `phoenix` and the owncloud 10 `openidconnect` app, as well as a randomized `--signing-kid`. diff --git a/docs/ocis/building-docs.md b/docs/ocis/building-docs.md index 3eed3d888..5167657b1 100644 --- a/docs/ocis/building-docs.md +++ b/docs/ocis/building-docs.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Building the documentation" date: 2020-07-27T08:39:38+00:00 weight: 99 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: building-docs.md +--- -## geekdocFilePath: building-docs.md - -{{< toc >}} +{{< toc >}} ## Buildling the documentation @@ -16,22 +15,22 @@ Following steps can be applied for every oCIS extension repository. ### Setting up -- Install [hugo](https://gohugo.io/getting-started/installing/) -- Run `make docs` +- Install [hugo](https://gohugo.io/getting-started/installing/) +- Run `make docs` ### Viewing the documentation To view the rendered docs in the browser run: - ```bash cd hugo hugo -D server ``` -Then open "http://localhost:1313/" +Then open "http://localhost:1313/" When making changes to the docs, run `make docs` again and the server will pick up the changes and reload the page automatically ### Deploying the documentation -The documentation is automatically deployed from the master branch to +The documentation is automatically deployed from the master branch to https://owncloud.github.io/phoenix/ + diff --git a/docs/ocis/building.md b/docs/ocis/building.md index 5924831b0..29e67ac29 100644 --- a/docs/ocis/building.md +++ b/docs/ocis/building.md @@ -1,36 +1,36 @@ -* * * - +--- title: "Building" date: 2020-02-27T20:35:00+01:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis.git cd ocis -{{< / highlight >}} +{{< / highlight >}} All required tools besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. To build the `ocis` binary run: -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally, you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis -h` to see all available options. + ## Simple Ocis fo extonsions example Currently, we are using a go build tag to allow building a more simple set of the binary. It was intended to let extension developers focus on only the necessary services. -{{< hint info >}} +{{< hint info >}} While it the tag based simple build demonstrates how to use ocis as a framework for a micro service architecture, we may change to an approach that uses an explicit command to run only a subset of the services. -{{< / hint >}} +{{< / hint >}} ```console TAGS=simple make build @@ -40,8 +40,10 @@ The artifact lives in `/bin/ocis` The generated simple ocis binary is a subset of the ocis command with a restricted set of services meant for ease up development. The services included are - ocis-hello - ocis-phoenix - ocis-konnectd - ocis-glauth - micro's own services +``` +ocis-hello +ocis-phoenix +ocis-konnectd +ocis-glauth +micro's own services +``` diff --git a/docs/ocis/configuration.md b/docs/ocis/configuration.md index 7dbbc113f..807f92149 100644 --- a/docs/ocis/configuration.md +++ b/docs/ocis/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:56+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ ownCloud Infinite Scale Stack Usage: `ocis [global options] command [command options] [arguments...]` -\--config-file | $OCIS_CONFIG_FILE +--config-file | $OCIS_CONFIG_FILE : Path to config file. -\--log-level | $OCIS_LOG_LEVEL +--log-level | $OCIS_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $OCIS_LOG_PRETTY +--log-pretty | $OCIS_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $OCIS_LOG_COLOR +--log-color | $OCIS_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis health [command options] [arguments...]` -\--debug-addr | $OCIS_DEBUG_ADDR +--debug-addr | $OCIS_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9010`. ### ocis server @@ -73,40 +72,40 @@ Start fullstack server Usage: `ocis server [command options] [arguments...]` -\--tracing-enabled | $OCIS_TRACING_ENABLED +--tracing-enabled | $OCIS_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $OCIS_TRACING_TYPE +--tracing-type | $OCIS_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $OCIS_TRACING_ENDPOINT +--tracing-endpoint | $OCIS_TRACING_ENDPOINT : Endpoint for the agent. Default: `localhost:6831`. -\--tracing-collector | $OCIS_TRACING_COLLECTOR +--tracing-collector | $OCIS_TRACING_COLLECTOR : Endpoint for the collector. Default: `http://localhost:14268/api/traces`. -\--tracing-service | $OCIS_TRACING_SERVICE +--tracing-service | $OCIS_TRACING_SERVICE : Service name for tracing. Default: `ocis`. -\--debug-addr | $OCIS_DEBUG_ADDR +--debug-addr | $OCIS_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9010`. -\--debug-token | $OCIS_DEBUG_TOKEN +--debug-token | $OCIS_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $OCIS_DEBUG_PPROF +--debug-pprof | $OCIS_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $OCIS_DEBUG_ZPAGES +--debug-zpages | $OCIS_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $OCIS_HTTP_ADDR +--http-addr | $OCIS_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9000`. -\--http-root | $OCIS_HTTP_ROOT +--http-root | $OCIS_HTTP_ROOT : Root path of http server. Default: `/`. -\--grpc-addr | $OCIS_GRPC_ADDR +--grpc-addr | $OCIS_GRPC_ADDR : Address to bind grpc server. Default: `0.0.0.0:9001`. ### List of available Extension subcommands @@ -220,3 +219,4 @@ Start thumbnails server #### ocis webdav Start webdav server + diff --git a/docs/ocis/debugging.md b/docs/ocis/debugging.md index 717ece24e..4e443aa27 100644 --- a/docs/ocis/debugging.md +++ b/docs/ocis/debugging.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Debugging" date: 2020-03-19T08:21:00+01:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: debugging.md +geekdocFilePath: debugging.md +--- ## Debugging @@ -14,7 +13,7 @@ As a single binary for easy deployment running `ocis server` just forks itself t Ultimately, we want to be able to stop a single service using eg. `ocis kill phoenix` so that you can start the service you want to debug in debug mode. We need to [change the way we fork processes](https://github.com/owncloud/ocis/issues/77) though, otherwise the runtime will automatically restart a service if killed. -### Start ocis +### Start ocis For debugging there are two workflows that work well, depending on your preferences. @@ -68,8 +67,7 @@ Then you can set a breakpoint in the service you need and attach to the process #### Start all services independently to replace one of them with a debug process -1. You can use this `./ocis.sh` script to start all services independently, so they don't get restrarted by the runtime when you kill them: - +1. You can use this `./ocis.sh` script to start all services independently, so they don't get restrarted by the runtime when you kill them: ```bash #/bin/sh LOG_LEVEL="debug" @@ -99,7 +97,7 @@ bin/ocis --log-level=$LOG_LEVEL reva-users & bin/ocis --log-level=$LOG_LEVEL proxy & ``` -2. Get the list of running processes: +2. Get the list of running processes: ```console # ps ax | grep ocis @@ -128,13 +126,14 @@ bin/ocis --log-level=$LOG_LEVEL proxy & 13015 pts/1 Sl 0:00 bin/ocis-debug reva-auth-basic ``` -3. Kill the service you want to start in debug mode: +3. Kill the service you want to start in debug mode: + ```console # kill 17628 ``` -4. Start the service you are interested in in debug mode. When using make to build the binary there is already a `bin/ocis-debug` binary for you. When running an IDE tell it which service to start by providing the corresponding sub command, eg. `bin\ocis-debug reva-frontend`. +4. Start the service you are interested in in debug mode. When using make to build the binary there is already a `bin/ocis-debug` binary for you. When running an IDE tell it which service to start by providing the corresponding sub command, eg. `bin\ocis-debug reva-frontend`. ### Gather error messages @@ -158,22 +157,24 @@ This popped up when I tried to add `marie` as a collaborator in phoenix. That tr ``` -{{< hint info >}} +{{< hint info >}} The username and password only work when basic auth is available. Otherwise you have to obtain a bearer token, eg. by grabbing it from the browser. -{{< /hint >}} -{{< hint danger >}} +{{< /hint >}} +{{< hint danger >}} TODO add ocis cli tool to obtain a bearer token. -{{< /hint >}} +{{< /hint >}} We also have a few interesting log entries: - 0:43PM INF home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=OK end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:44078 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=95841 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.storage.registry.v1beta1.RegistryAPI/GetStorageProvider user-agent=grpc-go/1.26.0 - 10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=Unknown end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:43910 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=586115 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.gateway.v1beta1.GatewayAPI/Stat user-agent=grpc-go/1.26.0 - 10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94 > error sending a grpc stat request error="rpc error: code = Unknown desc = gateway: error calling Stat: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing dial tcp [::1]:9152: connect: connection refused\"" pid=17832 pkg=rhttp traceid=b4eb9a9f45921f7d3632523ca32a42b0 +``` +0:43PM INF home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=OK end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:44078 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=95841 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.storage.registry.v1beta1.RegistryAPI/GetStorageProvider user-agent=grpc-go/1.26.0 +10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=Unknown end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:43910 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=586115 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.gateway.v1beta1.GatewayAPI/Stat user-agent=grpc-go/1.26.0 +10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94 > error sending a grpc stat request error="rpc error: code = Unknown desc = gateway: error calling Stat: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing dial tcp [::1]:9152: connect: connection refused\"" pid=17832 pkg=rhttp traceid=b4eb9a9f45921f7d3632523ca32a42b0 +``` -{{< hint danger >}} -TODO return the trace id in the response so we can correlate easier. For reva tracked in -{{< /hint >}} +{{< hint danger >}} +TODO return the trace id in the response so we can correlate easier. For reva tracked in https://github.com/cs3org/reva/issues/587 +{{< /hint >}} The last line gives us a hint where the log message originated: `.../github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94`. Which looks like this: @@ -202,14 +203,15 @@ Debug wherever the call trace leads you to ... good luck! You can either run and manage the services independently, or you can update the `go.mod` file and replace dependencies with your local version. To debug the reva frontend we need to add two replacements: - - // use the local ocis-reva repo - replace github.com/owncloud/ocis-reva => ../ocis-reva - // also use the local reva repo - replace github.com/cs3org/reva => ../reva - -{{< hint info >}} +``` +// use the local ocis-reva repo +replace github.com/owncloud/ocis-reva => ../ocis-reva +// also use the local reva repo +replace github.com/cs3org/reva => ../reva +``` +{{< hint info >}} The username and password only work when basic auth is available. Otherwise you have to obtain a bearer token, eg. by grabbing it from the browser. -{{< /hint >}} +{{< /hint >}} Rebuild ocis to make sure the dependency is used. It should be sufficient to just restart the service you want to debug. + diff --git a/docs/ocis/development.md b/docs/ocis/development.md index f157b1feb..bffe88052 100644 --- a/docs/ocis/development.md +++ b/docs/ocis/development.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started with Development" date: 2020-07-07T20:35:00+01:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: development.md +--- -## geekdocFilePath: development.md - -{{< toc >}} +{{< toc >}} ## Docker dev environment @@ -16,59 +15,66 @@ geekdocEditPath: edit/master/docs To build and run your local ocis code with default storage driver - docker run --rm -ti --name ocis -v $PWD:/ocis -p 9200:9200 owncloud/eos-ocis-dev +``` +docker run --rm -ti --name ocis -v $PWD:/ocis -p 9200:9200 owncloud/eos-ocis-dev +``` The eos-ocis-dev container will build and run ocis using the owncloud storage driver and store files in the container at `/var/tmp/reva/data//files` To check the uploaded files start digging with: `docker exec -it ocis ls -l /var/tmp/reva/` -{{< hint info >}} +{{< hint info >}} On MacOS do not mount a local folder to the `/var/tmp/reva/` path. The fuse driver used by docker [does not support extended attributes](https://docs.docker.com/v18.09/docker-for-mac/osxfs/). See [#182](https://github.com/owncloud/ocis/issues/182) for more details. -{{< /hint >}} +{{< /hint >}} + ### Option 2: Docker compose With the `docker-compose.yml` file in ocis repo you can also start ocis via compose: - docker-compose up -d ocis +``` +docker-compose up -d ocis +``` -{{< hint info >}} +{{< hint info >}} We are only starting the `ocis` container here. -{{< /hint >}} +{{< /hint >}} ## Verification Check the services are running - $ docker-compose exec ocis ./bin/ocis list - +--------------------------+-----+ - | EXTENSION | PID | - +--------------------------+-----+ - | accounts | 172 | - | api | 204 | - | glauth | 187 | - | graph | 41 | - | graph-explorer | 55 | - | konnectd | 196 | - | ocs | 59 | - | phoenix | 29 | - | proxy | 22 | - | registry | 226 | - | reva-auth-basic | 96 | - | reva-auth-bearer | 104 | - | reva-frontend | 485 | - | reva-gateway | 78 | - | reva-sharing | 286 | - | reva-storage-eos | 129 | - | reva-storage-eos-data | 134 | - | reva-storage-home | 442 | - | reva-storage-home-data | 464 | - | reva-storage-oc | 149 | - | reva-storage-oc-data | 155 | - | reva-storage-public-link | 168 | - | reva-users | 420 | - | settings | 23 | - | thumbnails | 201 | - | web | 218 | - | webdav | 63 | - +--------------------------+-----+ +``` +$ docker-compose exec ocis ./bin/ocis list ++--------------------------+-----+ +| EXTENSION | PID | ++--------------------------+-----+ +| accounts | 172 | +| api | 204 | +| glauth | 187 | +| graph | 41 | +| graph-explorer | 55 | +| konnectd | 196 | +| ocs | 59 | +| phoenix | 29 | +| proxy | 22 | +| registry | 226 | +| reva-auth-basic | 96 | +| reva-auth-bearer | 104 | +| reva-frontend | 485 | +| reva-gateway | 78 | +| reva-sharing | 286 | +| reva-storage-eos | 129 | +| reva-storage-eos-data | 134 | +| reva-storage-home | 442 | +| reva-storage-home-data | 464 | +| reva-storage-oc | 149 | +| reva-storage-oc-data | 155 | +| reva-storage-public-link | 168 | +| reva-users | 420 | +| settings | 23 | +| thumbnails | 201 | +| web | 218 | +| webdav | 63 | ++--------------------------+-----+ +``` diff --git a/docs/ocis/eos.md b/docs/ocis/eos.md index ee92f9207..4815d393c 100644 --- a/docs/ocis/eos.md +++ b/docs/ocis/eos.md @@ -1,14 +1,13 @@ -* * * - +--- title: "EOS" date: 2020-02-27T20:35:00+01:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: eos.md +--- -## geekdocFilePath: eos.md - -{{< toc >}} +{{< toc >}} OCIS can be configured to run on top of [eos](https://eos.web.cern.ch/). While the [eos documentation](http://eos-docs.web.cern.ch/) does cover a lot of topics it leaves out some details that you may have to either pull from various [docker containers](https://gitlab.cern.ch/eos/eos-docker), the [forums](https://eos-community.web.cern.ch/) or even the [source](https://github.com/cern-eos/eos) itself. @@ -16,151 +15,164 @@ This document is a work in progress of the current setup. ## Docker dev environment for eos storage -We begin with the docker-compose.yml found in and +We begin with the docker-compose.yml found in https://github.com/owncloud/ocis/ and switch it to eos-storage. ### 1. Start eos & ocis containers Start the eos cluster and ocis via the compose stack. +``` +docker-compose up -d +``` - docker-compose up -d - -{{< hint info >}} +{{< hint info >}} The first time the **ocis** container starts up, it will compile ocis from scratch which can take a while. To follow progress, run `docker-compose logs -f --tail=10 ocis` -{{< /hint >}} +{{< /hint >}} ### 2. LDAP support Configure the OS to resolve users and groups using ldap - docker-compose exec -d ocis /start-ldap +``` +docker-compose exec -d ocis /start-ldap +``` Check that the OS in the ocis container can now resolve einstein or the other demo users - $ docker-compose exec ocis id einstein - uid=20000(einstein) gid=30000(users) groups=30000(users),30001(sailing-lovers),30002(violin-haters),30007(physics-lovers) +``` +$ docker-compose exec ocis id einstein +uid=20000(einstein) gid=30000(users) groups=30000(users),30001(sailing-lovers),30002(violin-haters),30007(physics-lovers) +``` -{{< hint info >}} +{{< hint info >}} If the user is not found at first you might need to wait a few more minutes in case the ocis container is still compiling. -{{< /hint >}} +{{< /hint >}} We also need to restart the reva-users service so it picks up the changed environment. Without a restart it is not able to resolve users from LDAP. - - docker-compose exec ocis ./bin/ocis kill reva-users - docker-compose exec ocis ./bin/ocis run reva-users +``` +docker-compose exec ocis ./bin/ocis kill reva-users +docker-compose exec ocis ./bin/ocis run reva-users +``` ### 3. Home storage Kill the home storage. By default it uses the `owncloud` storage driver. We need to switch it to the `eoshome` driver and make it use the storage id of the eos storage provider: - docker-compose exec ocis ./bin/ocis kill reva-storage-home - docker-compose exec -e REVA_STORAGE_HOME_DRIVER=eoshome -e REVA_STORAGE_HOME_MOUNT_ID=1284d238-aa92-42ce-bdc4-0b0000009158 ocis ./bin/ocis run reva-storage-home +``` +docker-compose exec ocis ./bin/ocis kill reva-storage-home +docker-compose exec -e REVA_STORAGE_HOME_DRIVER=eoshome -e REVA_STORAGE_HOME_MOUNT_ID=1284d238-aa92-42ce-bdc4-0b0000009158 ocis ./bin/ocis run reva-storage-home +``` ### 4. Home data provider Kill the home data provider. By default it uses the `owncloud` storage driver. We need to switch it to the `eoshome` driver and make it use the storage id of the eos storage provider: - docker-compose exec ocis ./bin/ocis kill reva-storage-home-data - docker-compose exec -e REVA_STORAGE_HOME_DATA_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home-data +``` +docker-compose exec ocis ./bin/ocis kill reva-storage-home-data +docker-compose exec -e REVA_STORAGE_HOME_DATA_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home-data +``` -{{< hint info >}} -The difference between the _home storage_ and the _home data provider_ are that the former is responsible for metadata changes while the latter is responsible for actual data transfer. The _home storage_ uses the cs3 api to manage a folder hierarchy, while the _home data provider_ is responsible for moving bytes to and from the storage. -{{< /hint >}} +{{< hint info >}} +The difference between the *home storage* and the *home data provider* are that the former is responsible for metadata changes while the latter is responsible for actual data transfer. The *home storage* uses the cs3 api to manage a folder hierarchy, while the *home data provider* is responsible for moving bytes to and from the storage. +{{< /hint >}} ## Verification Login with `einstein / relativity`, upload a file to einsteins home and verify the file is there using - docker-compose exec ocis eos ls -l /eos/dockertest/reva/users/4/4c510ada-c86b-4815-8820-42cdf82c3d51/ - -rw-r--r-- 1 einstein users 10 Jul 1 15:24 newfile.txt +``` +docker-compose exec ocis eos ls -l /eos/dockertest/reva/users/4/4c510ada-c86b-4815-8820-42cdf82c3d51/ +-rw-r--r-- 1 einstein users 10 Jul 1 15:24 newfile.txt +``` If the problem persists, please check the [troubleshooting section about uploads](#creation-and-upload-of-files-does-not-work). ## Further exploration EOS has a built in shell that you can enter using - - $ docker-compose exec mgm-master eos - # --------------------------------------------------------------------------- - # EOS Copyright (C) 2011-2019 CERN/Switzerland - # This program comes with ABSOLUTELY NO WARRANTY; for details type `license'. - # This is free software, and you are welcome to redistribute it - # under certain conditions; type `license' for details. - # --------------------------------------------------------------------------- - EOS_INSTANCE=eostest - EOS_SERVER_VERSION=4.6.5 EOS_SERVER_RELEASE=1 - EOS_CLIENT_VERSION=4.6.5 EOS_CLIENT_RELEASE=1 - EOS Console [root://localhost] |/> help - access Access Interface - accounting Accounting Interface - acl Acl Interface - archive Archive Interface - attr Attribute Interface - backup Backup Interface - clear Clear the terminal - cd Change directory - chmod Mode Interface - chown Chown Interface - config Configuration System - console Run Error Console - cp Cp command - debug Set debug level - exit Exit from EOS console - file File Handling - fileinfo File Information - find Find files/directories - newfind Find files/directories (new implementation) - fs File System configuration - fsck File System Consistency Checking - fuse Fuse Mounting - fusex Fuse(x) Administration - geosched Geoscheduler Interface - group Group configuration - health Health information about system - help Display this text - info Retrieve file or directory information - inspector Interact with File Inspector - io IO Interface - json Toggle JSON output flag for stdout - license Display Software License - ls List a directory - ln Create a symbolic link - map Path mapping interface - member Check Egroup membership - mkdir Create a directory - motd Message of the day - mv Rename file or directory - node Node configuration - ns Namespace Interface - pwd Print working directory - quit Exit from EOS console - quota Quota System configuration - reconnect Forces a re-authentication of the shell - recycle Recycle Bin Functionality - rmdir Remove a directory - rm Remove a file - role Set the client role - route Routing interface - rtlog Get realtime log output from mgm & fst servers - silent Toggle silent flag for stdout - space Space configuration - stagerrm Remove disk replicas of a file if it has tape replicas - stat Run 'stat' on a file or directory - squash Run 'squashfs' utility function - test Run performance test - timing Toggle timing flag for execution time measurement - touch Touch a file - token Token interface - tracker Interact with File Tracker - transfer Transfer Interface - version Verbose client/server version - vid Virtual ID System Configuration - whoami Determine how we are mapped on server side - who Statistics about connected users - ? Synonym for 'help' - .q Exit from EOS console - EOS Console [root://localhost] |/> +``` +$ docker-compose exec mgm-master eos +# --------------------------------------------------------------------------- +# EOS Copyright (C) 2011-2019 CERN/Switzerland +# This program comes with ABSOLUTELY NO WARRANTY; for details type `license'. +# This is free software, and you are welcome to redistribute it +# under certain conditions; type `license' for details. +# --------------------------------------------------------------------------- +EOS_INSTANCE=eostest +EOS_SERVER_VERSION=4.6.5 EOS_SERVER_RELEASE=1 +EOS_CLIENT_VERSION=4.6.5 EOS_CLIENT_RELEASE=1 +EOS Console [root://localhost] |/> help +access Access Interface +accounting Accounting Interface +acl Acl Interface +archive Archive Interface +attr Attribute Interface +backup Backup Interface +clear Clear the terminal +cd Change directory +chmod Mode Interface +chown Chown Interface +config Configuration System +console Run Error Console +cp Cp command +debug Set debug level +exit Exit from EOS console +file File Handling +fileinfo File Information +find Find files/directories +newfind Find files/directories (new implementation) +fs File System configuration +fsck File System Consistency Checking +fuse Fuse Mounting +fusex Fuse(x) Administration +geosched Geoscheduler Interface +group Group configuration +health Health information about system +help Display this text +info Retrieve file or directory information +inspector Interact with File Inspector +io IO Interface +json Toggle JSON output flag for stdout +license Display Software License +ls List a directory +ln Create a symbolic link +map Path mapping interface +member Check Egroup membership +mkdir Create a directory +motd Message of the day +mv Rename file or directory +node Node configuration +ns Namespace Interface +pwd Print working directory +quit Exit from EOS console +quota Quota System configuration +reconnect Forces a re-authentication of the shell +recycle Recycle Bin Functionality +rmdir Remove a directory +rm Remove a file +role Set the client role +route Routing interface +rtlog Get realtime log output from mgm & fst servers +silent Toggle silent flag for stdout +space Space configuration +stagerrm Remove disk replicas of a file if it has tape replicas +stat Run 'stat' on a file or directory +squash Run 'squashfs' utility function +test Run performance test +timing Toggle timing flag for execution time measurement +touch Touch a file +token Token interface +tracker Interact with File Tracker +transfer Transfer Interface +version Verbose client/server version +vid Virtual ID System Configuration +whoami Determine how we are mapped on server side +who Statistics about connected users +? Synonym for 'help' +.q Exit from EOS console +EOS Console [root://localhost] |/> +``` But this is a different adventure. See the links at the top of this page for other sources of information on eos. @@ -184,10 +196,10 @@ The ocis logs can be accessed using `docker-compose logs ocis`. Add `-f` for fol ### How do I update a service in the ocis container? -1. `docker-compose exec ocis make clean build` to update the binary -2. `docker-compose exec ocis ./bin/ocis kill ` to kill the service -3. `docker-compose exec ocis ./bin/ocis run ` to start the service. Do not forget to set any env vars, eg. - `docker-compose exec -e REVA_STORAGE_EOS_LAYOUT="{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}" -e REVA_STORAGE_HOME_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home` +1. `docker-compose exec ocis make clean build` to update the binary +2. `docker-compose exec ocis ./bin/ocis kill ` to kill the service +3. `docker-compose exec ocis ./bin/ocis run ` to start the service. Do not forget to set any env vars, eg. + `docker-compose exec -e REVA_STORAGE_EOS_LAYOUT="{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}" -e REVA_STORAGE_HOME_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home` ### Creation and upload of files does not work @@ -205,3 +217,4 @@ The EOS dockers are configured with replication, so every file uploaded there wi so make sure there is enough physical space on disk when testing. Also please note that older failed uploads might still be present in the "/tmp" directory of the "ocis" container. + diff --git a/docs/ocis/extensions.md b/docs/ocis/extensions.md index 8dfa6cd8a..4fd9d2bbe 100644 --- a/docs/ocis/extensions.md +++ b/docs/ocis/extensions.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Extension" date: 2020-02-27T20:35:00+01:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: extensions.md +--- -## geekdocFilePath: extensions.md - -{{< toc >}} +{{< toc >}} ## How to build and run ocis-simple @@ -18,7 +17,7 @@ ocis uses build tags to build different flavors of the binary. In order to work mkdir ocis-extension-workshop && ocis-extension-workshop ``` -Following +Following https://github.com/owncloud/ocis ```console git clone https://github.com/owncloud/ocis.git @@ -27,20 +26,20 @@ cd ocis TAGS=simple make generate build ``` -_Q: Can you specify which version of phoenix to use?_ -_A: No, the phoenix that is used is compiled into the [assets of ocis-phoenix](https://github.com/owncloud/ocis-phoenix/blob/master/pkg/assets/embed.go) which is currently not automatically updated. We'll see how to use a custom phoenix later._ +*Q: Can you specify which version of phoenix to use?* +*A: No, the phoenix that is used is compiled into the [assets of ocis-phoenix](https://github.com/owncloud/ocis-phoenix/blob/master/pkg/assets/embed.go) which is currently not automatically updated. We'll see how to use a custom phoenix later.* `bin/ocis server` -Open the browser at http://localhost:9100 +Open the browser at http://localhost:9100 -1. You land on the login screen. click login -2. You are redirected to an idp at http://localhost:9140/oauth2/auth with a login mask. Use `einstein:relativity`to login (one of the three demo users) -3. You are redirected to http://localhost:9100/#/hello the ocis-hello app -4. Replace `World` with something else and submit. You should see `Hello %something else%` +1. You land on the login screen. click login +2. You are redirected to an idp at http://localhost:9140/oauth2/auth with a login mask. Use `einstein:relativity`to login (one of the three demo users) +3. You are redirected to http://localhost:9100/#/hello the ocis-hello app +4. Replace `World` with something else and submit. You should see `Hello %something else%` -_Q: One of the required ports is already in use. Ocis seems to be trying to restart the service over and over. What gives?_ -_A: Using the ocis binary to start the server will case ocis to keep track of the different services and restart them in case they crash._ +*Q: One of the required ports is already in use. Ocis seems to be trying to restart the service over and over. What gives?* +*A: Using the ocis binary to start the server will case ocis to keep track of the different services and restart them in case they crash.* ## Hacking ocis-hello @@ -50,25 +49,25 @@ go back to the ocis-extension-workshop folder cd .. ``` -Following +Following https://github.com/owncloud/ocis-hello - git clone https://github.com/owncloud/ocis-hello.git - cd ocis-hello +``` +git clone https://github.com/owncloud/ocis-hello.git +cd ocis-hello - yarn install - # this actually creates the assets - yarn build +yarn install +# this actually creates the assets +yarn build - # this will compile the assets into the binary - make generate build +# this will compile the assets into the binary +make generate build +``` Two options: - -1. run only the necessery services from ocis and ocis-hello independently -2. compile ocis with the updated ocis-hello +1. run only the necessery services from ocis and ocis-hello independently +2. compile ocis with the updated ocis-hello ### Option 1: - get a list of ocis services: ```console @@ -83,10 +82,12 @@ In order to be able to manage the processes ourselves we need to start them inde `bin/ocis server` starts the same services as: - bin/ocis micro & - bin/ocis phoenix & - bin/ocis hello & - bin/ocis reva & +``` +bin/ocis micro & +bin/ocis phoenix & +bin/ocis hello & +bin/ocis reva & +``` Now we can kill the `ocis hello` and use our custom built ocis-hello binary: @@ -97,13 +98,15 @@ bin/ocis-hello server ## Hacking phoenix (and ocis-phoenix) -Following we are going to build the current phoenix +Following https://github.com/owncloud/phoenix we are going to build the current phoenix - git clone https://github.com/owncloud/phoenix.git - cd phoenix +``` +git clone https://github.com/owncloud/phoenix.git +cd phoenix - yarn install - yarn dist +yarn install +yarn dist +``` We can tell ocis to use the compiled assets: @@ -118,7 +121,7 @@ PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix The owncloud design system contains a set of ownCloud vue components for phoenix or your own ocis extensions. Use it for a consistent look and feel. -Point your browser to and check the available components. Live editing the examples in the browser is supported. +Point your browser to https://owncloud.github.io/owncloud-design-system and check the available components. Live editing the examples in the browser is supported. note: There is a bug with navigation sub items: either click a nav item twice or refresh the page @@ -126,10 +129,10 @@ note: There is a bug with navigation sub items: either click a nav item twice or This is what hello is: copy and extend! -1. Phoenix is configured using the config.json which is served by the phoenix service (either `bin/ocis phoenix` or `bin/ocis-phoenix server`) +1. Phoenix is configured using the config.json which is served by the phoenix service (either `bin/ocis phoenix` or `bin/ocis-phoenix server`) -2. point ocis phoenix to the web config which you extended with an external app: - `PHOENIX_WEB_CONFIG="`pwd`/../phoenix/config.json" PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix` +2. point ocis phoenix to the web config which you extended with an external app: +`PHOENIX_WEB_CONFIG="`pwd`/../phoenix/config.json" PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix` ```json { @@ -166,26 +169,23 @@ This is what hello is: copy and extend! ## Phoenix extension points -{{< hint info >}} +{{< hint info >}} For an up to date list check out [the phoenix documentation](https://github.com/owncloud/phoenix/issues/2423). -{{< /hint >}} +{{< /hint >}} Several ones available: ### Phoenix core - -- App switcher (defined in config.json) -- App container (loads UI of your extension) +- App switcher (defined in config.json) +- App container (loads UI of your extension) ### Files app - -- File action -- Create new file action -- Sidebar -- Quick access for sidebar inside of file actions (in the file row) +- File action +- Create new file action +- Sidebar +- Quick access for sidebar inside of file actions (in the file row) Example of a file action in the `app.js`: - ```js const appInfo = { name: 'MarkdownEditor', @@ -221,20 +221,17 @@ Short answer: any way you like Long answer: micro and ocis-hello follow a protocol driven development: -- specify the API using protobuf +- specify the API using protobuf +- generate client and server code +- evolve based on the protocol -- generate client and server code +- CS3 api uses protobuf as well and uses GRPC -- evolve based on the protocol +- ocis uses go-micro, which provides http and grpc gateways +- the gateways and protocols are optional -- CS3 api uses protobuf as well and uses GRPC +- owncloud and kopano are looking into a [MS graph](https://developer.microsoft.com/de-de/graph) like api to handle phoenix requests. + - they might be about user, contacrs, calendars ... which is covered by the graph api + - we want to integrate with eg. kopano and provide a commen api (file sync and share is covered as well) -- ocis uses go-micro, which provides http and grpc gateways - -- the gateways and protocols are optional - -- owncloud and kopano are looking into a [MS graph](https://developer.microsoft.com/de-de/graph) like api to handle phoenix requests. - - they might be about user, contacrs, calendars ... which is covered by the graph api - - we want to integrate with eg. kopano and provide a commen api (file sync and share is covered as well) - -- as an example for protobuf take a look at [ocis-hello](https://github.com/owncloud/ocis-hello/tree/master/pkg/proto/v0) +- as an example for protobuf take a look at [ocis-hello](https://github.com/owncloud/ocis-hello/tree/master/pkg/proto/v0) \ No newline at end of file diff --git a/docs/ocis/getting-started.md b/docs/ocis/getting-started.md index 5cbe00491..5c241aa75 100644 --- a/docs/ocis/getting-started.md +++ b/docs/ocis/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2020-02-27T20:35:00+01:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis are hosted on . +Docker images for ocis are hosted on https://hub.docker.com/r/owncloud/ocis. The `latest` tag always reflects the current master branch. @@ -26,8 +25,8 @@ docker pull owncloud/ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage +- Running ocis currently needs a working Redis caching server +- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage #### Docker compose @@ -41,7 +40,7 @@ docker-compose -f ocis.yml -f ../cache/redis-ocis.yml up ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis/testing/ ```console curl https://download.owncloud.com/ocis/ocis/1.0.0-beta1/ocis-1.0.0-beta1-darwin-amd64 --output ocis @@ -51,8 +50,8 @@ chmod +x ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. +- Running ocis currently needs a working Redis caching server +- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. ## Usage @@ -62,21 +61,21 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis health --help -{{< / highlight >}} +{{< / highlight >}} ## Quickstart for Developers -Following +Following https://github.com/owncloud/ocis#development ```console git clone https://github.com/owncloud/ocis.git @@ -84,7 +83,7 @@ cd ocis make generate build ``` -Open https://localhost:9200 and login using one of the demo accounts: +Open https://localhost:9200 and login using one of the demo accounts: ```console einstein:relativity @@ -226,4 +225,4 @@ promhttp_metric_handler_requests_in_flight : Current number of scrapes being served promhttp_metric_handler_requests_total -: Total number of scrapes by HTTP status code +: Total number of scrapes by HTTP status code \ No newline at end of file diff --git a/docs/ocis/license.md b/docs/ocis/license.md index 172daef3f..64460ec7e 100644 --- a/docs/ocis/license.md +++ b/docs/ocis/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2020-02-27T20:35:00+01:00 weight: 100 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/docs/ocis/login-flow.md b/docs/ocis/login-flow.md index 12ef9e7ff..ab450d901 100644 --- a/docs/ocis/login-flow.md +++ b/docs/ocis/login-flow.md @@ -1,23 +1,23 @@ -* * * - +--- title: "Login Flow" date: 2020-05-04T20:47:00+01:00 weight: 43 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: login-flow.md +--- -## geekdocFilePath: login-flow.md ## Login Flow The following sequence diagram describes the [openid connect auth code flow](https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth). The eight numbered steps and notes correspond to the [openid connect auth code flow steps](https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowSteps). Example requests are based on the spec as well.: -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} sequenceDiagram - %% we have comments!! \\o/ + %% we have comments!! \o/ %% this documents the login workflow - %% examples taken from the oidc spec - %% TODO add PKCE, see + %% examples taken from the oidc spec https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth + %% TODO add PKCE, see https://developer.okta.com/blog/2019/08/22/okta-authjs-pkce#use-pkce-to-make-your-apps-more-secure participant user as User participant client as Client participant proxy as ocis-proxy @@ -82,5 +82,4 @@ sequenceDiagram client->>+proxy: PROPFIND
With access token proxy-->>-client: 207 Multi-Status client-->>-user: List of Files X, Y, Z ... - -{{< /mermaid >}} +{{< /mermaid >}} \ No newline at end of file diff --git a/docs/ocis/public-upload-flow.md b/docs/ocis/public-upload-flow.md index c0d372001..7716175ff 100644 --- a/docs/ocis/public-upload-flow.md +++ b/docs/ocis/public-upload-flow.md @@ -1,15 +1,15 @@ -* * * - +--- title: "Public upload Flow" date: 2020-07-27T14:16:00+01:00 weight: 47 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: public-upload-flow.md +--- -## geekdocFilePath: public-upload-flow.md ## Public Upload flow The following diagram describes the flow of requests: -{{< svg src="static/ocis/tus-public-upload.svg" >}} +{{< svg src="static/ocis/tus-public-upload.svg" >}} \ No newline at end of file diff --git a/docs/ocis/request-flow.md b/docs/ocis/request-flow.md index aab3f1c75..268aaa2a7 100644 --- a/docs/ocis/request-flow.md +++ b/docs/ocis/request-flow.md @@ -1,20 +1,20 @@ -* * * - +--- title: "Request Flow" date: 2020-04-27T16:07:00+01:00 weight: 45 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: request-flow.md +--- -## geekdocFilePath: request-flow.md ## Request Flow The following sequence diagram describes the general request flow. It shows where account provisioning and token minting are happening: -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} sequenceDiagram - %% we have comments!! \\o/ + %% we have comments!! \o/ participant user as User participant client as Client participant proxy as ocis-proxy @@ -93,5 +93,4 @@ sequenceDiagram proxy-->>-client: Multistatus response client-->>-user: List of Files X, Y, Z ... - -{{< /mermaid >}} +{{< /mermaid >}} diff --git a/docs/ocis/testing.md b/docs/ocis/testing.md index 82f201c6a..c19dacc69 100644 --- a/docs/ocis/testing.md +++ b/docs/ocis/testing.md @@ -1,12 +1,12 @@ -* * * - +--- title: "Testing" date: 2018-05-02T00:00:00+00:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: testing.md +--- -## geekdocFilePath: testing.md ## Acceptance tests @@ -15,8 +15,9 @@ We are using the ownCloud 10 acceptance testsuite against ocis. To set this up y ### Getting the tests All you need to do to get the acceptance tests is check out the core repo: - - git clone https://github.com/owncloud/core.git +``` +git clone https://github.com/owncloud/core.git +``` ### Run a redis server in a docker container @@ -27,24 +28,27 @@ File versions need a redis server. Start one with docker by using: ### Run ocis To start ocis: - - bin/ocis server +``` +bin/ocis server +``` ### Run the acceptance tests - First we will need to clone the testing app in owncloud which contains the skeleton files required for running the tests. In the ownCloud 10 core clone the testing app with the following command: - git clone https://github.com/owncloud/testing apps/testing +``` +git clone https://github.com/owncloud/testing apps/testing +``` Then run the api acceptance tests with the following command: - - make test-acceptance-api \ - TEST_SERVER_URL=https://localhost:9200 \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - SKELETON_DIR=apps/testing/data/apiSkeleton \ - BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS' +``` +make test-acceptance-api \ +TEST_SERVER_URL=https://localhost:9200 \ +TEST_OCIS=true \ +OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ +SKELETON_DIR=apps/testing/data/apiSkeleton \ +BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS' +``` Make sure to adjust the settings `TEST_SERVER_URL` and `OCIS_REVA_DATA_ROOT` according to your environment. @@ -80,30 +84,24 @@ If you want to work on a specific issue 2. locally run each of the tests marked with that issue in the expected failures file E.g.: - - make test-acceptance-api \ - TEST_SERVER_URL=https://localhost:9200 \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` + make test-acceptance-api \ + TEST_SERVER_URL=https://localhost:9200 \ + TEST_OCIS=true \ + OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ + BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` 3. the tests will fail, try to understand how and why they are failing - 4. fix the code - 5. go back to 2. and repeat till the tests are passing. - 6. remove those tests from the expected failures file - 7. run each of the local tests that were demonstrating the **buggy** behavior. They should fail. - 8. delete each of the local tests that were demonstrating the **buggy** behavior. - 9. make a PR that has the fixed code, relevant lines removed from the expected failures file and bug demonstration tests deleted. If the changes also affect the `ocis-reva` repository make sure the changes get ported over there. ### Notes - -- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. -- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. +- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. +- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. diff --git a/docs/ocis/tracing.md b/docs/ocis/tracing.md index 731ff9b55..80b037d26 100644 --- a/docs/ocis/tracing.md +++ b/docs/ocis/tracing.md @@ -1,17 +1,16 @@ -* * * - +--- title: "Tracing" date: 2020-05-13T12:09:00+01:00 weight: 55 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: tracing.md +geekdocFilePath: tracing.md +--- By default, we use [Jaeger](https://www.jaegertracing.io) for request tracing within oCIS. You can follow these steps to get started: -1. Start Jaeger by using the all-in-one docker image: +1. Start Jaeger by using the all-in-one docker image: ```console docker run -d --name jaeger \ -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 \ @@ -25,8 +24,8 @@ to get started: -p 9411:9411 \ jaegertracing/all-in-one:1.17 ``` -2. Every single oCIS service has its own environment variables for enabling and configuring tracing. - 1. You can enable and configure tracing on each service individually. For example, enable tracing +2. Every single oCIS service has its own environment variables for enabling and configuring tracing. + 1. You can enable and configure tracing on each service individually. For example, enable tracing in Reva when starting the oCIS single binary like this: ```console REVA_TRACING_ENABLED=true \ @@ -34,16 +33,16 @@ to get started: REVA_TRACING_COLLECTOR=http://localhost:14268/api/traces \ ./bin/ocis server ``` - 2. Enabling and configuring tracing on oCIS itself will forward the configuration to all services: + 2. Enabling and configuring tracing on oCIS itself will forward the configuration to all services: ```console OCIS_TRACING_ENABLED=true \ OCIS_TRACING_ENDPOINT=localhost:6831 \ OCIS_TRACING_COLLECTOR=http://localhost:14268/api/traces \ ./bin/ocis server ``` - If you want to set individual tracing configuration for each service, make sure to set - `OCIS_TRACING_ENABLED=false`. -3. Make the actual request that you want to trace. -4. Open up the [Jaeger UI](http://localhost:16686) to analyze request traces. + If you want to set individual tracing configuration for each service, make sure to set + `OCIS_TRACING_ENABLED=false`. +3. Make the actual request that you want to trace. +4. Open up the [Jaeger UI](http://localhost:16686) to analyze request traces. For more information on Jaeger, please refer to their [Documentation](https://www.jaegertracing.io/docs/1.17/). diff --git a/glauth/CHANGELOG.md b/glauth/CHANGELOG.md index 9f1d06888..97cf6ba57 100644 --- a/glauth/CHANGELOG.md +++ b/glauth/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-glauth unreleased. @@ -6,55 +6,55 @@ The following sections list the changes in ocis-glauth unreleased. ## Summary -- Bugfix - Return invalid credentials when user was not found: [#30](https://github.com/owncloud/ocis/glauth/pull/30) -- Bugfix - Query numeric attribute values without quotes: [#28](https://github.com/owncloud/ocis/glauth/issues/28) -- Bugfix - Use searchBaseDN if already a user/group name: [#214](https://github.com/owncloud/product/issues/214) -- Bugfix - Fix LDAP substring startswith filters: [#31](https://github.com/owncloud/ocis/glauth/pull/31) +* Bugfix - Return invalid credentials when user was not found: [#30](https://github.com/owncloud/ocis/glauth/pull/30) +* Bugfix - Query numeric attribute values without quotes: [#28](https://github.com/owncloud/ocis/glauth/issues/28) +* Bugfix - Use searchBaseDN if already a user/group name: [#214](https://github.com/owncloud/product/issues/214) +* Bugfix - Fix LDAP substring startswith filters: [#31](https://github.com/owncloud/ocis/glauth/pull/31) ## Details -- Bugfix - Return invalid credentials when user was not found: [#30](https://github.com/owncloud/ocis/glauth/pull/30) +* Bugfix - Return invalid credentials when user was not found: [#30](https://github.com/owncloud/ocis/glauth/pull/30) - We were relying on an error code of the ListAccounts call when the username and password was - wrong. But the list will be empty if no user with the given login was found. So we also need to check - if the list of accounts is empty. + We were relying on an error code of the ListAccounts call when the username and password was + wrong. But the list will be empty if no user with the given login was found. So we also need to check + if the list of accounts is empty. - + https://github.com/owncloud/ocis/glauth/pull/30 -- Bugfix - Query numeric attribute values without quotes: [#28](https://github.com/owncloud/ocis/glauth/issues/28) +* Bugfix - Query numeric attribute values without quotes: [#28](https://github.com/owncloud/ocis/glauth/issues/28) - Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a - user it will not only try to lookup the user by username, but also by the `uidnumber`: - `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was - sending that as a string query `uid_number eq '20000'` in the ListAccounts query. This PR - changes that to `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to - identify the numeric literal. + Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a + user it will not only try to lookup the user by username, but also by the `uidnumber`: + `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was + sending that as a string query `uid_number eq '20000'` in the ListAccounts query. This PR + changes that to `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to + identify the numeric literal. - - - + https://github.com/owncloud/ocis/glauth/issues/28 + https://github.com/owncloud/ocis/glauth/pull/29 + https://github.com/owncloud/ocis/accounts/pull/68 -- Bugfix - Use searchBaseDN if already a user/group name: [#214](https://github.com/owncloud/product/issues/214) +* Bugfix - Use searchBaseDN if already a user/group name: [#214](https://github.com/owncloud/product/issues/214) - In case of the searchBaseDN already referencing a user or group, the search query was ignoring - the user/group name entirely, because the searchBaseDN is not part of the LDAP filters. We - fixed this by including an additional query part if the searchBaseDN contains a CN. + In case of the searchBaseDN already referencing a user or group, the search query was ignoring + the user/group name entirely, because the searchBaseDN is not part of the LDAP filters. We + fixed this by including an additional query part if the searchBaseDN contains a CN. - - + https://github.com/owncloud/product/issues/214 + https://github.com/owncloud/ocis/glauth/pull/32 -- Bugfix - Fix LDAP substring startswith filters: [#31](https://github.com/owncloud/ocis/glauth/pull/31) +* Bugfix - Fix LDAP substring startswith filters: [#31](https://github.com/owncloud/ocis/glauth/pull/31) - Filters like `(mail=mar*)` are currentld not parsed correctly, but they are used when - searching for recipients. This PR correctly converts them to odata filters like - `startswith(mail,'mar')`. + Filters like `(mail=mar*)` are currentld not parsed correctly, but they are used when + searching for recipients. This PR correctly converts them to odata filters like + `startswith(mail,'mar')`. - + https://github.com/owncloud/ocis/glauth/pull/31 -# Changelog for [0.5.0] \(2020-07-23) +# Changelog for [0.5.0] (2020-07-23) The following sections list the changes in ocis-glauth 0.5.0. @@ -62,44 +62,44 @@ The following sections list the changes in ocis-glauth 0.5.0. ## Summary -- Bugfix - Ignore case when comparing objectclass values: [#26](https://github.com/owncloud/ocis/glauth/pull/26) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#24](https://github.com/owncloud/ocis/glauth/pull/24) -- Enhancement - Handle ownCloudUUID attribute: [#27](https://github.com/owncloud/ocis/glauth/pull/27) -- Enhancement - Implement group queries: [#22](https://github.com/owncloud/ocis/glauth/issues/22) +* Bugfix - Ignore case when comparing objectclass values: [#26](https://github.com/owncloud/ocis/glauth/pull/26) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#24](https://github.com/owncloud/ocis/glauth/pull/24) +* Enhancement - Handle ownCloudUUID attribute: [#27](https://github.com/owncloud/ocis/glauth/pull/27) +* Enhancement - Implement group queries: [#22](https://github.com/owncloud/ocis/glauth/issues/22) ## Details -- Bugfix - Ignore case when comparing objectclass values: [#26](https://github.com/owncloud/ocis/glauth/pull/26) +* Bugfix - Ignore case when comparing objectclass values: [#26](https://github.com/owncloud/ocis/glauth/pull/26) - The LDAP equality comparison is specified as case insensitive. We fixed the comparison for - objectclass properties. + The LDAP equality comparison is specified as case insensitive. We fixed the comparison for + objectclass properties. - + https://github.com/owncloud/ocis/glauth/pull/26 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#24](https://github.com/owncloud/ocis/glauth/pull/24) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#24](https://github.com/owncloud/ocis/glauth/pull/24) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/glauth/pull/24 -- Enhancement - Handle ownCloudUUID attribute: [#27](https://github.com/owncloud/ocis/glauth/pull/27) +* Enhancement - Handle ownCloudUUID attribute: [#27](https://github.com/owncloud/ocis/glauth/pull/27) - Clients can now query an accounts immutable id by using the [new `ownCloudUUID` - attribute](https://github.com/butonic/owncloud-ldap-schema/blob/master/owncloud.schema#L28-L34). + Clients can now query an accounts immutable id by using the [new `ownCloudUUID` + attribute](https://github.com/butonic/owncloud-ldap-schema/blob/master/owncloud.schema#L28-L34). - + https://github.com/owncloud/ocis/glauth/pull/27 -- Enhancement - Implement group queries: [#22](https://github.com/owncloud/ocis/glauth/issues/22) +* Enhancement - Implement group queries: [#22](https://github.com/owncloud/ocis/glauth/issues/22) - Refactored the handler and implemented group queries. + Refactored the handler and implemented group queries. - - + https://github.com/owncloud/ocis/glauth/issues/22 + https://github.com/owncloud/ocis/glauth/pull/23 -# Changelog for [0.4.0] \(2020-03-18) +# Changelog for [0.4.0] (2020-03-18) The following sections list the changes in ocis-glauth 0.4.0. @@ -107,43 +107,43 @@ The following sections list the changes in ocis-glauth 0.4.0. ## Summary -- Enhancement - Configuration: [#11](https://github.com/owncloud/ocis/glauth/pull/11) -- Enhancement - Improve default settings: [#12](https://github.com/owncloud/ocis/glauth/pull/12) -- Enhancement - Generate temporary ldap certificates if LDAPS is enabled: [#12](https://github.com/owncloud/ocis/glauth/pull/12) -- Enhancement - Provide additional tls-endpoint: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Configuration: [#11](https://github.com/owncloud/ocis/glauth/pull/11) +* Enhancement - Improve default settings: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Generate temporary ldap certificates if LDAPS is enabled: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Provide additional tls-endpoint: [#12](https://github.com/owncloud/ocis/glauth/pull/12) ## Details -- Enhancement - Configuration: [#11](https://github.com/owncloud/ocis/glauth/pull/11) +* Enhancement - Configuration: [#11](https://github.com/owncloud/ocis/glauth/pull/11) - Extensions should be responsible of configuring themselves. We use Viper for config loading - from default paths. Environment variables **WILL** take precedence over config files. + Extensions should be responsible of configuring themselves. We use Viper for config loading + from default paths. Environment variables **WILL** take precedence over config files. - + https://github.com/owncloud/ocis/glauth/pull/11 -- Enhancement - Improve default settings: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Improve default settings: [#12](https://github.com/owncloud/ocis/glauth/pull/12) - This helps achieve zero-config in single-binary. + This helps achieve zero-config in single-binary. - + https://github.com/owncloud/ocis/glauth/pull/12 -- Enhancement - Generate temporary ldap certificates if LDAPS is enabled: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Generate temporary ldap certificates if LDAPS is enabled: [#12](https://github.com/owncloud/ocis/glauth/pull/12) - This change helps to achieve zero-configuration in single-binary mode. + This change helps to achieve zero-configuration in single-binary mode. - + https://github.com/owncloud/ocis/glauth/pull/12 -- Enhancement - Provide additional tls-endpoint: [#12](https://github.com/owncloud/ocis/glauth/pull/12) +* Enhancement - Provide additional tls-endpoint: [#12](https://github.com/owncloud/ocis/glauth/pull/12) - Ocis-glauth is now able to concurrently serve a encrypted and an unencrypted ldap-port. - Please note that only SSL (no StarTLS) is supported at the moment. + Ocis-glauth is now able to concurrently serve a encrypted and an unencrypted ldap-port. + Please note that only SSL (no StarTLS) is supported at the moment. - + https://github.com/owncloud/ocis/glauth/pull/12 -# Changelog for [0.2.0] \(2020-03-17) +# Changelog for [0.2.0] (2020-03-17) The following sections list the changes in ocis-glauth 0.2.0. @@ -151,21 +151,21 @@ The following sections list the changes in ocis-glauth 0.2.0. ## Summary -- Change - Default to config based user backend: [#6](https://github.com/owncloud/ocis/glauth/pull/6) +* Change - Default to config based user backend: [#6](https://github.com/owncloud/ocis/glauth/pull/6) ## Details -- Change - Default to config based user backend: [#6](https://github.com/owncloud/ocis/glauth/pull/6) +* Change - Default to config based user backend: [#6](https://github.com/owncloud/ocis/glauth/pull/6) - We changed the default configuration to use the config file backend instead of the ownCloud - backend. + We changed the default configuration to use the config file backend instead of the ownCloud + backend. - The config backend currently only has two hard coded users: demo and admin. To switch back to the - ownCloud backend use `GLAUTH_BACKEND_DATASTORE=owncloud` + The config backend currently only has two hard coded users: demo and admin. To switch back to the + ownCloud backend use `GLAUTH_BACKEND_DATASTORE=owncloud` - + https://github.com/owncloud/ocis/glauth/pull/6 -# Changelog for [0.3.0] \(2020-03-17) +# Changelog for [0.3.0] (2020-03-17) The following sections list the changes in ocis-glauth 0.3.0. @@ -173,21 +173,21 @@ The following sections list the changes in ocis-glauth 0.3.0. ## Summary -- Change - Use physicist demo users: [#5](https://github.com/owncloud/ocis/glauth/issues/5) +* Change - Use physicist demo users: [#5](https://github.com/owncloud/ocis/glauth/issues/5) ## Details -- Change - Use physicist demo users: [#5](https://github.com/owncloud/ocis/glauth/issues/5) +* Change - Use physicist demo users: [#5](https://github.com/owncloud/ocis/glauth/issues/5) - Demo users like admin, demo and test don't allow you to tell a story. Which is why we changed the - set of hard coded demo users to `einstein`, `marie` and `feynman`. You should know who they are. - This also changes the ldap domain from `dc=owncloud,dc=com` to `dc=example,dc=org` because - that is what these users use as their email domain. There are also `konnectd` and `reva` for - technical purposes, eg. to allow konnectd and reva to bind to glauth. + Demo users like admin, demo and test don't allow you to tell a story. Which is why we changed the + set of hard coded demo users to `einstein`, `marie` and `feynman`. You should know who they are. + This also changes the ldap domain from `dc=owncloud,dc=com` to `dc=example,dc=org` because + that is what these users use as their email domain. There are also `konnectd` and `reva` for + technical purposes, eg. to allow konnectd and reva to bind to glauth. - + https://github.com/owncloud/ocis/glauth/issues/5 -# Changelog for [0.1.0] \(2020-02-28) +# Changelog for [0.1.0] (2020-02-28) The following sections list the changes in ocis-glauth 0.1.0. @@ -195,12 +195,13 @@ The following sections list the changes in ocis-glauth 0.1.0. ## Summary -- Enhancement - Initial release of basic version: [#1](https://github.com/owncloud/ocis/glauth/pull/1) +* Enhancement - Initial release of basic version: [#1](https://github.com/owncloud/ocis/glauth/pull/1) ## Details -- Enhancement - Initial release of basic version: [#1](https://github.com/owncloud/ocis/glauth/pull/1) +* Enhancement - Initial release of basic version: [#1](https://github.com/owncloud/ocis/glauth/pull/1) - Just prepare an initial basic version to provide a glauth service. + Just prepare an initial basic version to provide a glauth service. + + https://github.com/owncloud/ocis/glauth/pull/1 - diff --git a/glauth/README.md b/glauth/README.md index 6439baa89..57a11641f 100644 --- a/glauth/README.md +++ b/glauth/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-glauth/status.svg)](https://cloud.drone.io/owncloud/ocis-glauth) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/6f1eaaa399294d959ef7b3b10deed41d)](https://www.codacy.com/manual/owncloud/ocis-glauth?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-glauth&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/6f1eaaa399294d959ef7b3b10deed41d)](https://www.codacy.com/manual/owncloud/ocis-glauth?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-glauth&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-glauth?status.svg)](http://godoc.org/github.com/owncloud/ocis-glauth) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-glauth)](http://goreportcard.com/report/github.com/owncloud/ocis-glauth) [![](https://images.microbadger.com/badges/image/owncloud/ocis-glauth.svg)](http://microbadger.com/images/owncloud/ocis-glauth "Get your own image badge on microbadger.com") @@ -28,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/glauth/changelog/0.1.0_2020-02-28/initial-release.md b/glauth/changelog/0.1.0_2020-02-28/initial-release.md index c9caf9af2..5c3a891f3 100644 --- a/glauth/changelog/0.1.0_2020-02-28/initial-release.md +++ b/glauth/changelog/0.1.0_2020-02-28/initial-release.md @@ -2,4 +2,4 @@ Enhancement: Initial release of basic version Just prepare an initial basic version to provide a glauth service. - +https://github.com/owncloud/ocis/glauth/pull/1 diff --git a/glauth/changelog/0.2.0_2020-03-17/pull-6.md b/glauth/changelog/0.2.0_2020-03-17/pull-6.md index 1220fcac9..3e636597d 100644 --- a/glauth/changelog/0.2.0_2020-03-17/pull-6.md +++ b/glauth/changelog/0.2.0_2020-03-17/pull-6.md @@ -4,4 +4,4 @@ We changed the default configuration to use the config file backend instead of t The config backend currently only has two hard coded users: demo and admin. To switch back to the ownCloud backend use `GLAUTH_BACKEND_DATASTORE=owncloud` - +https://github.com/owncloud/ocis/glauth/pull/6 diff --git a/glauth/changelog/0.3.0_2020-03-17/physics-users.md b/glauth/changelog/0.3.0_2020-03-17/physics-users.md index 72288d8f6..a5461995d 100644 --- a/glauth/changelog/0.3.0_2020-03-17/physics-users.md +++ b/glauth/changelog/0.3.0_2020-03-17/physics-users.md @@ -2,4 +2,4 @@ Change: use physicist demo users Demo users like admin, demo and test don't allow you to tell a story. Which is why we changed the set of hard coded demo users to `einstein`, `marie` and `feynman`. You should know who they are. This also changes the ldap domain from `dc=owncloud,dc=com` to `dc=example,dc=org` because that is what these users use as their email domain. There are also `konnectd` and `reva` for technical purposes, eg. to allow konnectd and reva to bind to glauth. - +https://github.com/owncloud/ocis/glauth/issues/5 diff --git a/glauth/changelog/0.4.0_2020-03-18/default-settings.md b/glauth/changelog/0.4.0_2020-03-18/default-settings.md index 19477a76d..35c0f72eb 100644 --- a/glauth/changelog/0.4.0_2020-03-18/default-settings.md +++ b/glauth/changelog/0.4.0_2020-03-18/default-settings.md @@ -2,4 +2,4 @@ Enhancement: Improve default settings This helps achieve zero-config in single-binary. - +https://github.com/owncloud/ocis/glauth/pull/12 diff --git a/glauth/changelog/0.4.0_2020-03-18/generate-dev-certs.md b/glauth/changelog/0.4.0_2020-03-18/generate-dev-certs.md index ac278fa94..0e0bb820f 100644 --- a/glauth/changelog/0.4.0_2020-03-18/generate-dev-certs.md +++ b/glauth/changelog/0.4.0_2020-03-18/generate-dev-certs.md @@ -2,4 +2,4 @@ Enhancement: Generate temporary ldap certificates if LDAPS is enabled This change helps to achieve zero-configuration in single-binary mode. - +https://github.com/owncloud/ocis/glauth/pull/12 diff --git a/glauth/changelog/0.4.0_2020-03-18/tls-endpoint.md b/glauth/changelog/0.4.0_2020-03-18/tls-endpoint.md index 241ab61d0..a27ee7243 100644 --- a/glauth/changelog/0.4.0_2020-03-18/tls-endpoint.md +++ b/glauth/changelog/0.4.0_2020-03-18/tls-endpoint.md @@ -3,4 +3,4 @@ Enhancement: Provide additional tls-endpoint ocis-glauth is now able to concurrently serve a encrypted and an unencrypted ldap-port. Please note that only SSL (no StarTLS) is supported at the moment. - +https://github.com/owncloud/ocis/glauth/pull/12 diff --git a/glauth/changelog/0.5.0_2020-07-23/handle-ownclouduuid.md b/glauth/changelog/0.5.0_2020-07-23/handle-ownclouduuid.md index fece0f2c5..3286b8b82 100644 --- a/glauth/changelog/0.5.0_2020-07-23/handle-ownclouduuid.md +++ b/glauth/changelog/0.5.0_2020-07-23/handle-ownclouduuid.md @@ -2,4 +2,5 @@ Enhancement: handle ownCloudUUID attribute Clients can now query an accounts immutable id by using the [new `ownCloudUUID` attribute](https://github.com/butonic/owncloud-ldap-schema/blob/master/owncloud.schema#L28-L34). - + +https://github.com/owncloud/ocis/glauth/pull/27 diff --git a/glauth/changelog/0.5.0_2020-07-23/ignore-case-for-objectclass-value.md b/glauth/changelog/0.5.0_2020-07-23/ignore-case-for-objectclass-value.md index 6a72baff6..48f4a20e3 100644 --- a/glauth/changelog/0.5.0_2020-07-23/ignore-case-for-objectclass-value.md +++ b/glauth/changelog/0.5.0_2020-07-23/ignore-case-for-objectclass-value.md @@ -2,4 +2,4 @@ Bugfix: ignore case when comparing objectclass values The LDAP equality comparison is specified as case insensitive. We fixed the comparison for objectclass properties. - +https://github.com/owncloud/ocis/glauth/pull/26 diff --git a/glauth/changelog/0.5.0_2020-07-23/implement-group-queries.md b/glauth/changelog/0.5.0_2020-07-23/implement-group-queries.md index 8a5bedc02..70100c74e 100644 --- a/glauth/changelog/0.5.0_2020-07-23/implement-group-queries.md +++ b/glauth/changelog/0.5.0_2020-07-23/implement-group-queries.md @@ -2,5 +2,5 @@ Enhancement: implement group queries Refactored the handler and implemented group queries. - - +https://github.com/owncloud/ocis/glauth/issues/22 +https://github.com/owncloud/ocis/glauth/pull/23 diff --git a/glauth/changelog/0.5.0_2020-07-23/use-alpine-latest.md b/glauth/changelog/0.5.0_2020-07-23/use-alpine-latest.md index 51f786f51..b485a75eb 100644 --- a/glauth/changelog/0.5.0_2020-07-23/use-alpine-latest.md +++ b/glauth/changelog/0.5.0_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/glauth/pull/24 diff --git a/glauth/changelog/unreleased/fix-bind-when-not-found.md b/glauth/changelog/unreleased/fix-bind-when-not-found.md index 81bd6aff8..588bda51c 100644 --- a/glauth/changelog/unreleased/fix-bind-when-not-found.md +++ b/glauth/changelog/unreleased/fix-bind-when-not-found.md @@ -2,4 +2,4 @@ Bugfix: return invalid credentials when user was not found We were relying on an error code of the ListAccounts call when the username and password was wrong. But the list will be empty if no user with the given login was found. So we also need to check if the list of accounts is empty. - +https://github.com/owncloud/ocis/glauth/pull/30 diff --git a/glauth/changelog/unreleased/fix-int-queries.md b/glauth/changelog/unreleased/fix-int-queries.md index a0cac7356..b8251e4fa 100644 --- a/glauth/changelog/unreleased/fix-int-queries.md +++ b/glauth/changelog/unreleased/fix-int-queries.md @@ -2,6 +2,6 @@ Bugfix: query numeric attribute values without quotes Some LDAP properties like `uidnumber` and `gidnumber` are numeric. When an OS tries to look up a user it will not only try to lookup the user by username, but also by the `uidnumber`: `(&(objectclass=posixAccount)(uidnumber=20000))`. The accounts backend for glauth was sending that as a string query `uid_number eq '20000'` in the ListAccounts query. This PR changes that to `uid_number eq 20000`. The removed quotes allow the parser in ocis-accounts to identify the numeric literal. - - - +https://github.com/owncloud/ocis/glauth/issues/28 +https://github.com/owncloud/ocis/glauth/pull/29 +https://github.com/owncloud/ocis/accounts/pull/68 diff --git a/glauth/changelog/unreleased/fix-searchbasedn.md b/glauth/changelog/unreleased/fix-searchbasedn.md index 5c8bf1dd8..7b0b0967d 100644 --- a/glauth/changelog/unreleased/fix-searchbasedn.md +++ b/glauth/changelog/unreleased/fix-searchbasedn.md @@ -2,5 +2,5 @@ Bugfix: Use searchBaseDN if already a user/group name In case of the searchBaseDN already referencing a user or group, the search query was ignoring the user/group name entirely, because the searchBaseDN is not part of the LDAP filters. We fixed this by including an additional query part if the searchBaseDN contains a CN. - - +https://github.com/owncloud/product/issues/214 +https://github.com/owncloud/ocis/glauth/pull/32 diff --git a/glauth/changelog/unreleased/fix-startswith-queries.md b/glauth/changelog/unreleased/fix-startswith-queries.md index d3c3be963..dda5ea8cd 100644 --- a/glauth/changelog/unreleased/fix-startswith-queries.md +++ b/glauth/changelog/unreleased/fix-startswith-queries.md @@ -2,4 +2,4 @@ Bugfix: fix LDAP substring startswith filters Filters like `(mail=mar*)` are currentld not parsed correctly, but they are used when searching for recipients. This PR correctly converts them to odata filters like `startswith(mail,'mar')`. - +https://github.com/owncloud/ocis/glauth/pull/31 diff --git a/glauth/docs/_index.md b/glauth/docs/_index.md index 199a85dba..25756306d 100644 --- a/glauth/docs/_index.md +++ b/glauth/docs/_index.md @@ -1,15 +1,14 @@ -* * * - +--- title: "GLAuth" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides a simple glauth world API which can be used by clients or other extensions. -- reiner proxy - ldap für eos und firewall -- backend ist der accounts service +- reiner proxy +ldap für eos und firewall +- backend ist der accounts service \ No newline at end of file diff --git a/glauth/docs/building.md b/glauth/docs/building.md index a234621c1..7dc26619f 100644 --- a/glauth/docs/building.md +++ b/glauth/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-glauth.git cd ocis-glauth -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-glauth -h` to see all available options. diff --git a/glauth/docs/getting-started.md b/glauth/docs/getting-started.md index 456ad694d..f28c31e1f 100644 --- a/glauth/docs/getting-started.md +++ b/glauth/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `glauth` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9124` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9120` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9124` ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-glauth server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-glauth health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/glauth/docs/license.md b/glauth/docs/license.md index 1f8d3255a..914cd70bd 100644 --- a/glauth/docs/license.md +++ b/glauth/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-glauth geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/glauth/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/konnectd/CHANGELOG.md b/konnectd/CHANGELOG.md index c8c42e929..2837ec299 100644 --- a/konnectd/CHANGELOG.md +++ b/konnectd/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [0.3.2] \(2020-07-23) +# Changelog for [0.3.2] (2020-07-23) The following sections list the changes in ocis-konnectd 0.3.2. @@ -6,27 +6,27 @@ The following sections list the changes in ocis-konnectd 0.3.2. ## Summary -- Bugfix - Add silent redirect url: [#69](https://github.com/owncloud/ocis/konnectd/issues/69) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#71](https://github.com/owncloud/ocis/konnectd/pull/71) +* Bugfix - Add silent redirect url: [#69](https://github.com/owncloud/ocis/konnectd/issues/69) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#71](https://github.com/owncloud/ocis/konnectd/pull/71) ## Details -- Bugfix - Add silent redirect url: [#69](https://github.com/owncloud/ocis/konnectd/issues/69) +* Bugfix - Add silent redirect url: [#69](https://github.com/owncloud/ocis/konnectd/issues/69) - Adds the oidc-silent-redirect.html phoenix uses to silently refresh access tokens to the - default identifier-registration.yml + Adds the oidc-silent-redirect.html phoenix uses to silently refresh access tokens to the + default identifier-registration.yml - - + https://github.com/owncloud/ocis/konnectd/issues/69 + https://github.com/owncloud/ocis/konnectd/pull/70 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#71](https://github.com/owncloud/ocis/konnectd/pull/71) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#71](https://github.com/owncloud/ocis/konnectd/pull/71) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/konnectd/pull/71 -# Changelog for [0.3.1] \(2020-04-14) +# Changelog for [0.3.1] (2020-04-14) The following sections list the changes in ocis-konnectd 0.3.1. @@ -34,17 +34,17 @@ The following sections list the changes in ocis-konnectd 0.3.1. ## Summary -- Bugfix - Include the assets for #62: [#64](https://github.com/owncloud/ocis/konnectd/pull/64) +* Bugfix - Include the assets for #62: [#64](https://github.com/owncloud/ocis/konnectd/pull/64) ## Details -- Bugfix - Include the assets for #62: [#64](https://github.com/owncloud/ocis/konnectd/pull/64) +* Bugfix - Include the assets for #62: [#64](https://github.com/owncloud/ocis/konnectd/pull/64) - PR 62 introduced new client names. These assets needs to be generated in the embed.go file. + PR 62 introduced new client names. These assets needs to be generated in the embed.go file. - + https://github.com/owncloud/ocis/konnectd/pull/64 -# Changelog for [0.3.0] \(2020-04-14) +# Changelog for [0.3.0] (2020-04-14) The following sections list the changes in ocis-konnectd 0.3.0. @@ -52,41 +52,41 @@ The following sections list the changes in ocis-konnectd 0.3.0. ## Summary -- Bugfix - Redirect to the provided uri: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) -- Change - Add a trailing slash to trusted redirect uris: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) -- Change - Improve client identifiers for end users: [#62](https://github.com/owncloud/ocis/konnectd/pull/62) -- Enhancement - Use upstream version of konnect library: [#14](https://github.com/owncloud/product/issues/14) +* Bugfix - Redirect to the provided uri: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) +* Change - Add a trailing slash to trusted redirect uris: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) +* Change - Improve client identifiers for end users: [#62](https://github.com/owncloud/ocis/konnectd/pull/62) +* Enhancement - Use upstream version of konnect library: [#14](https://github.com/owncloud/product/issues/14) ## Details -- Bugfix - Redirect to the provided uri: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) +* Bugfix - Redirect to the provided uri: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) - The phoenix client was not set as trusted therefore when logging out the user was redirected to a - default page instead of the provided url. + The phoenix client was not set as trusted therefore when logging out the user was redirected to a + default page instead of the provided url. - + https://github.com/owncloud/ocis/konnectd/issues/26 -- Change - Add a trailing slash to trusted redirect uris: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) +* Change - Add a trailing slash to trusted redirect uris: [#26](https://github.com/owncloud/ocis/konnectd/issues/26) - Phoenix changed the redirect uri to `#/login` that means it will contain a trailing - slash after the base url. + Phoenix changed the redirect uri to `#/login` that means it will contain a trailing + slash after the base url. - + https://github.com/owncloud/ocis/konnectd/issues/26 -- Change - Improve client identifiers for end users: [#62](https://github.com/owncloud/ocis/konnectd/pull/62) +* Change - Improve client identifiers for end users: [#62](https://github.com/owncloud/ocis/konnectd/pull/62) - Improved end user facing client names in default identifier-registration.yaml + Improved end user facing client names in default identifier-registration.yaml - + https://github.com/owncloud/ocis/konnectd/pull/62 -- Enhancement - Use upstream version of konnect library: [#14](https://github.com/owncloud/product/issues/14) +* Enhancement - Use upstream version of konnect library: [#14](https://github.com/owncloud/product/issues/14) - + https://github.com/owncloud/product/issues/14 -# Changelog for [0.2.0] \(2020-03-18) +# Changelog for [0.2.0] (2020-03-18) The following sections list the changes in ocis-konnectd 0.2.0. @@ -94,15 +94,15 @@ The following sections list the changes in ocis-konnectd 0.2.0. ## Summary -- Enhancement - Change default config for single-binary: [#55](https://github.com/owncloud/ocis/konnectd/pull/55) +* Enhancement - Change default config for single-binary: [#55](https://github.com/owncloud/ocis/konnectd/pull/55) ## Details -- Enhancement - Change default config for single-binary: [#55](https://github.com/owncloud/ocis/konnectd/pull/55) +* Enhancement - Change default config for single-binary: [#55](https://github.com/owncloud/ocis/konnectd/pull/55) - + https://github.com/owncloud/ocis/konnectd/pull/55 -# Changelog for [0.1.0] \(2020-03-18) +# Changelog for [0.1.0] (2020-03-18) The following sections list the changes in ocis-konnectd 0.1.0. @@ -110,41 +110,42 @@ The following sections list the changes in ocis-konnectd 0.1.0. ## Summary -- Bugfix - Generate a random CSP-Nonce in the webapp: [#17](https://github.com/owncloud/ocis/konnectd/issues/17) -- Change - Dummy index.html is not required anymore by upstream: [#25](https://github.com/owncloud/ocis/konnectd/issues/25) -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/konnectd/issues/1) -- Change - Use glauth as ldap backend, default to running behind ocis-proxy: [#52](https://github.com/owncloud/ocis/konnectd/pull/52) +* Bugfix - Generate a random CSP-Nonce in the webapp: [#17](https://github.com/owncloud/ocis/konnectd/issues/17) +* Change - Dummy index.html is not required anymore by upstream: [#25](https://github.com/owncloud/ocis/konnectd/issues/25) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/konnectd/issues/1) +* Change - Use glauth as ldap backend, default to running behind ocis-proxy: [#52](https://github.com/owncloud/ocis/konnectd/pull/52) ## Details -- Bugfix - Generate a random CSP-Nonce in the webapp: [#17](https://github.com/owncloud/ocis/konnectd/issues/17) +* Bugfix - Generate a random CSP-Nonce in the webapp: [#17](https://github.com/owncloud/ocis/konnectd/issues/17) - - + https://github.com/owncloud/ocis/konnectd/issues/17 + https://github.com/owncloud/ocis/konnectd/pull/29 -- Change - Dummy index.html is not required anymore by upstream: [#25](https://github.com/owncloud/ocis/konnectd/issues/25) +* Change - Dummy index.html is not required anymore by upstream: [#25](https://github.com/owncloud/ocis/konnectd/issues/25) - The workaround was required as identifier webapp was mandatory, but we serve it from memory. - This also introduces --disable-identifier-webapp flag. + The workaround was required as identifier webapp was mandatory, but we serve it from memory. + This also introduces --disable-identifier-webapp flag. - + https://github.com/owncloud/ocis/konnectd/issues/25 -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/konnectd/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/konnectd/issues/1) - Just prepare an initial basic version to serve konnectd embedded into our microservice - infrastructure in the scope of the ownCloud Infinite Scale project. + Just prepare an initial basic version to serve konnectd embedded into our microservice + infrastructure in the scope of the ownCloud Infinite Scale project. - + https://github.com/owncloud/ocis/konnectd/issues/1 -- Change - Use glauth as ldap backend, default to running behind ocis-proxy: [#52](https://github.com/owncloud/ocis/konnectd/pull/52) +* Change - Use glauth as ldap backend, default to running behind ocis-proxy: [#52](https://github.com/owncloud/ocis/konnectd/pull/52) - We changed the default configuration to integrate better with ocis. + We changed the default configuration to integrate better with ocis. - The default ldap port changes to 9125, which is used by ocis-glauth and we use ocis-proxy to do - the tls offloading. Clients are supposed to use the ocis-proxy endpoint - `https://localhost:9200` + The default ldap port changes to 9125, which is used by ocis-glauth and we use ocis-proxy to do + the tls offloading. Clients are supposed to use the ocis-proxy endpoint + `https://localhost:9200` + + https://github.com/owncloud/ocis/konnectd/pull/52 - diff --git a/konnectd/README.md b/konnectd/README.md index d9b389c3f..cfdc50554 100644 --- a/konnectd/README.md +++ b/konnectd/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-konnectd/status.svg)](https://cloud.drone.io/owncloud/ocis-konnectd) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/f6f9033737404c9da3ba4738b6501bdb)](https://www.codacy.com/manual/owncloud/ocis-konnectd?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-konnectd&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/f6f9033737404c9da3ba4738b6501bdb)](https://www.codacy.com/manual/owncloud/ocis-konnectd?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-konnectd&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-konnectd?status.svg)](http://godoc.org/github.com/owncloud/ocis-konnectd) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-konnectd)](http://goreportcard.com/report/github.com/owncloud/ocis-konnectd) [![](https://images.microbadger.com/badges/image/owncloud/ocis-konnectd.svg)](http://microbadger.com/images/owncloud/ocis-konnectd "Get your own image badge on microbadger.com") @@ -28,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/konnectd/changelog/0.1.0_2020-03-18/disable-identifier.md b/konnectd/changelog/0.1.0_2020-03-18/disable-identifier.md index 4cb8bfcaf..0ec4fb8dd 100644 --- a/konnectd/changelog/0.1.0_2020-03-18/disable-identifier.md +++ b/konnectd/changelog/0.1.0_2020-03-18/disable-identifier.md @@ -3,4 +3,4 @@ Change: Dummy index.html is not required anymore by upstream The workaround was required as identifier webapp was mandatory, but we serve it from memory. This also introduces --disable-identifier-webapp flag. - +https://github.com/owncloud/ocis/konnectd/issues/25 diff --git a/konnectd/changelog/0.1.0_2020-03-18/initial-release.md b/konnectd/changelog/0.1.0_2020-03-18/initial-release.md index aca0ba251..63ce8845e 100644 --- a/konnectd/changelog/0.1.0_2020-03-18/initial-release.md +++ b/konnectd/changelog/0.1.0_2020-03-18/initial-release.md @@ -4,4 +4,4 @@ Just prepare an initial basic version to serve konnectd embedded into our microservice infrastructure in the scope of the ownCloud Infinite Scale project. - +https://github.com/owncloud/ocis/konnectd/issues/1 diff --git a/konnectd/changelog/0.1.0_2020-03-18/new-ocis-config.md b/konnectd/changelog/0.1.0_2020-03-18/new-ocis-config.md index 44e186455..21c7be47f 100644 --- a/konnectd/changelog/0.1.0_2020-03-18/new-ocis-config.md +++ b/konnectd/changelog/0.1.0_2020-03-18/new-ocis-config.md @@ -5,4 +5,4 @@ We changed the default configuration to integrate better with ocis. The default ldap port changes to 9125, which is used by ocis-glauth and we use ocis-proxy to do the tls offloading. Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` - +https://github.com/owncloud/ocis/konnectd/pull/52 diff --git a/konnectd/changelog/0.1.0_2020-03-18/set-csp-nonce.md b/konnectd/changelog/0.1.0_2020-03-18/set-csp-nonce.md index 6a6c1ea9a..01654ff73 100644 --- a/konnectd/changelog/0.1.0_2020-03-18/set-csp-nonce.md +++ b/konnectd/changelog/0.1.0_2020-03-18/set-csp-nonce.md @@ -1,4 +1,4 @@ Bugfix: Generate a random CSP-Nonce in the webapp - - +https://github.com/owncloud/ocis/konnectd/issues/17 +https://github.com/owncloud/ocis/konnectd/pull/29 diff --git a/konnectd/changelog/0.2.0_2020-03-18/change-internal-defaults.md b/konnectd/changelog/0.2.0_2020-03-18/change-internal-defaults.md index f41771b7a..99b9902af 100644 --- a/konnectd/changelog/0.2.0_2020-03-18/change-internal-defaults.md +++ b/konnectd/changelog/0.2.0_2020-03-18/change-internal-defaults.md @@ -1,3 +1,3 @@ Enhancement: Change default config for single-binary - +https://github.com/owncloud/ocis/konnectd/pull/55 diff --git a/konnectd/changelog/0.3.0_2020-04-14/change_redirect_uri.md b/konnectd/changelog/0.3.0_2020-04-14/change_redirect_uri.md index 678643046..774041da0 100644 --- a/konnectd/changelog/0.3.0_2020-04-14/change_redirect_uri.md +++ b/konnectd/changelog/0.3.0_2020-04-14/change_redirect_uri.md @@ -2,4 +2,4 @@ Change: add a trailing slash to trusted redirect uris Phoenix changed the redirect uri to `#/login` that means it will contain a trailing slash after the base url. - +https://github.com/owncloud/ocis/konnectd/issues/26 diff --git a/konnectd/changelog/0.3.0_2020-04-14/client_names.md b/konnectd/changelog/0.3.0_2020-04-14/client_names.md index b1c41c3c7..640a80f26 100644 --- a/konnectd/changelog/0.3.0_2020-04-14/client_names.md +++ b/konnectd/changelog/0.3.0_2020-04-14/client_names.md @@ -2,4 +2,4 @@ Change: improve client identifiers for end users Improved end user facing client names in default identifier-registration.yaml - +https://github.com/owncloud/ocis/konnectd/pull/62 diff --git a/konnectd/changelog/0.3.0_2020-04-14/logout_redirect.md b/konnectd/changelog/0.3.0_2020-04-14/logout_redirect.md index 5cb6f075f..2f2ddeb74 100644 --- a/konnectd/changelog/0.3.0_2020-04-14/logout_redirect.md +++ b/konnectd/changelog/0.3.0_2020-04-14/logout_redirect.md @@ -2,4 +2,4 @@ Bugfix: redirect to the provided uri The phoenix client was not set as trusted therefore when logging out the user was redirected to a default page instead of the provided url. - +https://github.com/owncloud/ocis/konnectd/issues/26 diff --git a/konnectd/changelog/0.3.0_2020-04-14/use-konnect-upstream.md b/konnectd/changelog/0.3.0_2020-04-14/use-konnect-upstream.md index b386b3e63..cac187452 100644 --- a/konnectd/changelog/0.3.0_2020-04-14/use-konnect-upstream.md +++ b/konnectd/changelog/0.3.0_2020-04-14/use-konnect-upstream.md @@ -1,3 +1,4 @@ Enhancement: Use upstream version of konnect library - +https://github.com/owncloud/product/issues/14 + diff --git a/konnectd/changelog/0.3.2_2020-07-23/use-alpine-latest.md b/konnectd/changelog/0.3.2_2020-07-23/use-alpine-latest.md index 88898e87b..e060fa2a0 100644 --- a/konnectd/changelog/0.3.2_2020-07-23/use-alpine-latest.md +++ b/konnectd/changelog/0.3.2_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/konnectd/pull/71 diff --git a/konnectd/docs/_index.md b/konnectd/docs/_index.md index 96b05a089..b12cd3b0e 100644 --- a/konnectd/docs/_index.md +++ b/konnectd/docs/_index.md @@ -1,9 +1,8 @@ -* * * - +--- title: Konnectd -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an OpenID Connect provider which is the default way to authenticate in OCIS. diff --git a/konnectd/docs/building.md b/konnectd/docs/building.md index e75779e85..b044dd1d4 100644 --- a/konnectd/docs/building.md +++ b/konnectd/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2020-02-21T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-konnectd.git cd ocis-konnectd -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-konnectd -h` to see all available options and subcommands. diff --git a/konnectd/docs/configuration.md b/konnectd/docs/configuration.md index eaffb1b59..281b64fde 100644 --- a/konnectd/docs/configuration.md +++ b/konnectd/docs/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:47+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ Serve Konnectd API for oCIS Usage: `ocis-konnectd [global options] command [command options] [arguments...]` -\--config-file | $KONNECTD_CONFIG_FILE +--config-file | $KONNECTD_CONFIG_FILE : Path to config file. -\--log-level | $KONNECTD_LOG_LEVEL +--log-level | $KONNECTD_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $KONNECTD_LOG_PRETTY +--log-pretty | $KONNECTD_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $KONNECTD_LOG_COLOR +--log-color | $KONNECTD_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis-konnectd health [command options] [arguments...]` -\--debug-addr | $KONNECTD_DEBUG_ADDR +--debug-addr | $KONNECTD_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9134`. ### ocis-konnectd server @@ -73,104 +72,105 @@ Start integrated server Usage: `ocis-konnectd server [command options] [arguments...]` -\--tracing-enabled | $KONNECTD_TRACING_ENABLED +--tracing-enabled | $KONNECTD_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $KONNECTD_TRACING_TYPE +--tracing-type | $KONNECTD_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $KONNECTD_TRACING_ENDPOINT +--tracing-endpoint | $KONNECTD_TRACING_ENDPOINT : Endpoint for the agent. -\--tracing-collector | $KONNECTD_TRACING_COLLECTOR +--tracing-collector | $KONNECTD_TRACING_COLLECTOR : Endpoint for the collector. -\--tracing-service | $KONNECTD_TRACING_SERVICE +--tracing-service | $KONNECTD_TRACING_SERVICE : Service name for tracing. Default: `konnectd`. -\--debug-addr | $KONNECTD_DEBUG_ADDR +--debug-addr | $KONNECTD_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9134`. -\--debug-token | $KONNECTD_DEBUG_TOKEN +--debug-token | $KONNECTD_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $KONNECTD_DEBUG_PPROF +--debug-pprof | $KONNECTD_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $KONNECTD_DEBUG_ZPAGES +--debug-zpages | $KONNECTD_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $KONNECTD_HTTP_ADDR +--http-addr | $KONNECTD_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9130`. -\--http-root | $KONNECTD_HTTP_ROOT +--http-root | $KONNECTD_HTTP_ROOT : Root path of http server. Default: `/`. -\--http-namespace | $KONNECTD_HTTP_NAMESPACE +--http-namespace | $KONNECTD_HTTP_NAMESPACE : Set the base namespace for service discovery. Default: `com.owncloud.web`. -\--identity-manager | $KONNECTD_IDENTITY_MANAGER +--identity-manager | $KONNECTD_IDENTITY_MANAGER : Identity manager (one of ldap,kc,cookie,dummy). Default: `ldap`. -\--transport-tls-cert | $KONNECTD_TRANSPORT_TLS_CERT +--transport-tls-cert | $KONNECTD_TRANSPORT_TLS_CERT : Certificate file for transport encryption. -\--transport-tls-key | $KONNECTD_TRANSPORT_TLS_KEY +--transport-tls-key | $KONNECTD_TRANSPORT_TLS_KEY : Secret file for transport encryption. -\--iss | $KONNECTD_ISS +--iss | $KONNECTD_ISS : OIDC issuer URL. Default: `https://localhost:9200`. -\--signing-kid | $KONNECTD_SIGNING_KID +--signing-kid | $KONNECTD_SIGNING_KID : Value of kid field to use in created tokens (uniquely identifying the signing-private-key). -\--validation-keys-path | $KONNECTD_VALIDATION_KEYS_PATH +--validation-keys-path | $KONNECTD_VALIDATION_KEYS_PATH : Full path to a folder containg PEM encoded private or public key files used for token validaton (file name without extension is used as kid). -\--encryption-secret | $KONNECTD_ENCRYPTION_SECRET +--encryption-secret | $KONNECTD_ENCRYPTION_SECRET : Full path to a file containing a %d bytes secret key. -\--signing-method | $KONNECTD_SIGNING_METHOD +--signing-method | $KONNECTD_SIGNING_METHOD : JWT default signing method. Default: `PS256`. -\--uri-base-path | $KONNECTD_URI_BASE_PATH +--uri-base-path | $KONNECTD_URI_BASE_PATH : Custom base path for URI endpoints. -\--sign-in-uri | $KONNECTD_SIGN_IN_URI +--sign-in-uri | $KONNECTD_SIGN_IN_URI : Custom redirection URI to sign-in form. -\--signed-out-uri | $KONNECTD_SIGN_OUT_URI +--signed-out-uri | $KONNECTD_SIGN_OUT_URI : Custom redirection URI to signed-out goodbye page. -\--authorization-endpoint-uri | $KONNECTD_ENDPOINT_URI +--authorization-endpoint-uri | $KONNECTD_ENDPOINT_URI : Custom authorization endpoint URI. -\--endsession-endpoint-uri | $KONNECTD_ENDSESSION_ENDPOINT_URI +--endsession-endpoint-uri | $KONNECTD_ENDSESSION_ENDPOINT_URI : Custom endsession endpoint URI. -\--asset-path | $KONNECTD_ASSET_PATH +--asset-path | $KONNECTD_ASSET_PATH : Path to custom assets. -\--identifier-client-path | $KONNECTD_IDENTIFIER_CLIENT_PATH +--identifier-client-path | $KONNECTD_IDENTIFIER_CLIENT_PATH : Path to the identifier web client base folder. Default: `/var/tmp/konnectd`. -\--identifier-registration-conf | $KONNECTD_IDENTIFIER_REGISTRATION_CONF +--identifier-registration-conf | $KONNECTD_IDENTIFIER_REGISTRATION_CONF : Path to a identifier-registration.yaml configuration file. Default: `./config/identifier-registration.yaml`. -\--identifier-scopes-conf | $KONNECTD_IDENTIFIER_SCOPES_CONF +--identifier-scopes-conf | $KONNECTD_IDENTIFIER_SCOPES_CONF : Path to a scopes.yaml configuration file. -\--insecure | $KONNECTD_INSECURE +--insecure | $KONNECTD_INSECURE : Disable TLS certificate and hostname validation. -\--tls | $KONNECTD_TLS +--tls | $KONNECTD_TLS : Use TLS (disable only if konnectd is behind a TLS-terminating reverse-proxy).. Default: `false`. -\--allow-client-guests | $KONNECTD_ALLOW_CLIENT_GUESTS +--allow-client-guests | $KONNECTD_ALLOW_CLIENT_GUESTS : Allow sign in of client controlled guest users. -\--allow-dynamic-client-registration | $KONNECTD_ALLOW_DYNAMIC_CLIENT_REGISTRATION +--allow-dynamic-client-registration | $KONNECTD_ALLOW_DYNAMIC_CLIENT_REGISTRATION : Allow dynamic OAuth2 client registration. -\--disable-identifier-webapp | $KONNECTD_DISABLE_IDENTIFIER_WEBAPP +--disable-identifier-webapp | $KONNECTD_DISABLE_IDENTIFIER_WEBAPP : Disable built-in identifier-webapp to use a frontend hosted elsewhere.. Default: `true`. + diff --git a/konnectd/docs/getting-started.md b/konnectd/docs/getting-started.md index d74c63555..96be58e3b 100644 --- a/konnectd/docs/getting-started.md +++ b/konnectd/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-konnectd geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-konnectd. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-konnectd ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-konnectd/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-konnectd/testing/ ```console curl https://download.owncloud.com/ocis/ocis-konnectd/1.0.0-beta1/ocis-konnectd-1.0.0-beta1-darwin-amd64 --output ocis-konnectd @@ -42,17 +41,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-konnectd server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-konnectd health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/ocis-phoenix/CHANGELOG.md b/ocis-phoenix/CHANGELOG.md index 6f635be94..7d00f6560 100644 --- a/ocis-phoenix/CHANGELOG.md +++ b/ocis-phoenix/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-phoenix unreleased. @@ -6,27 +6,27 @@ The following sections list the changes in ocis-phoenix unreleased. ## Summary -- Bugfix - Fix external app URLs: [#218](https://github.com/owncloud/product/issues/218) -- Change - Remove pdf-viewer from default apps: [#85](https://github.com/owncloud/ocis/ocis-phoenix/pull/85) +* Bugfix - Fix external app URLs: [#218](https://github.com/owncloud/product/issues/218) +* Change - Remove pdf-viewer from default apps: [#85](https://github.com/owncloud/ocis/ocis-phoenix/pull/85) ## Details -- Bugfix - Fix external app URLs: [#218](https://github.com/owncloud/product/issues/218) +* Bugfix - Fix external app URLs: [#218](https://github.com/owncloud/product/issues/218) - The URLs for the default set of external apps was hardcoded to localhost:9200. We fixed that by - using relative paths instead. + The URLs for the default set of external apps was hardcoded to localhost:9200. We fixed that by + using relative paths instead. - - + https://github.com/owncloud/product/issues/218 + https://github.com/owncloud/ocis/ocis-phoenix/pull/83 -- Change - Remove pdf-viewer from default apps: [#85](https://github.com/owncloud/ocis/ocis-phoenix/pull/85) +* Change - Remove pdf-viewer from default apps: [#85](https://github.com/owncloud/ocis/ocis-phoenix/pull/85) - OCIS-web doesn't have a dedicated pdf-viewer app anymore but instead uses the default browser - behaviour for PDFs. We removed pdf-viewer from the set of default apps. + OCIS-web doesn't have a dedicated pdf-viewer app anymore but instead uses the default browser + behaviour for PDFs. We removed pdf-viewer from the set of default apps. - + https://github.com/owncloud/ocis/ocis-phoenix/pull/85 -# Changelog for [0.13.0] \(2020-08-25) +# Changelog for [0.13.0] (2020-08-25) The following sections list the changes in ocis-phoenix 0.13.0. @@ -34,18 +34,18 @@ The following sections list the changes in ocis-phoenix 0.13.0. ## Summary -- Change - Update Phoenix: [#81](https://github.com/owncloud/ocis/ocis-phoenix/pull/81) +* Change - Update Phoenix: [#81](https://github.com/owncloud/ocis/ocis-phoenix/pull/81) ## Details -- Change - Update Phoenix: [#81](https://github.com/owncloud/ocis/ocis-phoenix/pull/81) +* Change - Update Phoenix: [#81](https://github.com/owncloud/ocis/ocis-phoenix/pull/81) - Updated phoenix from v0.15.0 to v0.16.0 + Updated phoenix from v0.15.0 to v0.16.0 - - + https://github.com/owncloud/ocis/ocis-phoenix/pull/81 + https://github.com/owncloud/phoenix/releases/tag/v0.16.0 -# Changelog for [0.12.0] \(2020-08-19) +# Changelog for [0.12.0] (2020-08-19) The following sections list the changes in ocis-phoenix 0.12.0. @@ -53,26 +53,26 @@ The following sections list the changes in ocis-phoenix 0.12.0. ## Summary -- Change - Enable Settings and Accounts apps by default: [#80](https://github.com/owncloud/ocis/ocis-phoenix/pull/80) -- Change - Update Phoenix: [#79](https://github.com/owncloud/ocis/ocis-phoenix/pull/79) +* Change - Enable Settings and Accounts apps by default: [#80](https://github.com/owncloud/ocis/ocis-phoenix/pull/80) +* Change - Update Phoenix: [#79](https://github.com/owncloud/ocis/ocis-phoenix/pull/79) ## Details -- Change - Enable Settings and Accounts apps by default: [#80](https://github.com/owncloud/ocis/ocis-phoenix/pull/80) +* Change - Enable Settings and Accounts apps by default: [#80](https://github.com/owncloud/ocis/ocis-phoenix/pull/80) - The default ocis-web config now adds the frontend of ocis-accounts and ocis-settings to the - builtin web config. + The default ocis-web config now adds the frontend of ocis-accounts and ocis-settings to the + builtin web config. - + https://github.com/owncloud/ocis/ocis-phoenix/pull/80 -- Change - Update Phoenix: [#79](https://github.com/owncloud/ocis/ocis-phoenix/pull/79) +* Change - Update Phoenix: [#79](https://github.com/owncloud/ocis/ocis-phoenix/pull/79) - Updated phoenix from v0.14.0 to v0.15.0 + Updated phoenix from v0.14.0 to v0.15.0 - - + https://github.com/owncloud/ocis/ocis-phoenix/pull/79 + https://github.com/owncloud/phoenix/releases/tag/v0.15.0 -# Changelog for [0.11.0] \(2020-08-17) +# Changelog for [0.11.0] (2020-08-17) The following sections list the changes in ocis-phoenix 0.11.0. @@ -80,45 +80,45 @@ The following sections list the changes in ocis-phoenix 0.11.0. ## Summary -- Bugfix - Exit when assets or config are not found: [#76](https://github.com/owncloud/ocis/ocis-phoenix/pull/76) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#73](https://github.com/owncloud/ocis/ocis-phoenix/pull/73) -- Change - Hide searchbar by default: [#116](https://github.com/owncloud/product/issues/116) -- Change - Update Phoenix: [#78](https://github.com/owncloud/ocis/ocis-phoenix/pull/78) +* Bugfix - Exit when assets or config are not found: [#76](https://github.com/owncloud/ocis/ocis-phoenix/pull/76) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#73](https://github.com/owncloud/ocis/ocis-phoenix/pull/73) +* Change - Hide searchbar by default: [#116](https://github.com/owncloud/product/issues/116) +* Change - Update Phoenix: [#78](https://github.com/owncloud/ocis/ocis-phoenix/pull/78) ## Details -- Bugfix - Exit when assets or config are not found: [#76](https://github.com/owncloud/ocis/ocis-phoenix/pull/76) +* Bugfix - Exit when assets or config are not found: [#76](https://github.com/owncloud/ocis/ocis-phoenix/pull/76) - When a non-existing assets folder is specified, there was only a warning log statement and the - service served the builtin assets instead. It is safe to exit the service in such a scenario, - instead of serving other assets than specified. We changed the log level to `Fatal` on - non-existing assets. Similar for the web config, it was not failing on service level, but only - showing an error in the web ui, wenn the specified config file could not be found. We changed the - log level to `Fatal` as well. + When a non-existing assets folder is specified, there was only a warning log statement and the + service served the builtin assets instead. It is safe to exit the service in such a scenario, + instead of serving other assets than specified. We changed the log level to `Fatal` on + non-existing assets. Similar for the web config, it was not failing on service level, but only + showing an error in the web ui, wenn the specified config file could not be found. We changed the + log level to `Fatal` as well. - - + https://github.com/owncloud/ocis/ocis-phoenix/pull/76 + https://github.com/owncloud/ocis/ocis-phoenix/pull/77 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#73](https://github.com/owncloud/ocis/ocis-phoenix/pull/73) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#73](https://github.com/owncloud/ocis/ocis-phoenix/pull/73) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/ocis-phoenix/pull/73 -- Change - Hide searchbar by default: [#116](https://github.com/owncloud/product/issues/116) +* Change - Hide searchbar by default: [#116](https://github.com/owncloud/product/issues/116) - Since file search is not working at the moment we decided to hide the search bar by default. + Since file search is not working at the moment we decided to hide the search bar by default. - - + https://github.com/owncloud/product/issues/116 + https://github.com/owncloud/ocis/ocis-phoenix/pull/74 -- Change - Update Phoenix: [#78](https://github.com/owncloud/ocis/ocis-phoenix/pull/78) +* Change - Update Phoenix: [#78](https://github.com/owncloud/ocis/ocis-phoenix/pull/78) - Updated phoenix from v0.13.0 to v0.14.0 + Updated phoenix from v0.13.0 to v0.14.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/78 -# Changelog for [0.10.0] \(2020-07-17) +# Changelog for [0.10.0] (2020-07-17) The following sections list the changes in ocis-phoenix 0.10.0. @@ -126,17 +126,17 @@ The following sections list the changes in ocis-phoenix 0.10.0. ## Summary -- Change - Update Phoenix: [#72](https://github.com/owncloud/ocis/ocis-phoenix/pull/72) +* Change - Update Phoenix: [#72](https://github.com/owncloud/ocis/ocis-phoenix/pull/72) ## Details -- Change - Update Phoenix: [#72](https://github.com/owncloud/ocis/ocis-phoenix/pull/72) +* Change - Update Phoenix: [#72](https://github.com/owncloud/ocis/ocis-phoenix/pull/72) - Updated phoenix from v0.12.0 to v0.13.0 + Updated phoenix from v0.12.0 to v0.13.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/72 -# Changelog for [0.9.0] \(2020-07-10) +# Changelog for [0.9.0] (2020-07-10) The following sections list the changes in ocis-phoenix 0.9.0. @@ -144,26 +144,26 @@ The following sections list the changes in ocis-phoenix 0.9.0. ## Summary -- Bugfix - Allow silent refresh of access token: [#69](https://github.com/owncloud/ocis-konnectd/issues/69) -- Change - Update Phoenix: [#70](https://github.com/owncloud/ocis/ocis-phoenix/pull/70) +* Bugfix - Allow silent refresh of access token: [#69](https://github.com/owncloud/ocis-konnectd/issues/69) +* Change - Update Phoenix: [#70](https://github.com/owncloud/ocis/ocis-phoenix/pull/70) ## Details -- Bugfix - Allow silent refresh of access token: [#69](https://github.com/owncloud/ocis-konnectd/issues/69) +* Bugfix - Allow silent refresh of access token: [#69](https://github.com/owncloud/ocis-konnectd/issues/69) - Sets the `X-Frame-Options` header to `SAMEORIGIN` so the oidc client can refresh the token in - an iframe. + Sets the `X-Frame-Options` header to `SAMEORIGIN` so the oidc client can refresh the token in + an iframe. - - + https://github.com/owncloud/ocis-konnectd/issues/69 + https://github.com/owncloud/ocis/ocis-phoenix/pull/69 -- Change - Update Phoenix: [#70](https://github.com/owncloud/ocis/ocis-phoenix/pull/70) +* Change - Update Phoenix: [#70](https://github.com/owncloud/ocis/ocis-phoenix/pull/70) - Updated phoenix from v0.11.1 to v0.12.0 + Updated phoenix from v0.11.1 to v0.12.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/70 -# Changelog for [0.8.1] \(2020-06-29) +# Changelog for [0.8.1] (2020-06-29) The following sections list the changes in ocis-phoenix 0.8.1. @@ -171,17 +171,17 @@ The following sections list the changes in ocis-phoenix 0.8.1. ## Summary -- Change - Update Phoenix: [#68](https://github.com/owncloud/ocis/ocis-phoenix/pull/68) +* Change - Update Phoenix: [#68](https://github.com/owncloud/ocis/ocis-phoenix/pull/68) ## Details -- Change - Update Phoenix: [#68](https://github.com/owncloud/ocis/ocis-phoenix/pull/68) +* Change - Update Phoenix: [#68](https://github.com/owncloud/ocis/ocis-phoenix/pull/68) - Updated phoenix from v0.11.0 to v0.11.1 + Updated phoenix from v0.11.0 to v0.11.1 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/68 -# Changelog for [0.8.0] \(2020-06-26) +# Changelog for [0.8.0] (2020-06-26) The following sections list the changes in ocis-phoenix 0.8.0. @@ -189,17 +189,17 @@ The following sections list the changes in ocis-phoenix 0.8.0. ## Summary -- Change - Update Phoenix: [#67](https://github.com/owncloud/ocis/ocis-phoenix/pull/67) +* Change - Update Phoenix: [#67](https://github.com/owncloud/ocis/ocis-phoenix/pull/67) ## Details -- Change - Update Phoenix: [#67](https://github.com/owncloud/ocis/ocis-phoenix/pull/67) +* Change - Update Phoenix: [#67](https://github.com/owncloud/ocis/ocis-phoenix/pull/67) - Updated phoenix from v0.10.0 to v0.11.0 + Updated phoenix from v0.10.0 to v0.11.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/67 -# Changelog for [0.7.0] \(2020-05-26) +# Changelog for [0.7.0] (2020-05-26) The following sections list the changes in ocis-phoenix 0.7.0. @@ -207,17 +207,17 @@ The following sections list the changes in ocis-phoenix 0.7.0. ## Summary -- Change - Update Phoenix: [#66](https://github.com/owncloud/ocis/ocis-phoenix/pull/66) +* Change - Update Phoenix: [#66](https://github.com/owncloud/ocis/ocis-phoenix/pull/66) ## Details -- Change - Update Phoenix: [#66](https://github.com/owncloud/ocis/ocis-phoenix/pull/66) +* Change - Update Phoenix: [#66](https://github.com/owncloud/ocis/ocis-phoenix/pull/66) - Updated phoenix from v0.9.0 to v0.10.0 + Updated phoenix from v0.9.0 to v0.10.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/66 -# Changelog for [0.6.0] \(2020-04-28) +# Changelog for [0.6.0] (2020-04-28) The following sections list the changes in ocis-phoenix 0.6.0. @@ -225,17 +225,17 @@ The following sections list the changes in ocis-phoenix 0.6.0. ## Summary -- Change - Update Phoenix: [#65](https://github.com/owncloud/ocis/ocis-phoenix/pull/65) +* Change - Update Phoenix: [#65](https://github.com/owncloud/ocis/ocis-phoenix/pull/65) ## Details -- Change - Update Phoenix: [#65](https://github.com/owncloud/ocis/ocis-phoenix/pull/65) +* Change - Update Phoenix: [#65](https://github.com/owncloud/ocis/ocis-phoenix/pull/65) - Updated phoenix from v0.8.0 to v0.9.0 + Updated phoenix from v0.8.0 to v0.9.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/65 -# Changelog for [0.5.0] \(2020-04-14) +# Changelog for [0.5.0] (2020-04-14) The following sections list the changes in ocis-phoenix 0.5.0. @@ -243,17 +243,17 @@ The following sections list the changes in ocis-phoenix 0.5.0. ## Summary -- Change - Update Phoenix: [#63](https://github.com/owncloud/ocis/ocis-phoenix/pull/63) +* Change - Update Phoenix: [#63](https://github.com/owncloud/ocis/ocis-phoenix/pull/63) ## Details -- Change - Update Phoenix: [#63](https://github.com/owncloud/ocis/ocis-phoenix/pull/63) +* Change - Update Phoenix: [#63](https://github.com/owncloud/ocis/ocis-phoenix/pull/63) - Updated phoenix from v0.7.0 to v0.8.0 + Updated phoenix from v0.7.0 to v0.8.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/63 -# Changelog for [0.4.1] \(2020-04-01) +# Changelog for [0.4.1] (2020-04-01) The following sections list the changes in ocis-phoenix 0.4.1. @@ -261,17 +261,17 @@ The following sections list the changes in ocis-phoenix 0.4.1. ## Summary -- Bugfix - Create a new tag to fix v0.4.0: [#62](https://github.com/owncloud/ocis/ocis-phoenix/pull/62) +* Bugfix - Create a new tag to fix v0.4.0: [#62](https://github.com/owncloud/ocis/ocis-phoenix/pull/62) ## Details -- Bugfix - Create a new tag to fix v0.4.0: [#62](https://github.com/owncloud/ocis/ocis-phoenix/pull/62) +* Bugfix - Create a new tag to fix v0.4.0: [#62](https://github.com/owncloud/ocis/ocis-phoenix/pull/62) - Release v0.4.0 is using the wrong assets. We fixed that by creating a new release. + Release v0.4.0 is using the wrong assets. We fixed that by creating a new release. - + https://github.com/owncloud/ocis/ocis-phoenix/pull/62 -# Changelog for [0.4.0] \(2020-03-31) +# Changelog for [0.4.0] (2020-03-31) The following sections list the changes in ocis-phoenix 0.4.0. @@ -279,25 +279,25 @@ The following sections list the changes in ocis-phoenix 0.4.0. ## Summary -- Change - Update Phoenix: [#60](https://github.com/owncloud/ocis/ocis-phoenix/pull/60) -- Enhancement - Configuration: [#57](https://github.com/owncloud/ocis/ocis-phoenix/pull/57) +* Change - Update Phoenix: [#60](https://github.com/owncloud/ocis/ocis-phoenix/pull/60) +* Enhancement - Configuration: [#57](https://github.com/owncloud/ocis/ocis-phoenix/pull/57) ## Details -- Change - Update Phoenix: [#60](https://github.com/owncloud/ocis/ocis-phoenix/pull/60) +* Change - Update Phoenix: [#60](https://github.com/owncloud/ocis/ocis-phoenix/pull/60) - Updated phoenix from v0.6.0 to v0.7.0 + Updated phoenix from v0.6.0 to v0.7.0 - + https://github.com/owncloud/ocis/ocis-phoenix/pull/60 -- Enhancement - Configuration: [#57](https://github.com/owncloud/ocis/ocis-phoenix/pull/57) +* Enhancement - Configuration: [#57](https://github.com/owncloud/ocis/ocis-phoenix/pull/57) - Extensions should be responsible of configuring themselves. We use Viper for config loading - from default paths. Environment variables **WILL** take precedence over config files. + Extensions should be responsible of configuring themselves. We use Viper for config loading + from default paths. Environment variables **WILL** take precedence over config files. - + https://github.com/owncloud/ocis/ocis-phoenix/pull/57 -# Changelog for [0.2.0] \(2020-03-17) +# Changelog for [0.2.0] (2020-03-17) The following sections list the changes in ocis-phoenix 0.2.0. @@ -305,34 +305,34 @@ The following sections list the changes in ocis-phoenix 0.2.0. ## Summary -- Bugfix - Config file value not being read: [#45](https://github.com/owncloud/ocis/ocis-phoenix/pull/45) -- Enhancement - Update to Phoenix v0.5.0: [#43](https://github.com/owncloud/ocis/ocis-phoenix/issues/43) -- Enhancement - Update to Phoenix v0.6.0: [#53](https://github.com/owncloud/ocis/ocis-phoenix/pull/53) +* Bugfix - Config file value not being read: [#45](https://github.com/owncloud/ocis/ocis-phoenix/pull/45) +* Enhancement - Update to Phoenix v0.5.0: [#43](https://github.com/owncloud/ocis/ocis-phoenix/issues/43) +* Enhancement - Update to Phoenix v0.6.0: [#53](https://github.com/owncloud/ocis/ocis-phoenix/pull/53) ## Details -- Bugfix - Config file value not being read: [#45](https://github.com/owncloud/ocis/ocis-phoenix/pull/45) +* Bugfix - Config file value not being read: [#45](https://github.com/owncloud/ocis/ocis-phoenix/pull/45) - There was a bug in which phoenix config is always set to the default values and the contents of the - config file were actually ignored. + There was a bug in which phoenix config is always set to the default values and the contents of the + config file were actually ignored. - - - + https://github.com/owncloud/ocis/ocis-phoenix/issues/46 + https://github.com/owncloud/ocis/ocis-phoenix/issues/47 + https://github.com/owncloud/ocis/ocis-phoenix/pull/45 -- Enhancement - Update to Phoenix v0.5.0: [#43](https://github.com/owncloud/ocis/ocis-phoenix/issues/43) +* Enhancement - Update to Phoenix v0.5.0: [#43](https://github.com/owncloud/ocis/ocis-phoenix/issues/43) - Use the latest phoenix release + Use the latest phoenix release - + https://github.com/owncloud/ocis/ocis-phoenix/issues/43 -- Enhancement - Update to Phoenix v0.6.0: [#53](https://github.com/owncloud/ocis/ocis-phoenix/pull/53) +* Enhancement - Update to Phoenix v0.6.0: [#53](https://github.com/owncloud/ocis/ocis-phoenix/pull/53) - Use the latest phoenix release + Use the latest phoenix release - + https://github.com/owncloud/ocis/ocis-phoenix/pull/53 -# Changelog for [0.3.0] \(2020-03-17) +# Changelog for [0.3.0] (2020-03-17) The following sections list the changes in ocis-phoenix 0.3.0. @@ -340,19 +340,19 @@ The following sections list the changes in ocis-phoenix 0.3.0. ## Summary -- Change - Default to running behind ocis-proxy: [#55](https://github.com/owncloud/ocis/ocis-phoenix/pull/55) +* Change - Default to running behind ocis-proxy: [#55](https://github.com/owncloud/ocis/ocis-phoenix/pull/55) ## Details -- Change - Default to running behind ocis-proxy: [#55](https://github.com/owncloud/ocis/ocis-phoenix/pull/55) +* Change - Default to running behind ocis-proxy: [#55](https://github.com/owncloud/ocis/ocis-phoenix/pull/55) - We changed the default configuration to integrate better with ocis. + We changed the default configuration to integrate better with ocis. - Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` + Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` - + https://github.com/owncloud/ocis/ocis-phoenix/pull/55 -# Changelog for [0.1.0] \(2020-02-03) +# Changelog for [0.1.0] (2020-02-03) The following sections list the changes in ocis-phoenix 0.1.0. @@ -360,13 +360,14 @@ The following sections list the changes in ocis-phoenix 0.1.0. ## Summary -- Change - Initial release of basic version: [#3](https://github.com/owncloud/ocis/ocis-phoenix/issues/3) +* Change - Initial release of basic version: [#3](https://github.com/owncloud/ocis/ocis-phoenix/issues/3) ## Details -- Change - Initial release of basic version: [#3](https://github.com/owncloud/ocis/ocis-phoenix/issues/3) +* Change - Initial release of basic version: [#3](https://github.com/owncloud/ocis/ocis-phoenix/issues/3) - Just prepared an initial basic version to serve Phoenix for the ownCloud Infinite Scale - project. It just provides a minimal viable product to demonstrate the microservice pattern. + Just prepared an initial basic version to serve Phoenix for the ownCloud Infinite Scale + project. It just provides a minimal viable product to demonstrate the microservice pattern. + + https://github.com/owncloud/ocis/ocis-phoenix/issues/3 - diff --git a/ocis-phoenix/README.md b/ocis-phoenix/README.md index 6c7205200..1c2c5632b 100644 --- a/ocis-phoenix/README.md +++ b/ocis-phoenix/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-phoenix/status.svg)](https://cloud.drone.io/owncloud/ocis-phoenix) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/afe89eb0894848c5b67dc0343afd1df9)](https://www.codacy.com/app/owncloud/ocis-phoenix?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-phoenix&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/afe89eb0894848c5b67dc0343afd1df9)](https://www.codacy.com/app/owncloud/ocis-phoenix?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-phoenix&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-phoenix?status.svg)](http://godoc.org/github.com/owncloud/ocis-phoenix) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-phoenix)](http://goreportcard.com/report/github.com/owncloud/ocis-phoenix) [![](https://images.microbadger.com/badges/image/owncloud/ocis-phoenix.svg)](http://microbadger.com/images/owncloud/ocis-phoenix "Get your own image badge on microbadger.com") @@ -28,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/ocis-phoenix/changelog/0.1.0_2020-02-03/initial-release.md b/ocis-phoenix/changelog/0.1.0_2020-02-03/initial-release.md index 26c944aec..3b324232c 100644 --- a/ocis-phoenix/changelog/0.1.0_2020-02-03/initial-release.md +++ b/ocis-phoenix/changelog/0.1.0_2020-02-03/initial-release.md @@ -4,4 +4,4 @@ Just prepared an initial basic version to serve Phoenix for the ownCloud Infinite Scale project. It just provides a minimal viable product to demonstrate the microservice pattern. - +https://github.com/owncloud/ocis/ocis-phoenix/issues/3 diff --git a/ocis-phoenix/changelog/0.11.0_2020-08-17/exit-on-unresolved-assets.md b/ocis-phoenix/changelog/0.11.0_2020-08-17/exit-on-unresolved-assets.md index 47a4599dd..1a8711c50 100644 --- a/ocis-phoenix/changelog/0.11.0_2020-08-17/exit-on-unresolved-assets.md +++ b/ocis-phoenix/changelog/0.11.0_2020-08-17/exit-on-unresolved-assets.md @@ -6,5 +6,5 @@ than specified. We changed the log level to `Fatal` on non-existing assets. Similar for the web config, it was not failing on service level, but only showing an error in the web ui, wenn the specified config file could not be found. We changed the log level to `Fatal` as well. - - +https://github.com/owncloud/ocis/ocis-phoenix/pull/76 +https://github.com/owncloud/ocis/ocis-phoenix/pull/77 diff --git a/ocis-phoenix/changelog/0.11.0_2020-08-17/hide-searchbar.md b/ocis-phoenix/changelog/0.11.0_2020-08-17/hide-searchbar.md index 07383b81c..a5b11f496 100644 --- a/ocis-phoenix/changelog/0.11.0_2020-08-17/hide-searchbar.md +++ b/ocis-phoenix/changelog/0.11.0_2020-08-17/hide-searchbar.md @@ -2,5 +2,5 @@ Change: hide searchbar by default Since file search is not working at the moment we decided to hide the search bar by default. - - +https://github.com/owncloud/product/issues/116 +https://github.com/owncloud/ocis/ocis-phoenix/pull/74 diff --git a/ocis-phoenix/changelog/0.11.0_2020-08-17/update-phoenix.md b/ocis-phoenix/changelog/0.11.0_2020-08-17/update-phoenix.md index 9917e7994..296af4ab8 100644 --- a/ocis-phoenix/changelog/0.11.0_2020-08-17/update-phoenix.md +++ b/ocis-phoenix/changelog/0.11.0_2020-08-17/update-phoenix.md @@ -2,4 +2,4 @@ Change: update Phoenix Updated phoenix from v0.13.0 to v0.14.0 - +https://github.com/owncloud/ocis/ocis-phoenix/pull/78 diff --git a/ocis-phoenix/changelog/0.11.0_2020-08-17/use-alpine-latest.md b/ocis-phoenix/changelog/0.11.0_2020-08-17/use-alpine-latest.md index f9de05542..4d0b3af31 100644 --- a/ocis-phoenix/changelog/0.11.0_2020-08-17/use-alpine-latest.md +++ b/ocis-phoenix/changelog/0.11.0_2020-08-17/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/ocis-phoenix/pull/73 diff --git a/ocis-phoenix/changelog/0.12.0_2020-08-19/enable-external-apps.md b/ocis-phoenix/changelog/0.12.0_2020-08-19/enable-external-apps.md index 276246f0c..55dee63fb 100644 --- a/ocis-phoenix/changelog/0.12.0_2020-08-19/enable-external-apps.md +++ b/ocis-phoenix/changelog/0.12.0_2020-08-19/enable-external-apps.md @@ -2,4 +2,4 @@ Change: enable Settings and Accounts apps by default The default ocis-web config now adds the frontend of ocis-accounts and ocis-settings to the builtin web config. - +https://github.com/owncloud/ocis/ocis-phoenix/pull/80 diff --git a/ocis-phoenix/changelog/0.12.0_2020-08-19/update-phoenix.md b/ocis-phoenix/changelog/0.12.0_2020-08-19/update-phoenix.md index 9b2709631..dc9cd2154 100644 --- a/ocis-phoenix/changelog/0.12.0_2020-08-19/update-phoenix.md +++ b/ocis-phoenix/changelog/0.12.0_2020-08-19/update-phoenix.md @@ -2,5 +2,5 @@ Change: update Phoenix Updated phoenix from v0.14.0 to v0.15.0 - - +https://github.com/owncloud/ocis/ocis-phoenix/pull/79 +https://github.com/owncloud/phoenix/releases/tag/v0.15.0 diff --git a/ocis-phoenix/changelog/0.2.0_2020-03-17/config-file-parsing.md b/ocis-phoenix/changelog/0.2.0_2020-03-17/config-file-parsing.md index 33fbcb6d0..1ae9b9dc2 100644 --- a/ocis-phoenix/changelog/0.2.0_2020-03-17/config-file-parsing.md +++ b/ocis-phoenix/changelog/0.2.0_2020-03-17/config-file-parsing.md @@ -2,6 +2,6 @@ Bugfix: Config file value not being read There was a bug in which phoenix config is always set to the default values and the contents of the config file were actually ignored. - - - +https://github.com/owncloud/ocis/ocis-phoenix/pull/45 +https://github.com/owncloud/ocis/ocis-phoenix/issues/46 +https://github.com/owncloud/ocis/ocis-phoenix/issues/47 diff --git a/ocis-phoenix/changelog/0.2.0_2020-03-17/issue-43.md b/ocis-phoenix/changelog/0.2.0_2020-03-17/issue-43.md index f5fffb6d3..7a85823f2 100644 --- a/ocis-phoenix/changelog/0.2.0_2020-03-17/issue-43.md +++ b/ocis-phoenix/changelog/0.2.0_2020-03-17/issue-43.md @@ -2,4 +2,4 @@ Enhancement: update to Phoenix v0.5.0 Use the latest phoenix release - +https://github.com/owncloud/ocis/ocis-phoenix/issues/43 diff --git a/ocis-phoenix/changelog/0.3.0_2020-03-17/new-ocis-config.md b/ocis-phoenix/changelog/0.3.0_2020-03-17/new-ocis-config.md index 47f54ed7a..e505c2784 100644 --- a/ocis-phoenix/changelog/0.3.0_2020-03-17/new-ocis-config.md +++ b/ocis-phoenix/changelog/0.3.0_2020-03-17/new-ocis-config.md @@ -4,4 +4,4 @@ We changed the default configuration to integrate better with ocis. Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` - +https://github.com/owncloud/ocis/ocis-phoenix/pull/55 diff --git a/ocis-phoenix/changelog/0.4.0_2020-03-31/config.md b/ocis-phoenix/changelog/0.4.0_2020-03-31/config.md index 28b34bc11..6a0a204a7 100644 --- a/ocis-phoenix/changelog/0.4.0_2020-03-31/config.md +++ b/ocis-phoenix/changelog/0.4.0_2020-03-31/config.md @@ -2,4 +2,4 @@ Enhancement: Configuration Extensions should be responsible of configuring themselves. We use Viper for config loading from default paths. Environment variables **WILL** take precedence over config files. - +https://github.com/owncloud/ocis/ocis-phoenix/pull/57 diff --git a/ocis-phoenix/changelog/unreleased/remove-pdf-viewer.md b/ocis-phoenix/changelog/unreleased/remove-pdf-viewer.md index 125481543..50a1420af 100644 --- a/ocis-phoenix/changelog/unreleased/remove-pdf-viewer.md +++ b/ocis-phoenix/changelog/unreleased/remove-pdf-viewer.md @@ -2,4 +2,4 @@ Change: Remove pdf-viewer from default apps oCIS-web doesn't have a dedicated pdf-viewer app anymore but instead uses the default browser behaviour for PDFs. We removed pdf-viewer from the set of default apps. - +https://github.com/owncloud/ocis/ocis-phoenix/pull/85 diff --git a/ocis-phoenix/docs/_index.md b/ocis-phoenix/docs/_index.md index 970154566..c48d8bc68 100644 --- a/ocis-phoenix/docs/_index.md +++ b/ocis-phoenix/docs/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Phoenix" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service embeds [Phoenix](https://github.com/owncloud/phoenix) to provide a UI for ownCloud Infinite Scale. diff --git a/ocis-phoenix/docs/building.md b/ocis-phoenix/docs/building.md index 18700f92f..0063c67f8 100644 --- a/ocis-phoenix/docs/building.md +++ b/ocis-phoenix/docs/building.md @@ -1,27 +1,26 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-phoenix.git cd ocis-phoenix -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} The above commands will download a [Phoenix](https://github.com/owncloud/phoenix) release and embed it into the binary. Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-phoenix -h` to see all available options. diff --git a/ocis-phoenix/docs/getting-started.md b/ocis-phoenix/docs/getting-started.md index be92411f5..2963fd911 100644 --- a/ocis-phoenix/docs/getting-started.md +++ b/ocis-phoenix/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -128,91 +127,91 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `phoenix` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9104` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9100` -\--http-root +--http-root : Root path of http server, defaults to `/` -\--asset-path +--asset-path : Path to custom assets, empty default value -\--web-config +--web-config : Path to phoenix config, empty default value -\--web-config-server +--web-config-server : Server URL, defaults to `http://localhost:9135` -\--web-config-theme +--web-config-theme : Theme, defaults to `owncloud` -\--web-config-version +--web-config-version : Version, defaults to `0.1.0` -\--web-config-app +--web-config-app : Provide multiple apps, defaults to `""`. Usage: `phoenix --web-config-app files --web-config-app pdf-viewer` -\--oidc-metadata-url +--oidc-metadata-url : OpenID Connect metadata URL, defaults to `http://localhost:9130/.well-known/openid-configuration` -\--oidc-authority +--oidc-authority : OpenID Connect authority, defaults to `http://localhost:9130` -\--oidc-client-id +--oidc-client-id : OpenID Connect client ID, defaults to `phoenix` -\--oidc-response-type +--oidc-response-type : OpenID Connect response type, defaults to `code` -\--oidc-scope +--oidc-scope : OpenID Connect scope, defaults to `openid profile email` In case you want to render any additional properties in the config.json you can provide a custom config.json using eg. `ocis-phoenix server --web-config=/path/to/config.json` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9104` ### Configuration file @@ -227,17 +226,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-phoenix server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-phoenix health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/ocis-phoenix/docs/license.md b/ocis-phoenix/docs/license.md index 86b2a5794..1bcdc02c5 100644 --- a/ocis-phoenix/docs/license.md +++ b/ocis-phoenix/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocis-phoenix/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/ocis-phoenix/docs/releasing.md b/ocis-phoenix/docs/releasing.md index 3c2abcfbf..e314c2ba7 100644 --- a/ocis-phoenix/docs/releasing.md +++ b/ocis-phoenix/docs/releasing.md @@ -1,13 +1,12 @@ -* * * - +--- title: "Releasing" weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-phoenix geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} ## Releasing @@ -17,10 +16,10 @@ To update this package within all the deliveries, we need to update the package ### Package Hierarchy -- [ocis](https://githug.com/owncloud/ocis) - - [ocis-phoenix](https://github.com/owncloud/ocis-phoenix) - - [ocis-pkg](https://github.com/owncloud/ocis-pkg) - - [phoenix](https://github.com/owncloud/phoenix) +- [ocis](https://githug.com/owncloud/ocis) + - [ocis-phoenix](https://github.com/owncloud/ocis-phoenix) + - [ocis-pkg](https://github.com/owncloud/ocis-pkg) + - [phoenix](https://github.com/owncloud/phoenix) #### Prerequisites @@ -29,15 +28,15 @@ and take note of its release tag name. #### Updating ocis-phoenix -1. Create a branch `release-$version`. in -2. Create a Folder in `changelog` for the release version and date `mkdir $major.$minor.$patchVersion_YYYY-MM-DD`. -3. Move all changelog items from the `changelog/unreleased/` folder to the `$major.$minor.$patchVersion_YYYY-MM-DD` folder. -4. Update the go module `ocis-pkg` to the latest version . -5. Update the phoenix asset by adjusting the value of `PHOENIX_ASSETS_VERSION` at the top of the Makefile and specify the tag name of the latest [Phoenix release](https://github.com/owncloud/phoenix/tags). -6. Run `make clean generate`. -7. Create a changelog item for the update in the `changelog/$major.$minor.$patchVersion_YYYY-MM-DD` folder. -8. Commit your changes. -9. After merging, wait for the CI to run on the merge commit. +1. Create a branch `release-$version`. in +2. Create a Folder in `changelog` for the release version and date `mkdir $major.$minor.$patchVersion_YYYY-MM-DD`. +3. Move all changelog items from the `changelog/unreleased/` folder to the `$major.$minor.$patchVersion_YYYY-MM-DD` folder. +4. Update the go module `ocis-pkg` to the latest version . +5. Update the phoenix asset by adjusting the value of `PHOENIX_ASSETS_VERSION` at the top of the Makefile and specify the tag name of the latest [Phoenix release](https://github.com/owncloud/phoenix/tags). +6. Run `make clean generate`. +7. Create a changelog item for the update in the `changelog/$major.$minor.$patchVersion_YYYY-MM-DD` folder. +8. Commit your changes. +9. After merging, wait for the CI to run on the merge commit. 10. Go to "Releases" in GH click "Draft a new Release". 11. Use `v$major.$minor.$patch` as a tag (the `v` prefix is important) and publish it. 12. The tag and the Release artifacts will be created automatically. @@ -45,3 +44,4 @@ and take note of its release tag name. #### Next steps Next steps is usually updating the ocis-phoenix version in the [ocis](https://githug.com/owncloud/ocis) repository. + diff --git a/ocis-pkg/CHANGELOG.md b/ocis-pkg/CHANGELOG.md index f50a14f0e..bba52aa85 100644 --- a/ocis-pkg/CHANGELOG.md +++ b/ocis-pkg/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-pkg unreleased. @@ -6,37 +6,37 @@ The following sections list the changes in ocis-pkg unreleased. ## Summary -- Change - Unwrap roleIDs from access-token into metadata context: [#59](https://github.com/owncloud/ocis-pkg/pull/59) -- Change - Provide cache for roles: [#59](https://github.com/owncloud/ocis-pkg/pull/59) -- Change - Roles manager: [#60](https://github.com/owncloud/ocis-pkg/pull/60) +* Change - Unwrap roleIDs from access-token into metadata context: [#59](https://github.com/owncloud/ocis-pkg/pull/59) +* Change - Provide cache for roles: [#59](https://github.com/owncloud/ocis-pkg/pull/59) +* Change - Roles manager: [#60](https://github.com/owncloud/ocis-pkg/pull/60) ## Details -- Change - Unwrap roleIDs from access-token into metadata context: [#59](https://github.com/owncloud/ocis-pkg/pull/59) +* Change - Unwrap roleIDs from access-token into metadata context: [#59](https://github.com/owncloud/ocis-pkg/pull/59) - We pass the RoleIDs from the access-token into the metadata context. + We pass the RoleIDs from the access-token into the metadata context. - + https://github.com/owncloud/ocis-pkg/pull/59 -- Change - Provide cache for roles: [#59](https://github.com/owncloud/ocis-pkg/pull/59) +* Change - Provide cache for roles: [#59](https://github.com/owncloud/ocis-pkg/pull/59) - In order to work efficiently with permissions we provide a cache for roles and a middleware to - update the cache based on roleIDs from the metadata context. It can be used to check permissions - in service handlers. + In order to work efficiently with permissions we provide a cache for roles and a middleware to + update the cache based on roleIDs from the metadata context. It can be used to check permissions + in service handlers. - + https://github.com/owncloud/ocis-pkg/pull/59 -- Change - Roles manager: [#60](https://github.com/owncloud/ocis-pkg/pull/60) +* Change - Roles manager: [#60](https://github.com/owncloud/ocis-pkg/pull/60) - We combined the roles middleware and cache into a roles manager. The manager doesn't expose the - cache anymore and manages the state of the cache by fetching roles from the role service which - don't exist in the cache, yet. + We combined the roles middleware and cache into a roles manager. The manager doesn't expose the + cache anymore and manages the state of the cache by fetching roles from the role service which + don't exist in the cache, yet. - + https://github.com/owncloud/ocis-pkg/pull/60 -# Changelog for [2.4.0] \(2020-08-25) +# Changelog for [2.4.0] (2020-08-25) The following sections list the changes in ocis-pkg 2.4.0. @@ -44,18 +44,18 @@ The following sections list the changes in ocis-pkg 2.4.0. ## Summary -- Change - Use go-micro's metadata context for account id: [#56](https://github.com/owncloud/ocis-pkg/pull/56) +* Change - Use go-micro's metadata context for account id: [#56](https://github.com/owncloud/ocis-pkg/pull/56) ## Details -- Change - Use go-micro's metadata context for account id: [#56](https://github.com/owncloud/ocis-pkg/pull/56) +* Change - Use go-micro's metadata context for account id: [#56](https://github.com/owncloud/ocis-pkg/pull/56) - We switched to using go-micro's metadata context for reliably passing the AccountID in the - context across service boundaries. + We switched to using go-micro's metadata context for reliably passing the AccountID in the + context across service boundaries. - + https://github.com/owncloud/ocis-pkg/pull/56 -# Changelog for [2.3.0] \(2020-08-17) +# Changelog for [2.3.0] (2020-08-17) The following sections list the changes in ocis-pkg 2.3.0. @@ -63,39 +63,39 @@ The following sections list the changes in ocis-pkg 2.3.0. ## Summary -- Bugfix - Remove redigo 2.0.0+incompatible dependency: [#33](https://github.com/owncloud/ocis-graph/pull/33) -- Change - Add middleware for x-access-token distmantling: [#46](https://github.com/owncloud/ocis-pkg/pull/46) -- Enhancement - Add `ocis.id` and numeric id claims: [#50](https://github.com/owncloud/ocis-pkg/pull/50) +* Bugfix - Remove redigo 2.0.0+incompatible dependency: [#33](https://github.com/owncloud/ocis-graph/pull/33) +* Change - Add middleware for x-access-token distmantling: [#46](https://github.com/owncloud/ocis-pkg/pull/46) +* Enhancement - Add `ocis.id` and numeric id claims: [#50](https://github.com/owncloud/ocis-pkg/pull/50) ## Details -- Bugfix - Remove redigo 2.0.0+incompatible dependency: [#33](https://github.com/owncloud/ocis-graph/pull/33) +* Bugfix - Remove redigo 2.0.0+incompatible dependency: [#33](https://github.com/owncloud/ocis-graph/pull/33) - Get rid of redigo v2.0.0 + Get rid of redigo v2.0.0 - + https://github.com/owncloud/ocis-graph/pull/33 -- Change - Add middleware for x-access-token distmantling: [#46](https://github.com/owncloud/ocis-pkg/pull/46) +* Change - Add middleware for x-access-token distmantling: [#46](https://github.com/owncloud/ocis-pkg/pull/46) - We added a middleware that dismantles the `x-access-token` from the request header and makes - it available in the context. + We added a middleware that dismantles the `x-access-token` from the request header and makes + it available in the context. - + https://github.com/owncloud/ocis-pkg/pull/46 -- Enhancement - Add `ocis.id` and numeric id claims: [#50](https://github.com/owncloud/ocis-pkg/pull/50) +* Enhancement - Add `ocis.id` and numeric id claims: [#50](https://github.com/owncloud/ocis-pkg/pull/50) - We added an `ocis.id` claim to the OIDC standard claims. It allows the idp to send a stable - identifier that can be exposed to the outside world (in contrast to sub, which might change - whens the IdP changes). + We added an `ocis.id` claim to the OIDC standard claims. It allows the idp to send a stable + identifier that can be exposed to the outside world (in contrast to sub, which might change + whens the IdP changes). - In addition we added `uidnumber` and `gidnumber` claims, which can be used by the IdP as well. - They will be used by storage providers that integrate with an existing LDAP server. + In addition we added `uidnumber` and `gidnumber` claims, which can be used by the IdP as well. + They will be used by storage providers that integrate with an existing LDAP server. - + https://github.com/owncloud/ocis-pkg/pull/50 -# Changelog for [2.2.1] \(2020-04-21) +# Changelog for [2.2.1] (2020-04-21) The following sections list the changes in ocis-pkg 2.2.1. @@ -103,17 +103,17 @@ The following sections list the changes in ocis-pkg 2.2.1. ## Summary -- Bugfix - Pass flags to micro service: [#44](https://github.com/owncloud/ocis-pkg/pull/44) +* Bugfix - Pass flags to micro service: [#44](https://github.com/owncloud/ocis-pkg/pull/44) ## Details -- Bugfix - Pass flags to micro service: [#44](https://github.com/owncloud/ocis-pkg/pull/44) +* Bugfix - Pass flags to micro service: [#44](https://github.com/owncloud/ocis-pkg/pull/44) - Passed flags to the micro service to be able to pass cli arguments while starting a grpc service. + Passed flags to the micro service to be able to pass cli arguments while starting a grpc service. - + https://github.com/owncloud/ocis-pkg/pull/44 -# Changelog for [2.2.0] \(2020-03-30) +# Changelog for [2.2.0] (2020-03-30) The following sections list the changes in ocis-pkg 2.2.0. @@ -121,17 +121,17 @@ The following sections list the changes in ocis-pkg 2.2.0. ## Summary -- Change - Add header to cors handler: [#41](https://github.com/owncloud/ocis-pkg/issues/41) +* Change - Add header to cors handler: [#41](https://github.com/owncloud/ocis-pkg/issues/41) ## Details -- Change - Add header to cors handler: [#41](https://github.com/owncloud/ocis-pkg/issues/41) +* Change - Add header to cors handler: [#41](https://github.com/owncloud/ocis-pkg/issues/41) - The `x-requested-with` header was added to allow ajax requests. + The `x-requested-with` header was added to allow ajax requests. - + https://github.com/owncloud/ocis-pkg/issues/41 -# Changelog for [2.1.0] \(2020-03-16) +# Changelog for [2.1.0] (2020-03-16) The following sections list the changes in ocis-pkg 2.1.0. @@ -139,17 +139,17 @@ The following sections list the changes in ocis-pkg 2.1.0. ## Summary -- Enhancement - Tracing middleware: [#35](https://github.com/owncloud/ocis-pkg/pull/35/) +* Enhancement - Tracing middleware: [#35](https://github.com/owncloud/ocis-pkg/pull/35/) ## Details -- Enhancement - Tracing middleware: [#35](https://github.com/owncloud/ocis-pkg/pull/35/) +* Enhancement - Tracing middleware: [#35](https://github.com/owncloud/ocis-pkg/pull/35/) - A new tracing middleware has been added to unpack context propagation + A new tracing middleware has been added to unpack context propagation - + https://github.com/owncloud/ocis-pkg/pull/35/ -# Changelog for [2.0.2] \(2020-03-04) +# Changelog for [2.0.2] (2020-03-04) The following sections list the changes in ocis-pkg 2.0.2. @@ -157,17 +157,17 @@ The following sections list the changes in ocis-pkg 2.0.2. ## Summary -- Enhancement - Allow http services to register handlers: [#33](https://github.com/owncloud/ocis-pkg/pull/33) +* Enhancement - Allow http services to register handlers: [#33](https://github.com/owncloud/ocis-pkg/pull/33) ## Details -- Enhancement - Allow http services to register handlers: [#33](https://github.com/owncloud/ocis-pkg/pull/33) +* Enhancement - Allow http services to register handlers: [#33](https://github.com/owncloud/ocis-pkg/pull/33) - Added a handler option on http services + Added a handler option on http services - + https://github.com/owncloud/ocis-pkg/pull/33 -# Changelog for [2.0.1] \(2020-02-05) +# Changelog for [2.0.1] (2020-02-05) The following sections list the changes in ocis-pkg 2.0.1. @@ -175,33 +175,33 @@ The following sections list the changes in ocis-pkg 2.0.1. ## Summary -- Bugfix - Fix Module Path: [#25](https://github.com/owncloud/ocis-pkg/pull/25) -- Bugfix - Change import paths to ocis-pkg/v2: [#27](https://github.com/owncloud/ocis-pkg/pull/27) +* Bugfix - Fix Module Path: [#25](https://github.com/owncloud/ocis-pkg/pull/25) +* Bugfix - Change import paths to ocis-pkg/v2: [#27](https://github.com/owncloud/ocis-pkg/pull/27) ## Details -- Bugfix - Fix Module Path: [#25](https://github.com/owncloud/ocis-pkg/pull/25) +* Bugfix - Fix Module Path: [#25](https://github.com/owncloud/ocis-pkg/pull/25) - The module version must be in the path. See - for more - information. > If the module is version v2 or higher, the major version of the module must be - included as a /vN at the end of the module paths used in go.mod files (e.g., module - github.com/my/mod/v2, require github.com/my/mod/v2 v2.0.1) and in the package import path - (e.g., import "github.com/my/mod/v2/mypkg"). This includes the paths used in go get - commands (e.g., go get github.com/my/mod/[v2@v2.0.1.](mailto:v2@v2.0.1.) Note there is both a /v2 and a @v2.0.1 in - that example. One way to think about it is that the module name now includes the /v2, so include - /v2 whenever you are using the module name). + The module version must be in the path. See + https://github.com/golang/go/wiki/Modules#semantic-import-versioning for more + information. > If the module is version v2 or higher, the major version of the module must be + included as a /vN at the end of the module paths used in go.mod files (e.g., module + github.com/my/mod/v2, require github.com/my/mod/v2 v2.0.1) and in the package import path + (e.g., import "github.com/my/mod/v2/mypkg"). This includes the paths used in go get + commands (e.g., go get github.com/my/mod/v2@v2.0.1. Note there is both a /v2 and a @v2.0.1 in + that example. One way to think about it is that the module name now includes the /v2, so include + /v2 whenever you are using the module name). - + https://github.com/owncloud/ocis-pkg/pull/25 -- Bugfix - Change import paths to ocis-pkg/v2: [#27](https://github.com/owncloud/ocis-pkg/pull/27) +* Bugfix - Change import paths to ocis-pkg/v2: [#27](https://github.com/owncloud/ocis-pkg/pull/27) - Changed the import paths to the current version + Changed the import paths to the current version - + https://github.com/owncloud/ocis-pkg/pull/27 -# Changelog for [2.0.0] \(2020-02-04) +# Changelog for [2.0.0] (2020-02-04) The following sections list the changes in ocis-pkg 2.0.0. @@ -209,17 +209,17 @@ The following sections list the changes in ocis-pkg 2.0.0. ## Summary -- Change - Upgrade the micro libraries: [#22](https://github.com/owncloud/ocis-pkg/pull/22) +* Change - Upgrade the micro libraries: [#22](https://github.com/owncloud/ocis-pkg/pull/22) ## Details -- Change - Upgrade the micro libraries: [#22](https://github.com/owncloud/ocis-pkg/pull/22) +* Change - Upgrade the micro libraries: [#22](https://github.com/owncloud/ocis-pkg/pull/22) - Upgraded the go-micro libraries to v2. + Upgraded the go-micro libraries to v2. - + https://github.com/owncloud/ocis-pkg/pull/22 -# Changelog for [1.3.0] \(2020-01-20) +# Changelog for [1.3.0] (2020-01-20) The following sections list the changes in ocis-pkg 1.3.0. @@ -227,39 +227,39 @@ The following sections list the changes in ocis-pkg 1.3.0. ## Summary -- Bugfix - Fix serving static assets: [#14](https://github.com/owncloud/ocis-pkg/pull/14) -- Change - Add TLS support for http services: [#19](https://github.com/owncloud/ocis-pkg/issues/19) -- Enhancement - Introduce OpenID Connect middleware: [#8](https://github.com/owncloud/ocis-pkg/issues/8) +* Bugfix - Fix serving static assets: [#14](https://github.com/owncloud/ocis-pkg/pull/14) +* Change - Add TLS support for http services: [#19](https://github.com/owncloud/ocis-pkg/issues/19) +* Enhancement - Introduce OpenID Connect middleware: [#8](https://github.com/owncloud/ocis-pkg/issues/8) ## Details -- Bugfix - Fix serving static assets: [#14](https://github.com/owncloud/ocis-pkg/pull/14) +* Bugfix - Fix serving static assets: [#14](https://github.com/owncloud/ocis-pkg/pull/14) - Ocis-hello used "/" as root. adding another / caused the static middleware to always fail - stripping that prefix. All requests will return 404. Setting root to `""` in the `ocis-hello` - flag does not work because Chi reports that routes need to start with `/`. - `path.Clean(root+"/")` would yield `""` for `root="/"`. + Ocis-hello used "/" as root. adding another / caused the static middleware to always fail + stripping that prefix. All requests will return 404. Setting root to `""` in the `ocis-hello` + flag does not work because Chi reports that routes need to start with `/`. + `path.Clean(root+"/")` would yield `""` for `root="/"`. - + https://github.com/owncloud/ocis-pkg/pull/14 -- Change - Add TLS support for http services: [#19](https://github.com/owncloud/ocis-pkg/issues/19) +* Change - Add TLS support for http services: [#19](https://github.com/owncloud/ocis-pkg/issues/19) - `ocis-pkg` http services support TLS. The idea behind is setting the issuer on phoenix's - `config.json` to `https`. Or in other words, use https to access the Kopano extension, and - authenticate using an SSL certificate. + `ocis-pkg` http services support TLS. The idea behind is setting the issuer on phoenix's + `config.json` to `https`. Or in other words, use https to access the Kopano extension, and + authenticate using an SSL certificate. - + https://github.com/owncloud/ocis-pkg/issues/19 -- Enhancement - Introduce OpenID Connect middleware: [#8](https://github.com/owncloud/ocis-pkg/issues/8) +* Enhancement - Introduce OpenID Connect middleware: [#8](https://github.com/owncloud/ocis-pkg/issues/8) - Added an openid connect middleware that will try to authenticate users using OpenID Connect. - The claims will be added to the context of the request. + Added an openid connect middleware that will try to authenticate users using OpenID Connect. + The claims will be added to the context of the request. - + https://github.com/owncloud/ocis-pkg/issues/8 -# Changelog for [1.2.0] \(2019-12-09) +# Changelog for [1.2.0] (2019-12-09) The following sections list the changes in ocis-pkg 1.2.0. @@ -267,18 +267,18 @@ The following sections list the changes in ocis-pkg 1.2.0. ## Summary -- Change - Add root path to static middleware: [#9](https://github.com/owncloud/ocis-pkg/issues/9) +* Change - Add root path to static middleware: [#9](https://github.com/owncloud/ocis-pkg/issues/9) ## Details -- Change - Add root path to static middleware: [#9](https://github.com/owncloud/ocis-pkg/issues/9) +* Change - Add root path to static middleware: [#9](https://github.com/owncloud/ocis-pkg/issues/9) - Currently the `Static` middleware always serves from the root path, but all our HTTP handlers - accept a custom root path which also got to be applied to the static file handling. + Currently the `Static` middleware always serves from the root path, but all our HTTP handlers + accept a custom root path which also got to be applied to the static file handling. - + https://github.com/owncloud/ocis-pkg/issues/9 -# Changelog for [1.1.0] \(2019-12-06) +# Changelog for [1.1.0] (2019-12-06) The following sections list the changes in ocis-pkg 1.1.0. @@ -286,18 +286,18 @@ The following sections list the changes in ocis-pkg 1.1.0. ## Summary -- Change - Better log level handling within micro: [#2](https://github.com/owncloud/ocis-pkg/issues/2) +* Change - Better log level handling within micro: [#2](https://github.com/owncloud/ocis-pkg/issues/2) ## Details -- Change - Better log level handling within micro: [#2](https://github.com/owncloud/ocis-pkg/issues/2) +* Change - Better log level handling within micro: [#2](https://github.com/owncloud/ocis-pkg/issues/2) - Currently every log message from the micro internals are logged with the info level, we really - need to respect the proper defined log level within our log wrapper package. + Currently every log message from the micro internals are logged with the info level, we really + need to respect the proper defined log level within our log wrapper package. - + https://github.com/owncloud/ocis-pkg/issues/2 -# Changelog for [1.0.0] \(2019-12-05) +# Changelog for [1.0.0] (2019-12-05) The following sections list the changes in ocis-pkg 1.0.0. @@ -305,13 +305,14 @@ The following sections list the changes in ocis-pkg 1.0.0. ## Summary -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis-pkg/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis-pkg/issues/1) ## Details -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis-pkg/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis-pkg/issues/1) - Just prepared an initial basic version to have some shared functionality published which can - be used by all other ownCloud Infinite Scale extensions. + Just prepared an initial basic version to have some shared functionality published which can + be used by all other ownCloud Infinite Scale extensions. + + https://github.com/owncloud/ocis-pkg/issues/1 - diff --git a/ocis-pkg/README.md b/ocis-pkg/README.md index 5176ca27e..e2ee6fb58 100644 --- a/ocis-pkg/README.md +++ b/ocis-pkg/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-pkg/status.svg)](https://cloud.drone.io/owncloud/ocis-pkg) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/27b2cb74a61547329f9b3c56d90bd05c)](https://www.codacy.com/manual/owncloud/ocis-pkg?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-pkg&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/27b2cb74a61547329f9b3c56d90bd05c)](https://www.codacy.com/manual/owncloud/ocis-pkg?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-pkg&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-pkg?status.svg)](http://godoc.org/github.com/owncloud/ocis-pkg) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-pkg)](http://goreportcard.com/report/github.com/owncloud/ocis-pkg) @@ -28,7 +28,7 @@ make test ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/ocis-pkg/changelog/1.0.0_2019-12-05/initial-release.md b/ocis-pkg/changelog/1.0.0_2019-12-05/initial-release.md index 7bf3d47bb..a86833e1c 100644 --- a/ocis-pkg/changelog/1.0.0_2019-12-05/initial-release.md +++ b/ocis-pkg/changelog/1.0.0_2019-12-05/initial-release.md @@ -3,4 +3,4 @@ Change: Initial release of basic version Just prepared an initial basic version to have some shared functionality published which can be used by all other ownCloud Infinite Scale extensions. - +https://github.com/owncloud/ocis-pkg/issues/1 diff --git a/ocis-pkg/changelog/1.1.0_2019-12-06/log-level-handling.md b/ocis-pkg/changelog/1.1.0_2019-12-06/log-level-handling.md index 712f8654c..69aefe0c7 100644 --- a/ocis-pkg/changelog/1.1.0_2019-12-06/log-level-handling.md +++ b/ocis-pkg/changelog/1.1.0_2019-12-06/log-level-handling.md @@ -4,4 +4,4 @@ Currently every log message from the micro internals are logged with the info level, we really need to respect the proper defined log level within our log wrapper package. - +https://github.com/owncloud/ocis-pkg/issues/2 diff --git a/ocis-pkg/changelog/1.2.0_2019-12-09/static-root-path.md b/ocis-pkg/changelog/1.2.0_2019-12-09/static-root-path.md index daa40a88b..d7d2778a8 100644 --- a/ocis-pkg/changelog/1.2.0_2019-12-09/static-root-path.md +++ b/ocis-pkg/changelog/1.2.0_2019-12-09/static-root-path.md @@ -4,4 +4,4 @@ Currently the `Static` middleware always serves from the root path, but all our HTTP handlers accept a custom root path which also got to be applied to the static file handling. - +https://github.com/owncloud/ocis-pkg/issues/9 diff --git a/ocis-pkg/changelog/1.3.0_2020-01-20/fix-serving-static-issues.md b/ocis-pkg/changelog/1.3.0_2020-01-20/fix-serving-static-issues.md index f008a4303..010430b6a 100644 --- a/ocis-pkg/changelog/1.3.0_2020-01-20/fix-serving-static-issues.md +++ b/ocis-pkg/changelog/1.3.0_2020-01-20/fix-serving-static-issues.md @@ -5,4 +5,4 @@ always fail stripping that prefix. All requests will return 404. Setting root to `""` in the `ocis-hello` flag does not work because Chi reports that routes need to start with `/`. `path.Clean(root+"/")` would yield `""` for `root="/"`. - +https://github.com/owncloud/ocis-pkg/pull/14 diff --git a/ocis-pkg/changelog/1.3.0_2020-01-20/issue-8.md b/ocis-pkg/changelog/1.3.0_2020-01-20/issue-8.md index f43f21398..8e064234b 100644 --- a/ocis-pkg/changelog/1.3.0_2020-01-20/issue-8.md +++ b/ocis-pkg/changelog/1.3.0_2020-01-20/issue-8.md @@ -3,4 +3,4 @@ Enhancement: Introduce OpenID Connect middleware Added an openid connect middleware that will try to authenticate users using OpenID Connect. The claims will be added to the context of the request. - +https://github.com/owncloud/ocis-pkg/issues/8 diff --git a/ocis-pkg/changelog/1.3.0_2020-01-20/tls-support-for-http-services.md b/ocis-pkg/changelog/1.3.0_2020-01-20/tls-support-for-http-services.md index 155386407..b1f8660d8 100644 --- a/ocis-pkg/changelog/1.3.0_2020-01-20/tls-support-for-http-services.md +++ b/ocis-pkg/changelog/1.3.0_2020-01-20/tls-support-for-http-services.md @@ -4,4 +4,4 @@ Change: Add TLS support for http services phoenix's `config.json` to `https`. Or in other words, use https to access the Kopano extension, and authenticate using an SSL certificate. - +https://github.com/owncloud/ocis-pkg/issues/19 diff --git a/ocis-pkg/changelog/2.0.0_2020-02-04/micro-cli-v2.md b/ocis-pkg/changelog/2.0.0_2020-02-04/micro-cli-v2.md index 34f47a9f7..60f5408a0 100644 --- a/ocis-pkg/changelog/2.0.0_2020-02-04/micro-cli-v2.md +++ b/ocis-pkg/changelog/2.0.0_2020-02-04/micro-cli-v2.md @@ -2,4 +2,4 @@ Change: upgrade the micro libraries Upgraded the go-micro libraries to v2. - +https://github.com/owncloud/ocis-pkg/pull/22 diff --git a/ocis-pkg/changelog/2.0.1_2020-02-05/add-module-version-to-module-path.md b/ocis-pkg/changelog/2.0.1_2020-02-05/add-module-version-to-module-path.md index 73fafd391..83122a91d 100644 --- a/ocis-pkg/changelog/2.0.1_2020-02-05/add-module-version-to-module-path.md +++ b/ocis-pkg/changelog/2.0.1_2020-02-05/add-module-version-to-module-path.md @@ -1,7 +1,6 @@ Bugfix: Fix Module Path -The module version must be in the path. See for more information. +The module version must be in the path. See https://github.com/golang/go/wiki/Modules#semantic-import-versioning for more information. +> If the module is version v2 or higher, the major version of the module must be included as a /vN at the end of the module paths used in go.mod files (e.g., module github.com/my/mod/v2, require github.com/my/mod/v2 v2.0.1) and in the package import path (e.g., import "github.com/my/mod/v2/mypkg"). This includes the paths used in go get commands (e.g., go get github.com/my/mod/v2@v2.0.1. Note there is both a /v2 and a @v2.0.1 in that example. One way to think about it is that the module name now includes the /v2, so include /v2 whenever you are using the module name). -> If the module is version v2 or higher, the major version of the module must be included as a /vN at the end of the module paths used in go.mod files (e.g., module github.com/my/mod/v2, require github.com/my/mod/v2 v2.0.1) and in the package import path (e.g., import "github.com/my/mod/v2/mypkg"). This includes the paths used in go get commands (e.g., go get github.com/my/mod/[v2@v2.0.1.](mailto:v2@v2.0.1.) Note there is both a /v2 and a @v2.0.1 in that example. One way to think about it is that the module name now includes the /v2, so include /v2 whenever you are using the module name). - - +https://github.com/owncloud/ocis-pkg/pull/25 diff --git a/ocis-pkg/changelog/2.0.1_2020-02-05/correct-imports.md b/ocis-pkg/changelog/2.0.1_2020-02-05/correct-imports.md index e8cd1ee80..0028a5a36 100644 --- a/ocis-pkg/changelog/2.0.1_2020-02-05/correct-imports.md +++ b/ocis-pkg/changelog/2.0.1_2020-02-05/correct-imports.md @@ -2,4 +2,4 @@ Bugfix: change import paths to ocis-pkg/v2 Changed the import paths to the current version - +https://github.com/owncloud/ocis-pkg/pull/27 diff --git a/ocis-pkg/changelog/2.0.2_2020-03-04/handler-option-on-http-services.md b/ocis-pkg/changelog/2.0.2_2020-03-04/handler-option-on-http-services.md index 0f6198112..fcff868b2 100644 --- a/ocis-pkg/changelog/2.0.2_2020-03-04/handler-option-on-http-services.md +++ b/ocis-pkg/changelog/2.0.2_2020-03-04/handler-option-on-http-services.md @@ -2,4 +2,4 @@ Enhancement: Allow http services to register handlers Added a handler option on http services - +https://github.com/owncloud/ocis-pkg/pull/33 diff --git a/ocis-pkg/changelog/2.1.0_2020-03-16/tracing-middleware.md b/ocis-pkg/changelog/2.1.0_2020-03-16/tracing-middleware.md index 63877366f..a7c0a86d0 100644 --- a/ocis-pkg/changelog/2.1.0_2020-03-16/tracing-middleware.md +++ b/ocis-pkg/changelog/2.1.0_2020-03-16/tracing-middleware.md @@ -2,4 +2,4 @@ Enhancement: Tracing middleware A new tracing middleware has been added to unpack context propagation - +https://github.com/owncloud/ocis-pkg/pull/35/ diff --git a/ocis-pkg/changelog/2.2.0_2020-03-30/add-header-to-cors-handler.md b/ocis-pkg/changelog/2.2.0_2020-03-30/add-header-to-cors-handler.md index 3269c69df..5f6f4aa62 100644 --- a/ocis-pkg/changelog/2.2.0_2020-03-30/add-header-to-cors-handler.md +++ b/ocis-pkg/changelog/2.2.0_2020-03-30/add-header-to-cors-handler.md @@ -2,4 +2,4 @@ Change: Add header to cors handler The `x-requested-with` header was added to allow ajax requests. - +https://github.com/owncloud/ocis-pkg/issues/41 diff --git a/ocis-pkg/changelog/2.2.1_2020-04-21/fix-micro-options.md b/ocis-pkg/changelog/2.2.1_2020-04-21/fix-micro-options.md index 24d3a8c0d..9e69f865b 100644 --- a/ocis-pkg/changelog/2.2.1_2020-04-21/fix-micro-options.md +++ b/ocis-pkg/changelog/2.2.1_2020-04-21/fix-micro-options.md @@ -2,4 +2,4 @@ Bugfix: pass flags to micro service Passed flags to the micro service to be able to pass cli arguments while starting a grpc service. - +https://github.com/owncloud/ocis-pkg/pull/44 diff --git a/ocis-pkg/changelog/2.3.0_2020-08-17/add-account-middleware.md b/ocis-pkg/changelog/2.3.0_2020-08-17/add-account-middleware.md index 1f09a9dbc..13f66acfc 100644 --- a/ocis-pkg/changelog/2.3.0_2020-08-17/add-account-middleware.md +++ b/ocis-pkg/changelog/2.3.0_2020-08-17/add-account-middleware.md @@ -3,4 +3,4 @@ Change: add middleware for x-access-token distmantling We added a middleware that dismantles the `x-access-token` from the request header and makes it available in the context. - +https://github.com/owncloud/ocis-pkg/pull/46 diff --git a/ocis-pkg/changelog/2.3.0_2020-08-17/add-ocisid-claim.md b/ocis-pkg/changelog/2.3.0_2020-08-17/add-ocisid-claim.md index e13fbbe7c..10bad004a 100644 --- a/ocis-pkg/changelog/2.3.0_2020-08-17/add-ocisid-claim.md +++ b/ocis-pkg/changelog/2.3.0_2020-08-17/add-ocisid-claim.md @@ -4,4 +4,4 @@ We added an `ocis.id` claim to the OIDC standard claims. It allows the idp to se In addition we added `uidnumber` and `gidnumber` claims, which can be used by the IdP as well. They will be used by storage providers that integrate with an existing LDAP server. - +https://github.com/owncloud/ocis-pkg/pull/50 diff --git a/ocis-pkg/changelog/2.3.0_2020-08-17/remove-redigo.md b/ocis-pkg/changelog/2.3.0_2020-08-17/remove-redigo.md index a21bc6625..54fd21aaa 100644 --- a/ocis-pkg/changelog/2.3.0_2020-08-17/remove-redigo.md +++ b/ocis-pkg/changelog/2.3.0_2020-08-17/remove-redigo.md @@ -2,4 +2,4 @@ Bugfix: remove redigo 2.0.0+incompatible dependency get rid of redigo v2.0.0 - +https://github.com/owncloud/ocis-graph/pull/33 diff --git a/ocis-pkg/changelog/2.4.0_2020-08-25/metadata-context.md b/ocis-pkg/changelog/2.4.0_2020-08-25/metadata-context.md index f6d1b8d34..a9ed4182b 100644 --- a/ocis-pkg/changelog/2.4.0_2020-08-25/metadata-context.md +++ b/ocis-pkg/changelog/2.4.0_2020-08-25/metadata-context.md @@ -3,4 +3,4 @@ Change: use go-micro's metadata context for account id We switched to using go-micro's metadata context for reliably passing the AccountID in the context across service boundaries. - +https://github.com/owncloud/ocis-pkg/pull/56 diff --git a/ocis-pkg/changelog/unreleased/role-ids-from-context.md b/ocis-pkg/changelog/unreleased/role-ids-from-context.md index d2e889261..26e8c3a48 100644 --- a/ocis-pkg/changelog/unreleased/role-ids-from-context.md +++ b/ocis-pkg/changelog/unreleased/role-ids-from-context.md @@ -2,4 +2,4 @@ Change: Unwrap roleIDs from access-token into metadata context We pass the RoleIDs from the access-token into the metadata context. - +https://github.com/owncloud/ocis-pkg/pull/59 diff --git a/ocis-pkg/changelog/unreleased/roles-cache.md b/ocis-pkg/changelog/unreleased/roles-cache.md index 76403afa3..26fd464be 100644 --- a/ocis-pkg/changelog/unreleased/roles-cache.md +++ b/ocis-pkg/changelog/unreleased/roles-cache.md @@ -4,4 +4,4 @@ In order to work efficiently with permissions we provide a cache for roles and a middleware to update the cache based on roleIDs from the metadata context. It can be used to check permissions in service handlers. - +https://github.com/owncloud/ocis-pkg/pull/59 diff --git a/ocis-pkg/changelog/unreleased/roles-manager.md b/ocis-pkg/changelog/unreleased/roles-manager.md index ef4b25d6e..924a4d633 100644 --- a/ocis-pkg/changelog/unreleased/roles-manager.md +++ b/ocis-pkg/changelog/unreleased/roles-manager.md @@ -3,4 +3,4 @@ Change: Roles manager We combined the roles middleware and cache into a roles manager. The manager doesn't expose the cache anymore and manages the state of the cache by fetching roles from the role service which don't exist in the cache, yet. - +https://github.com/owncloud/ocis-pkg/pull/60 diff --git a/ocis-reva/CHANGELOG.md b/ocis-reva/CHANGELOG.md index 0a78a20e5..26cd94446 100644 --- a/ocis-reva/CHANGELOG.md +++ b/ocis-reva/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [0.14.0] \(2020-09-11) +# Changelog for [0.14.0] (2020-09-11) The following sections list the changes in ocis-reva 0.14.0. @@ -6,77 +6,77 @@ The following sections list the changes in ocis-reva 0.14.0. ## Summary -- Bugfix - Fix default configuration for accessing shares: [#205](https://github.com/owncloud/product/issues/205) -- Enhancement - Allow configuring arbitrary storage registry rules: [#193](https://github.com/owncloud/product/issues/193) -- Enhancement - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea: [#454](https://github.com/owncloud/ocis/ocis-revapull/454) -- Enhancement - Update reva to v1.2.1-0.20200911111727-51649e37df2d: [#466](https://github.com/owncloud/ocis/ocis-revapull/466) +* Bugfix - Fix default configuration for accessing shares: [#205](https://github.com/owncloud/product/issues/205) +* Enhancement - Allow configuring arbitrary storage registry rules: [#193](https://github.com/owncloud/product/issues/193) +* Enhancement - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea: [#454](https://github.com/owncloud/ocis/ocis-revapull/454) +* Enhancement - Update reva to v1.2.1-0.20200911111727-51649e37df2d: [#466](https://github.com/owncloud/ocis/ocis-revapull/466) ## Details -- Bugfix - Fix default configuration for accessing shares: [#205](https://github.com/owncloud/product/issues/205) +* Bugfix - Fix default configuration for accessing shares: [#205](https://github.com/owncloud/product/issues/205) - The storage provider mounted at `/home` should always have EnableHome set to `true`. The other - storage providers should have it set to `false`. + The storage provider mounted at `/home` should always have EnableHome set to `true`. The other + storage providers should have it set to `false`. - - + https://github.com/owncloud/product/issues/205 + https://github.com/owncloud/ocis/ocis-revapull/461 -- Enhancement - Allow configuring arbitrary storage registry rules: [#193](https://github.com/owncloud/product/issues/193) +* Enhancement - Allow configuring arbitrary storage registry rules: [#193](https://github.com/owncloud/product/issues/193) - We added a new config flag `storage-registry-rule` that can be given multiple times for the - gateway to specify arbitrary storage registry rules. You can also use a comma separated list of - rules in the `REVA_STORAGE_REGISTRY_RULES` environment variable. + We added a new config flag `storage-registry-rule` that can be given multiple times for the + gateway to specify arbitrary storage registry rules. You can also use a comma separated list of + rules in the `REVA_STORAGE_REGISTRY_RULES` environment variable. - - + https://github.com/owncloud/product/issues/193 + https://github.com/owncloud/ocis/ocis-revapull/461 -- Enhancement - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea: [#454](https://github.com/owncloud/ocis/ocis-revapull/454) +* Enhancement - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea: [#454](https://github.com/owncloud/ocis/ocis-revapull/454) - - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea - Do not swallow 'not found' errors in - Stat [(reva/#1124)](https://github.com/cs3org/reva/pull/1124) - Rewire dav files to the - home storage [(reva/#1125)](https://github.com/cs3org/reva/pull/1125) - Do not restore - recycle entry on purge [(reva/#1099)](https://github.com/cs3org/reva/pull/1099) - - Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) - - Restore and delete trash items via ocs - [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) - Ensure ignoring public - stray shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) - Ensure - ignoring stray shares [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) - - Minor fixes in reva cmd, gateway uploads and smtpclient - [(reva/#1082)](https://github.com/cs3org/reva/pull/1082) - Owncloud driver - - propagate mtime on RemoveGrant - [(reva/#1115)](https://github.com/cs3org/reva/pull/1115) - Handle redirection - prefixes when extracting destination from URL - [(reva/#1111)](https://github.com/cs3org/reva/pull/1111) - Add UID and GID in ldap auth - driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) - Add calens check to - verify changelog entries in CI - [(reva/#1077)](https://github.com/cs3org/reva/pull/1077) - Refactor Reva CLI with - prompts [(reva/#1072)](https://github.com/cs3org/reva/pull/1072j) - Get file info - using fxids from EOS [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) - Update - LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) - System - information metrics cleanup - [(reva/#1114)](https://github.com/cs3org/reva/pull/1114) - System information - included in Prometheus metrics - [(reva/#1071)](https://github.com/cs3org/reva/pull/1071) - Add logic for resolving - storage references over webdav - [(reva/#1094)](https://github.com/cs3org/reva/pull/1094) + - Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea - Do not swallow 'not found' errors in + Stat [(reva/#1124)](https://github.com/cs3org/reva/pull/1124) - Rewire dav files to the + home storage [(reva/#1125)](https://github.com/cs3org/reva/pull/1125) - Do not restore + recycle entry on purge [(reva/#1099)](https://github.com/cs3org/reva/pull/1099) - + Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) - + Restore and delete trash items via ocs + [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) - Ensure ignoring public + stray shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) - Ensure + ignoring stray shares [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) - + Minor fixes in reva cmd, gateway uploads and smtpclient + [(reva/#1082)](https://github.com/cs3org/reva/pull/1082) - Owncloud driver - + propagate mtime on RemoveGrant + [(reva/#1115)](https://github.com/cs3org/reva/pull/1115) - Handle redirection + prefixes when extracting destination from URL + [(reva/#1111)](https://github.com/cs3org/reva/pull/1111) - Add UID and GID in ldap auth + driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) - Add calens check to + verify changelog entries in CI + [(reva/#1077)](https://github.com/cs3org/reva/pull/1077) - Refactor Reva CLI with + prompts [(reva/#1072)](https://github.com/cs3org/reva/pull/1072j) - Get file info + using fxids from EOS [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) - Update + LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) - System + information metrics cleanup + [(reva/#1114)](https://github.com/cs3org/reva/pull/1114) - System information + included in Prometheus metrics + [(reva/#1071)](https://github.com/cs3org/reva/pull/1071) - Add logic for resolving + storage references over webdav + [(reva/#1094)](https://github.com/cs3org/reva/pull/1094) - + https://github.com/owncloud/ocis/ocis-revapull/454 -- Enhancement - Update reva to v1.2.1-0.20200911111727-51649e37df2d: [#466](https://github.com/owncloud/ocis/ocis-revapull/466) +* Enhancement - Update reva to v1.2.1-0.20200911111727-51649e37df2d: [#466](https://github.com/owncloud/ocis/ocis-revapull/466) - - Update reva to v1.2.1-0.20200911111727-51649e37df2d - Added new OCIS storage driver ocis - [(reva/#1155)](https://github.com/cs3org/reva/pull/1155) - App provider: fallback to - env. variable if 'iopsecret' unset - [(reva/#1146)](https://github.com/cs3org/reva/pull/1146) - Add switch to database - [(reva/#1135)](https://github.com/cs3org/reva/pull/1135) - Add the ocdav HTTP svc to the - standalone config [(reva/#1128)](https://github.com/cs3org/reva/pull/1128) + - Update reva to v1.2.1-0.20200911111727-51649e37df2d - Added new OCIS storage driver ocis + [(reva/#1155)](https://github.com/cs3org/reva/pull/1155) - App provider: fallback to + env. variable if 'iopsecret' unset + [(reva/#1146)](https://github.com/cs3org/reva/pull/1146) - Add switch to database + [(reva/#1135)](https://github.com/cs3org/reva/pull/1135) - Add the ocdav HTTP svc to the + standalone config [(reva/#1128)](https://github.com/cs3org/reva/pull/1128) - + https://github.com/owncloud/ocis/ocis-revapull/466 -# Changelog for [0.13.0] \(2020-08-27) +# Changelog for [0.13.0] (2020-08-27) The following sections list the changes in ocis-reva 0.13.0. @@ -84,43 +84,43 @@ The following sections list the changes in ocis-reva 0.13.0. ## Summary -- Enhancement - Separate user and auth providers, add config for rest user: [#412](https://github.com/owncloud/ocis/ocis-revapull/412) -- Enhancement - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187: [#447](https://github.com/owncloud/ocis/ocis-revapull/447) +* Enhancement - Separate user and auth providers, add config for rest user: [#412](https://github.com/owncloud/ocis/ocis-revapull/412) +* Enhancement - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187: [#447](https://github.com/owncloud/ocis/ocis-revapull/447) ## Details -- Enhancement - Separate user and auth providers, add config for rest user: [#412](https://github.com/owncloud/ocis/ocis-revapull/412) +* Enhancement - Separate user and auth providers, add config for rest user: [#412](https://github.com/owncloud/ocis/ocis-revapull/412) - Previously, the auth and user provider services used to have the same driver, which restricted - using separate drivers and configs for both. This PR separates the two and adds the config for - the rest user driver and the gatewaysvc parameter to EOS fs. + Previously, the auth and user provider services used to have the same driver, which restricted + using separate drivers and configs for both. This PR separates the two and adds the config for + the rest user driver and the gatewaysvc parameter to EOS fs. - - + https://github.com/owncloud/ocis/ocis-revapull/412 + https://github.com/cs3org/reva/pull/995 -- Enhancement - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187: [#447](https://github.com/owncloud/ocis/ocis-revapull/447) +* Enhancement - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187: [#447](https://github.com/owncloud/ocis/ocis-revapull/447) - - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187 - fix restoring and deleting trash - items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) - Add UID and GID - in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) - Allow - listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) - - Ignore Stray Public Shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) - - Implement GetUserByClaim for LDAP user driver - [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) - eosclient: get file info by - fxid [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) - Ensure stray shares - get ignored [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) - Improve - timestamp precision while logging - [(reva/#1059)](https://github.com/cs3org/reva/pull/1059) - Ocfs lookup userid - (update) [(reva/#1052)](https://github.com/cs3org/reva/pull/1052) - Disallow sharing - the shares directory [(reva/#1051)](https://github.com/cs3org/reva/pull/1051) - Local - storage provider: Fixed resolution of fileid - [(reva/#1046)](https://github.com/cs3org/reva/pull/1046) - List public shares only - created by the current user [(reva/#1042)](https://github.com/cs3org/reva/pull/1042) + - Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187 - fix restoring and deleting trash + items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) - Add UID and GID + in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) - Allow + listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) - + Ignore Stray Public Shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) - + Implement GetUserByClaim for LDAP user driver + [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) - eosclient: get file info by + fxid [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) - Ensure stray shares + get ignored [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) - Improve + timestamp precision while logging + [(reva/#1059)](https://github.com/cs3org/reva/pull/1059) - Ocfs lookup userid + (update) [(reva/#1052)](https://github.com/cs3org/reva/pull/1052) - Disallow sharing + the shares directory [(reva/#1051)](https://github.com/cs3org/reva/pull/1051) - Local + storage provider: Fixed resolution of fileid + [(reva/#1046)](https://github.com/cs3org/reva/pull/1046) - List public shares only + created by the current user [(reva/#1042)](https://github.com/cs3org/reva/pull/1042) - + https://github.com/owncloud/ocis/ocis-revapull/447 -# Changelog for [0.12.0] \(2020-08-17) +# Changelog for [0.12.0] (2020-08-17) The following sections list the changes in ocis-reva 0.12.0. @@ -128,79 +128,79 @@ The following sections list the changes in ocis-reva 0.12.0. ## Summary -- Bugfix - Update LDAP filters: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) -- Change - Environment updates for the username userid split: [#420](https://github.com/owncloud/ocis/ocis-revapull/420) -- Enhancement - Update storage documentation: [#384](https://github.com/owncloud/ocis/ocis-revapull/384) -- Enhancement - Update reva to v0.1.1-0.20200724135750-b46288b375d6: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) -- Enhancement - Update reva to v0.1.1-0.20200728071211-c948977dd3a0: [#407](https://github.com/owncloud/ocis/ocis-revapull/407) +* Bugfix - Update LDAP filters: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) +* Change - Environment updates for the username userid split: [#420](https://github.com/owncloud/ocis/ocis-revapull/420) +* Enhancement - Update storage documentation: [#384](https://github.com/owncloud/ocis/ocis-revapull/384) +* Enhancement - Update reva to v0.1.1-0.20200724135750-b46288b375d6: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) +* Enhancement - Update reva to v0.1.1-0.20200728071211-c948977dd3a0: [#407](https://github.com/owncloud/ocis/ocis-revapull/407) ## Details -- Bugfix - Update LDAP filters: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) +* Bugfix - Update LDAP filters: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) - With the separation of use and find filters we can now use a filter that taken into account a users - uuid as well as his username. This is necessary to make sharing work with the new account service - which assigns accounts an immutable account id that is different from the username. - Furthermore, the separate find filters now allows searching users by their displayname or - email as well. + With the separation of use and find filters we can now use a filter that taken into account a users + uuid as well as his username. This is necessary to make sharing work with the new account service + which assigns accounts an immutable account id that is different from the username. + Furthermore, the separate find filters now allows searching users by their displayname or + email as well. - ```userfilter = - "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))" - findfilter = - "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))" - ``` + ``` userfilter = + "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))" + findfilter = + "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))" + ``` - - + https://github.com/owncloud/ocis/ocis-revapull/399 + https://github.com/cs3org/reva/pull/996 -- Change - Environment updates for the username userid split: [#420](https://github.com/owncloud/ocis/ocis-revapull/420) +* Change - Environment updates for the username userid split: [#420](https://github.com/owncloud/ocis/ocis-revapull/420) - We updated the owncloud storage driver in reva to properly look up users by userid or username - using the userprovider instead of taking the path segment as is. This requires the user service - address as well as changing the default layout to the userid instead of the username. The latter - is not considered a stable and persistent identifier. + We updated the owncloud storage driver in reva to properly look up users by userid or username + using the userprovider instead of taking the path segment as is. This requires the user service + address as well as changing the default layout to the userid instead of the username. The latter + is not considered a stable and persistent identifier. - - + https://github.com/owncloud/ocis/ocis-revapull/420 + https://github.com/cs3org/reva/pull/1033 -- Enhancement - Update storage documentation: [#384](https://github.com/owncloud/ocis/ocis-revapull/384) +* Enhancement - Update storage documentation: [#384](https://github.com/owncloud/ocis/ocis-revapull/384) - We added details to the documentation about storage requirements known from ownCloud 10, the - local storage driver and the ownCloud storage driver. + We added details to the documentation about storage requirements known from ownCloud 10, the + local storage driver and the ownCloud storage driver. - - + https://github.com/owncloud/ocis/ocis-revapull/384 + https://github.com/owncloud/ocis/ocis-revapull/390 -- Enhancement - Update reva to v0.1.1-0.20200724135750-b46288b375d6: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) +* Enhancement - Update reva to v0.1.1-0.20200724135750-b46288b375d6: [#399](https://github.com/owncloud/ocis/ocis-revapull/399) - - Update reva to v0.1.1-0.20200724135750-b46288b375d6 - Split LDAP user filters - (reva/#996) - meshdirectory: Add invite forward API to provider links (reva/#1000) - OCM: - Pass the link to the meshdirectory service in token mail (reva/#1002) - Update - github.com/go-ldap/ldap to v3 (reva/#1004) + - Update reva to v0.1.1-0.20200724135750-b46288b375d6 - Split LDAP user filters + (reva/#996) - meshdirectory: Add invite forward API to provider links (reva/#1000) - OCM: + Pass the link to the meshdirectory service in token mail (reva/#1002) - Update + github.com/go-ldap/ldap to v3 (reva/#1004) - - - - - + https://github.com/owncloud/ocis/ocis-revapull/399 + https://github.com/cs3org/reva/pull/996 + https://github.com/cs3org/reva/pull/1000 + https://github.com/cs3org/reva/pull/1002 + https://github.com/cs3org/reva/pull/1004 -- Enhancement - Update reva to v0.1.1-0.20200728071211-c948977dd3a0: [#407](https://github.com/owncloud/ocis/ocis-revapull/407) +* Enhancement - Update reva to v0.1.1-0.20200728071211-c948977dd3a0: [#407](https://github.com/owncloud/ocis/ocis-revapull/407) - - Update reva to v0.1.1-0.20200728071211-c948977dd3a0 - Use proper logging for ldap auth - requests (reva/#1008) - Update github.com/eventials/go-tus to - v0.0.0-20200718001131-45c7ec8f5d59 (reva/#1007) - Check if SMTP credentials are nil - (reva/#1006) + - Update reva to v0.1.1-0.20200728071211-c948977dd3a0 - Use proper logging for ldap auth + requests (reva/#1008) - Update github.com/eventials/go-tus to + v0.0.0-20200718001131-45c7ec8f5d59 (reva/#1007) - Check if SMTP credentials are nil + (reva/#1006) - - - - + https://github.com/owncloud/ocis/ocis-revapull/407 + https://github.com/cs3org/reva/pull/1008 + https://github.com/cs3org/reva/pull/1007 + https://github.com/cs3org/reva/pull/1006 -# Changelog for [0.11.0] \(2020-07-23) +# Changelog for [0.11.0] (2020-07-23) The following sections list the changes in ocis-reva 0.11.0. @@ -208,48 +208,48 @@ The following sections list the changes in ocis-reva 0.11.0. ## Summary -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#393](https://github.com/owncloud/ocis/ocis-revapull/393) -- Enhancement - Update reva to v0.1.1-0.20200710143425-cf38a45220c5: [#371](https://github.com/owncloud/ocis/ocis-revapull/371) -- Enhancement - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1: [#392](https://github.com/owncloud/ocis/ocis-revapull/392) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#393](https://github.com/owncloud/ocis/ocis-revapull/393) +* Enhancement - Update reva to v0.1.1-0.20200710143425-cf38a45220c5: [#371](https://github.com/owncloud/ocis/ocis-revapull/371) +* Enhancement - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1: [#392](https://github.com/owncloud/ocis/ocis-revapull/392) ## Details -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#393](https://github.com/owncloud/ocis/ocis-revapull/393) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#393](https://github.com/owncloud/ocis/ocis-revapull/393) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/ocis-revapull/393 -- Enhancement - Update reva to v0.1.1-0.20200710143425-cf38a45220c5: [#371](https://github.com/owncloud/ocis/ocis-revapull/371) +* Enhancement - Update reva to v0.1.1-0.20200710143425-cf38a45220c5: [#371](https://github.com/owncloud/ocis/ocis-revapull/371) - - Update reva to v0.1.1-0.20200710143425-cf38a45220c5 (#371) - Add wopi open (reva/#920) - - Added a CS3API compliant data exporter to Mentix (reva/#955) - Read SMTP password from env if - not set in config (reva/#953) - OCS share fix including file info after update (reva/#958) - Add - flag to smtpclient for for unauthenticated SMTP (reva/#963) + - Update reva to v0.1.1-0.20200710143425-cf38a45220c5 (#371) - Add wopi open (reva/#920) - + Added a CS3API compliant data exporter to Mentix (reva/#955) - Read SMTP password from env if + not set in config (reva/#953) - OCS share fix including file info after update (reva/#958) - Add + flag to smtpclient for for unauthenticated SMTP (reva/#963) - - - - - - + https://github.com/owncloud/ocis/ocis-revapull/371 + https://github.com/cs3org/reva/pull/920 + https://github.com/cs3org/reva/pull/953 + https://github.com/cs3org/reva/pull/955 + https://github.com/cs3org/reva/pull/958 + https://github.com/cs3org/reva/pull/963 -- Enhancement - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1: [#392](https://github.com/owncloud/ocis/ocis-revapull/392) +* Enhancement - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1: [#392](https://github.com/owncloud/ocis/ocis-revapull/392) - - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1 - Added signing key capability - (reva/#986) - Add functionality to create webdav references for OCM shares (reva/#974) - - Added a site locations exporter to Mentix (reva/#972) - Add option to config to allow requests - to hosts with unverified certificates (reva/#969) + - Update reva to v0.1.1-0.20200722125752-6dea7936f9d1 - Added signing key capability + (reva/#986) - Add functionality to create webdav references for OCM shares (reva/#974) - + Added a site locations exporter to Mentix (reva/#972) - Add option to config to allow requests + to hosts with unverified certificates (reva/#969) - - - - - + https://github.com/owncloud/ocis/ocis-revapull/392 + https://github.com/cs3org/reva/pull/986 + https://github.com/cs3org/reva/pull/974 + https://github.com/cs3org/reva/pull/972 + https://github.com/cs3org/reva/pull/969 -# Changelog for [0.10.0] \(2020-07-10) +# Changelog for [0.10.0] (2020-07-10) The following sections list the changes in ocis-reva 0.10.0. @@ -257,68 +257,67 @@ The following sections list the changes in ocis-reva 0.10.0. ## Summary -- Enhancement - Make frontend prefixes configurable: [#363](https://github.com/owncloud/ocis/ocis-revapull/363) -- Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#341](https://github.com/owncloud/ocis/ocis-revapull/341) -- Enhancement - Update reva to v0.1.1-0.20200709064551-91eed007038f: [#362](https://github.com/owncloud/ocis/ocis-revapull/362) +* Enhancement - Make frontend prefixes configurable: [#363](https://github.com/owncloud/ocis/ocis-revapull/363) +* Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#341](https://github.com/owncloud/ocis/ocis-revapull/341) +* Enhancement - Update reva to v0.1.1-0.20200709064551-91eed007038f: [#362](https://github.com/owncloud/ocis/ocis-revapull/362) ## Details -- Enhancement - Make frontend prefixes configurable: [#363](https://github.com/owncloud/ocis/ocis-revapull/363) +* Enhancement - Make frontend prefixes configurable: [#363](https://github.com/owncloud/ocis/ocis-revapull/363) - We introduce three new environment variables and preconfigure them the following way: + We introduce three new environment variables and preconfigure them the following way: - ````REVA_FRONTEND_DATAGATEWAY_PREFIX="data" REVA_FRONTEND_OCDAV_PREFIX="" - REVA_FRONTEND_OCS_PREFIX="ocs" ``` + ``` REVA_FRONTEND_DATAGATEWAY_PREFIX="data" REVA_FRONTEND_OCDAV_PREFIX="" + REVA_FRONTEND_OCS_PREFIX="ocs" ``` - This restores the reva defaults that were changed upstream. + This restores the reva defaults that were changed upstream. - https://github.com/owncloud/ocis/ocis-revapull/363 - https://github.com/cs3org/reva/pull/936/files#diff-51bf4fb310f7362f5c4306581132fc3bR63 - ```` + https://github.com/owncloud/ocis/ocis-revapull/363 + https://github.com/cs3org/reva/pull/936/files#diff-51bf4fb310f7362f5c4306581132fc3bR63 -- Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#341](https://github.com/owncloud/ocis/ocis-revapull/341) +* Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#341](https://github.com/owncloud/ocis/ocis-revapull/341) - - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#341) - Added country information - to Mentix (reva/#924) - Refactor metrics package to implement reader interface (reva/#934) - - Fix OCS public link share update values logic (#252, #288, reva/#930) + - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#341) - Added country information + to Mentix (reva/#924) - Refactor metrics package to implement reader interface (reva/#934) - + Fix OCS public link share update values logic (#252, #288, reva/#930) - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/252 + https://github.com/owncloud/ocis/ocis-revaissues/288 + https://github.com/owncloud/ocis/ocis-revapull/341 + https://github.com/cs3org/reva/pull/924 + https://github.com/cs3org/reva/pull/934 + https://github.com/cs3org/reva/pull/930 -- Enhancement - Update reva to v0.1.1-0.20200709064551-91eed007038f: [#362](https://github.com/owncloud/ocis/ocis-revapull/362) +* Enhancement - Update reva to v0.1.1-0.20200709064551-91eed007038f: [#362](https://github.com/owncloud/ocis/ocis-revapull/362) - - Update reva to v0.1.1-0.20200709064551-91eed007038f (#362) - Fix config for uploads when - data server is not exposed (reva/#936) - Update OCM partners endpoints (reva/#937) - Update - Ailleron endpoint (reva/#938) - OCS: Fix initialization of shares json file (reva/#940) - - OCS: Fix returned public link URL (#336, reva/#945) - OCS: Share wrap resource id correctly - (#344, reva/#951) - OCS: Implement share handling for accepting and listing shares (#11, - reva/#929) - ocm: dynamically lookup IPs for provider check (reva/#946) - ocm: add - functionality to mail OCM invite tokens (reva/#944) - Change percentagused to - percentageused (reva/#903) - Fix file-descriptor leak (reva/#954) + - Update reva to v0.1.1-0.20200709064551-91eed007038f (#362) - Fix config for uploads when + data server is not exposed (reva/#936) - Update OCM partners endpoints (reva/#937) - Update + Ailleron endpoint (reva/#938) - OCS: Fix initialization of shares json file (reva/#940) - + OCS: Fix returned public link URL (#336, reva/#945) - OCS: Share wrap resource id correctly + (#344, reva/#951) - OCS: Implement share handling for accepting and listing shares (#11, + reva/#929) - ocm: dynamically lookup IPs for provider check (reva/#946) - ocm: add + functionality to mail OCM invite tokens (reva/#944) - Change percentagused to + percentageused (reva/#903) - Fix file-descriptor leak (reva/#954) - - - - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/344 + https://github.com/owncloud/ocis/ocis-revaissues/336 + https://github.com/owncloud/ocis/ocis-revaissues/11 + https://github.com/owncloud/ocis/ocis-revapull/362 + https://github.com/cs3org/reva/pull/936 + https://github.com/cs3org/reva/pull/937 + https://github.com/cs3org/reva/pull/938 + https://github.com/cs3org/reva/pull/940 + https://github.com/cs3org/reva/pull/951 + https://github.com/cs3org/reva/pull/945 + https://github.com/cs3org/reva/pull/929 + https://github.com/cs3org/reva/pull/946 + https://github.com/cs3org/reva/pull/944 + https://github.com/cs3org/reva/pull/903 + https://github.com/cs3org/reva/pull/954 -# Changelog for [0.9.1] \(2020-07-02) +# Changelog for [0.9.1] (2020-07-02) The following sections list the changes in ocis-reva 0.9.1. @@ -326,19 +325,19 @@ The following sections list the changes in ocis-reva 0.9.1. ## Summary -- Enhancement - Add new config options for the http client: [#330](https://github.com/owncloud/ocis/ocis-revapull/330) +* Enhancement - Add new config options for the http client: [#330](https://github.com/owncloud/ocis/ocis-revapull/330) ## Details -- Enhancement - Add new config options for the http client: [#330](https://github.com/owncloud/ocis/ocis-revapull/330) +* Enhancement - Add new config options for the http client: [#330](https://github.com/owncloud/ocis/ocis-revapull/330) - The internal certificates are checked for validity after - , which causes the acceptance tests to fail. This - change sets new hardcoded defaults. + The internal certificates are checked for validity after + https://github.com/cs3org/reva/pull/914, which causes the acceptance tests to fail. This + change sets new hardcoded defaults. - + https://github.com/owncloud/ocis/ocis-revapull/330 -# Changelog for [0.9.0] \(2020-07-01) +# Changelog for [0.9.0] (2020-07-01) The following sections list the changes in ocis-reva 0.9.0. @@ -346,60 +345,60 @@ The following sections list the changes in ocis-reva 0.9.0. ## Summary -- Enhancement - Allow datagateway transfers to take 24h: [#323](https://github.com/owncloud/ocis/ocis-revapull/323) -- Enhancement - Update reva to v0.1.1-0.20200630075923-39a90d431566: [#320](https://github.com/owncloud/ocis/ocis-revapull/320) -- Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#328](https://github.com/owncloud/ocis/ocis-revapull/328) +* Enhancement - Allow datagateway transfers to take 24h: [#323](https://github.com/owncloud/ocis/ocis-revapull/323) +* Enhancement - Update reva to v0.1.1-0.20200630075923-39a90d431566: [#320](https://github.com/owncloud/ocis/ocis-revapull/320) +* Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#328](https://github.com/owncloud/ocis/ocis-revapull/328) ## Details -- Enhancement - Allow datagateway transfers to take 24h: [#323](https://github.com/owncloud/ocis/ocis-revapull/323) +* Enhancement - Allow datagateway transfers to take 24h: [#323](https://github.com/owncloud/ocis/ocis-revapull/323) - - Increase transfer token life time to 24h (PR #323) + - Increase transfer token life time to 24h (PR #323) - + https://github.com/owncloud/ocis/ocis-revapull/323 -- Enhancement - Update reva to v0.1.1-0.20200630075923-39a90d431566: [#320](https://github.com/owncloud/ocis/ocis-revapull/320) +* Enhancement - Update reva to v0.1.1-0.20200630075923-39a90d431566: [#320](https://github.com/owncloud/ocis/ocis-revapull/320) - - Update reva to v0.1.1-0.20200630075923-39a90d431566 (#320) - Return special value for - public link password (#294, reva/#904) - Fix public stat and listcontainer response to - contain the correct prefix (#310, reva/#902) + - Update reva to v0.1.1-0.20200630075923-39a90d431566 (#320) - Return special value for + public link password (#294, reva/#904) - Fix public stat and listcontainer response to + contain the correct prefix (#310, reva/#902) - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/310 + https://github.com/owncloud/ocis/ocis-revaissues/294 + https://github.com/owncloud/ocis/ocis-revapull/320 + https://github.com/cs3org/reva/pull/902 + https://github.com/cs3org/reva/pull/904 -- Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#328](https://github.com/owncloud/ocis/ocis-revapull/328) +* Enhancement - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66: [#328](https://github.com/owncloud/ocis/ocis-revapull/328) - - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#328) - Use sync.Map on pool package - (reva/#909) - Use mutex instead of sync.Map (reva/#915) - Use gatewayProviders instead of - storageProviders on conn pool (reva/#916) - Add logic to ls and stat to process arbitrary - metadata keys (reva/#905) - Preliminary implementation of Set/UnsetArbitraryMetadata - (reva/#912) - Make datagateway forward headers (reva/#913, reva/#926) - Add option to cmd - upload to disable tus (reva/#911) - OCS Share Allow date-only expiration for public shares - (#288, reva/#918) - OCS Share Remove array from OCS Share update response (#252, reva/#919) - - OCS Share Implement GET request for single shares (#249, reva/#921) + - Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#328) - Use sync.Map on pool package + (reva/#909) - Use mutex instead of sync.Map (reva/#915) - Use gatewayProviders instead of + storageProviders on conn pool (reva/#916) - Add logic to ls and stat to process arbitrary + metadata keys (reva/#905) - Preliminary implementation of Set/UnsetArbitraryMetadata + (reva/#912) - Make datagateway forward headers (reva/#913, reva/#926) - Add option to cmd + upload to disable tus (reva/#911) - OCS Share Allow date-only expiration for public shares + (#288, reva/#918) - OCS Share Remove array from OCS Share update response (#252, reva/#919) - + OCS Share Implement GET request for single shares (#249, reva/#921) - - - - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/288 + https://github.com/owncloud/ocis/ocis-revaissues/252 + https://github.com/owncloud/ocis/ocis-revaissues/249 + https://github.com/owncloud/ocis/ocis-revapull/328 + https://github.com/cs3org/reva/pull/909 + https://github.com/cs3org/reva/pull/915 + https://github.com/cs3org/reva/pull/916 + https://github.com/cs3org/reva/pull/905 + https://github.com/cs3org/reva/pull/912 + https://github.com/cs3org/reva/pull/913 + https://github.com/cs3org/reva/pull/926 + https://github.com/cs3org/reva/pull/911 + https://github.com/cs3org/reva/pull/918 + https://github.com/cs3org/reva/pull/919 + https://github.com/cs3org/reva/pull/921 -# Changelog for [0.8.0] \(2020-06-29) +# Changelog for [0.8.0] (2020-06-29) The following sections list the changes in ocis-reva 0.8.0. @@ -407,24 +406,24 @@ The following sections list the changes in ocis-reva 0.8.0. ## Summary -- Enhancement - Update reva to v0.1.1-0.20200629131207-04298ea1c088: [#309](https://github.com/owncloud/ocis/ocis-revapull/309) +* Enhancement - Update reva to v0.1.1-0.20200629131207-04298ea1c088: [#309](https://github.com/owncloud/ocis/ocis-revapull/309) ## Details -- Enhancement - Update reva to v0.1.1-0.20200629131207-04298ea1c088: [#309](https://github.com/owncloud/ocis/ocis-revapull/309) +* Enhancement - Update reva to v0.1.1-0.20200629131207-04298ea1c088: [#309](https://github.com/owncloud/ocis/ocis-revapull/309) - - Update reva to v0.1.1-0.20200629094927-e33d65230abc (#309) - Fix public link file share - (#278, reva/#895, reva/#900) - Delete public share (reva/#899) - Updated reva to - v0.1.1-0.20200629131207-04298ea1c088 (#313) + - Update reva to v0.1.1-0.20200629094927-e33d65230abc (#309) - Fix public link file share + (#278, reva/#895, reva/#900) - Delete public share (reva/#899) - Updated reva to + v0.1.1-0.20200629131207-04298ea1c088 (#313) - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/278 + https://github.com/owncloud/ocis/ocis-revapull/309 + https://github.com/cs3org/reva/pull/895 + https://github.com/cs3org/reva/pull/899 + https://github.com/cs3org/reva/pull/900 + https://github.com/owncloud/ocis/ocis-revapull/313 -# Changelog for [0.7.0] \(2020-06-26) +# Changelog for [0.7.0] (2020-06-26) The following sections list the changes in ocis-reva 0.7.0. @@ -432,34 +431,34 @@ The following sections list the changes in ocis-reva 0.7.0. ## Summary -- Enhancement - Update reva to v0.1.1-0.20200626111234-e21c32db9614: [#261](https://github.com/owncloud/ocis/ocis-revapull/261) +* Enhancement - Update reva to v0.1.1-0.20200626111234-e21c32db9614: [#261](https://github.com/owncloud/ocis/ocis-revapull/261) ## Details -- Enhancement - Update reva to v0.1.1-0.20200626111234-e21c32db9614: [#261](https://github.com/owncloud/ocis/ocis-revapull/261) +* Enhancement - Update reva to v0.1.1-0.20200626111234-e21c32db9614: [#261](https://github.com/owncloud/ocis/ocis-revapull/261) - - Updated reva to v0.1.1-0.20200626111234-e21c32db9614 (#304) - TUS upload support through - datagateway (#261, reva/#878, reva/#888) - Added support for differing metrics path for - Prometheus to Mentix (reva/#875) - More data exported by Mentix (reva/#881) - Implementation - of file operations in public folder shares (#49, #293, reva/#877) - Make httpclient trust - local certificates for now (reva/#880) - EOS homes are not configured with an enable-flag - anymore, but with a dedicated storage driver. We're using it now and adapted default configs of - storages (reva/#891, #304) + - Updated reva to v0.1.1-0.20200626111234-e21c32db9614 (#304) - TUS upload support through + datagateway (#261, reva/#878, reva/#888) - Added support for differing metrics path for + Prometheus to Mentix (reva/#875) - More data exported by Mentix (reva/#881) - Implementation + of file operations in public folder shares (#49, #293, reva/#877) - Make httpclient trust + local certificates for now (reva/#880) - EOS homes are not configured with an enable-flag + anymore, but with a dedicated storage driver. We're using it now and adapted default configs of + storages (reva/#891, #304) - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/49 + https://github.com/owncloud/ocis/ocis-revaissues/293 + https://github.com/owncloud/ocis/ocis-revaissues/261 + https://github.com/owncloud/ocis/ocis-revapull/261 + https://github.com/cs3org/reva/pull/875 + https://github.com/cs3org/reva/pull/877 + https://github.com/cs3org/reva/pull/878 + https://github.com/cs3org/reva/pull/881 + https://github.com/cs3org/reva/pull/880 + https://github.com/cs3org/reva/pull/888 + https://github.com/owncloud/ocis/ocis-revapull/304 + https://github.com/cs3org/reva/pull/891 -# Changelog for [0.6.0] \(2020-06-24) +# Changelog for [0.6.0] (2020-06-24) The following sections list the changes in ocis-reva 0.6.0. @@ -467,73 +466,73 @@ The following sections list the changes in ocis-reva 0.6.0. ## Summary -- Enhancement - Update reva to v0.1.1-0.20200624063447-db5e6635d5f0: [#279](https://github.com/owncloud/ocis/ocis-revapull/279) +* Enhancement - Update reva to v0.1.1-0.20200624063447-db5e6635d5f0: [#279](https://github.com/owncloud/ocis/ocis-revapull/279) ## Details -- Enhancement - Update reva to v0.1.1-0.20200624063447-db5e6635d5f0: [#279](https://github.com/owncloud/ocis/ocis-revapull/279) +* Enhancement - Update reva to v0.1.1-0.20200624063447-db5e6635d5f0: [#279](https://github.com/owncloud/ocis/ocis-revapull/279) - - Updated reva to v0.1.1-0.20200624063447-db5e6635d5f0 (#279) - Local storage: URL-encode - file ids to ease integration with other microservices like WOPI (reva/#799) - Mentix fixes - (reva/#803, reva/#817) - OCDAV: fix returned timestamp format (#116, reva/#805) - OCM: add - default prefix (#814) - add the content-length header to the responses (reva/#816) - Deps: - clean (reva/#818) - Fix trashbin listing (#112, #253, #254, reva/#819) - Make the json - publicshare driver configurable (reva/#820) - TUS: Return metadata headers after direct - upload (ocis/#216, reva/#813) - Set mtime to storage after simple upload (#174, reva/#823, - reva/#841) - Configure grpc client to allow for insecure conns and skip server certificate - verification (reva/#825) - Deployment: simplify config with more default values - (reva/#826, reva/#837, reva/#843, reva/#848, reva/#842) - Separate local fs into home and - with home disabled (reva/#829) - Register reflection after other services (reva/#831) - - Refactor EOS fs (reva/#830) - Add ocs-share-permissions to the propfind response (#47, - reva/#836) - OCS: Properly read permissions when creating public link (reva/#852) - localfs: - make normalize return associated error (reva/#850) - EOS grpc driver (reva/#664) - OCS: Add - support for legacy public link arg publicUpload (reva/#853) - Add cache layer to user REST - package (reva/#849) - Meshdirectory: pass query params to selected provider (reva/#863) - - Pass etag in quotes from the fs layer (#269, reva/#866, reva/#867) - OCM: use refactored - cs3apis provider definition (reva/#864) + - Updated reva to v0.1.1-0.20200624063447-db5e6635d5f0 (#279) - Local storage: URL-encode + file ids to ease integration with other microservices like WOPI (reva/#799) - Mentix fixes + (reva/#803, reva/#817) - OCDAV: fix returned timestamp format (#116, reva/#805) - OCM: add + default prefix (#814) - add the content-length header to the responses (reva/#816) - Deps: + clean (reva/#818) - Fix trashbin listing (#112, #253, #254, reva/#819) - Make the json + publicshare driver configurable (reva/#820) - TUS: Return metadata headers after direct + upload (ocis/#216, reva/#813) - Set mtime to storage after simple upload (#174, reva/#823, + reva/#841) - Configure grpc client to allow for insecure conns and skip server certificate + verification (reva/#825) - Deployment: simplify config with more default values + (reva/#826, reva/#837, reva/#843, reva/#848, reva/#842) - Separate local fs into home and + with home disabled (reva/#829) - Register reflection after other services (reva/#831) - + Refactor EOS fs (reva/#830) - Add ocs-share-permissions to the propfind response (#47, + reva/#836) - OCS: Properly read permissions when creating public link (reva/#852) - localfs: + make normalize return associated error (reva/#850) - EOS grpc driver (reva/#664) - OCS: Add + support for legacy public link arg publicUpload (reva/#853) - Add cache layer to user REST + package (reva/#849) - Meshdirectory: pass query params to selected provider (reva/#863) - + Pass etag in quotes from the fs layer (#269, reva/#866, reva/#867) - OCM: use refactored + cs3apis provider definition (reva/#864) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/116 + https://github.com/owncloud/ocis/ocis-revaissues/112 + https://github.com/owncloud/ocis/ocis-revaissues/253 + https://github.com/owncloud/ocis/ocis-revaissues/254 + https://github.com/owncloud/ocis/issues/216 + https://github.com/owncloud/ocis/ocis-revaissues/174 + https://github.com/owncloud/ocis/ocis-revaissues/47 + https://github.com/owncloud/ocis/ocis-revaissues/269 + https://github.com/owncloud/ocis/ocis-revapull/279 + https://github.com/owncloud/cs3org/reva/pull/799 + https://github.com/owncloud/cs3org/reva/pull/803 + https://github.com/owncloud/cs3org/reva/pull/817 + https://github.com/owncloud/cs3org/reva/pull/805 + https://github.com/owncloud/cs3org/reva/pull/814 + https://github.com/owncloud/cs3org/reva/pull/816 + https://github.com/owncloud/cs3org/reva/pull/818 + https://github.com/owncloud/cs3org/reva/pull/819 + https://github.com/owncloud/cs3org/reva/pull/820 + https://github.com/owncloud/cs3org/reva/pull/823 + https://github.com/owncloud/cs3org/reva/pull/841 + https://github.com/owncloud/cs3org/reva/pull/813 + https://github.com/owncloud/cs3org/reva/pull/825 + https://github.com/owncloud/cs3org/reva/pull/826 + https://github.com/owncloud/cs3org/reva/pull/837 + https://github.com/owncloud/cs3org/reva/pull/843 + https://github.com/owncloud/cs3org/reva/pull/848 + https://github.com/owncloud/cs3org/reva/pull/842 + https://github.com/owncloud/cs3org/reva/pull/829 + https://github.com/owncloud/cs3org/reva/pull/831 + https://github.com/owncloud/cs3org/reva/pull/830 + https://github.com/owncloud/cs3org/reva/pull/836 + https://github.com/owncloud/cs3org/reva/pull/852 + https://github.com/owncloud/cs3org/reva/pull/850 + https://github.com/owncloud/cs3org/reva/pull/664 + https://github.com/owncloud/cs3org/reva/pull/853 + https://github.com/owncloud/cs3org/reva/pull/849 + https://github.com/owncloud/cs3org/reva/pull/863 + https://github.com/owncloud/cs3org/reva/pull/866 + https://github.com/owncloud/cs3org/reva/pull/867 + https://github.com/owncloud/cs3org/reva/pull/864 -# Changelog for [0.5.0] \(2020-06-04) +# Changelog for [0.5.0] (2020-06-04) The following sections list the changes in ocis-reva 0.5.0. @@ -541,37 +540,37 @@ The following sections list the changes in ocis-reva 0.5.0. ## Summary -- Enhancement - Add TUS global capability: [#177](https://github.com/owncloud/ocis/ocis-revaissues/177) -- Enhancement - Update reva to v0.1.1-0.20200603071553-e05a87521618: [#244](https://github.com/owncloud/ocis/ocis-revaissues/244) +* Enhancement - Add TUS global capability: [#177](https://github.com/owncloud/ocis/ocis-revaissues/177) +* Enhancement - Update reva to v0.1.1-0.20200603071553-e05a87521618: [#244](https://github.com/owncloud/ocis/ocis-revaissues/244) ## Details -- Enhancement - Add TUS global capability: [#177](https://github.com/owncloud/ocis/ocis-revaissues/177) +* Enhancement - Add TUS global capability: [#177](https://github.com/owncloud/ocis/ocis-revaissues/177) - The TUS global capabilities from Reva are now exposed. + The TUS global capabilities from Reva are now exposed. - The advertised max chunk size can be configured using the "--upload-max-chunk-size" CLI - switch or "REVA_FRONTEND_UPLOAD_MAX_CHUNK_SIZE" environment variable. The advertised - http method override can be configured using the "--upload-http-method-override" CLI - switch or "REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE" environment variable. + The advertised max chunk size can be configured using the "--upload-max-chunk-size" CLI + switch or "REVA_FRONTEND_UPLOAD_MAX_CHUNK_SIZE" environment variable. The advertised + http method override can be configured using the "--upload-http-method-override" CLI + switch or "REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE" environment variable. - - + https://github.com/owncloud/ocis/ocis-revaissues/177 + https://github.com/owncloud/ocis/ocis-revapull/228 -- Enhancement - Update reva to v0.1.1-0.20200603071553-e05a87521618: [#244](https://github.com/owncloud/ocis/ocis-revaissues/244) +* Enhancement - Update reva to v0.1.1-0.20200603071553-e05a87521618: [#244](https://github.com/owncloud/ocis/ocis-revaissues/244) - - Updated reva to v0.1.1-0.20200603071553-e05a87521618 (#244) - Add option to disable TUS on - OC layer (#177, reva/#791) - Dataprovider now supports method override (#177, reva/#792) - - OCS fixes for create public link (reva/#798) + - Updated reva to v0.1.1-0.20200603071553-e05a87521618 (#244) - Add option to disable TUS on + OC layer (#177, reva/#791) - Dataprovider now supports method override (#177, reva/#792) - + OCS fixes for create public link (reva/#798) - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/244 + https://github.com/owncloud/ocis/ocis-revaissues/177 + https://github.com/cs3org/reva/pull/791 + https://github.com/cs3org/reva/pull/792 + https://github.com/cs3org/reva/pull/798 -# Changelog for [0.4.0] \(2020-05-29) +# Changelog for [0.4.0] (2020-05-29) The following sections list the changes in ocis-reva 0.4.0. @@ -579,48 +578,48 @@ The following sections list the changes in ocis-reva 0.4.0. ## Summary -- Enhancement - Add public shares service: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) -- Enhancement - Update reva to v0.1.1-0.20200529120551-4f2d9c85d3c9: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) +* Enhancement - Add public shares service: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) +* Enhancement - Update reva to v0.1.1-0.20200529120551-4f2d9c85d3c9: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) ## Details -- Enhancement - Add public shares service: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) +* Enhancement - Add public shares service: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) - Added Public Shares service with CRUD operations and File Public Shares Manager + Added Public Shares service with CRUD operations and File Public Shares Manager - - + https://github.com/owncloud/ocis/ocis-revaissues/49 + https://github.com/owncloud/ocis/ocis-revapull/232 -- Enhancement - Update reva to v0.1.1-0.20200529120551-4f2d9c85d3c9: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) +* Enhancement - Update reva to v0.1.1-0.20200529120551-4f2d9c85d3c9: [#49](https://github.com/owncloud/ocis/ocis-revaissues/49) - - Updated reva to v0.1.1-0.20200529120551 (#232) - Public Shares CRUD, File Public Shares - Manager (#49, #232, reva/#681, reva/#788) - Disable HTTP-KeepAlives to reduce fd count - (ocis/#268, reva/#787) - Fix trashbin listing (#229, reva/#782) - Create PUT wrapper for TUS - uploads (reva/#770) - Add security access headers for ocdav requests (#66, reva/#780) - Add - option to revad cmd to specify logging level (reva/#772) - New metrics package (reva/#740) - - Remove implicit data member from memory store (reva/#774) - Added TUS global capabilities - (#177, reva/#775) - Fix PROPFIND with Depth 1 for cross-storage operations (reva/#779) + - Updated reva to v0.1.1-0.20200529120551 (#232) - Public Shares CRUD, File Public Shares + Manager (#49, #232, reva/#681, reva/#788) - Disable HTTP-KeepAlives to reduce fd count + (ocis/#268, reva/#787) - Fix trashbin listing (#229, reva/#782) - Create PUT wrapper for TUS + uploads (reva/#770) - Add security access headers for ocdav requests (#66, reva/#780) - Add + option to revad cmd to specify logging level (reva/#772) - New metrics package (reva/#740) - + Remove implicit data member from memory store (reva/#774) - Added TUS global capabilities + (#177, reva/#775) - Fix PROPFIND with Depth 1 for cross-storage operations (reva/#779) - - - - - - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/49 + https://github.com/owncloud/ocis/ocis-revaissues/229 + https://github.com/owncloud/ocis/ocis-revaissues/66 + https://github.com/owncloud/ocis/ocis-revaissues/177 + https://github.com/owncloud/ocis/issues/268 + https://github.com/owncloud/ocis/ocis-revapull/232 + https://github.com/cs3org/reva/pull/787 + https://github.com/cs3org/reva/pull/681 + https://github.com/cs3org/reva/pull/788 + https://github.com/cs3org/reva/pull/782 + https://github.com/cs3org/reva/pull/770 + https://github.com/cs3org/reva/pull/780 + https://github.com/cs3org/reva/pull/772 + https://github.com/cs3org/reva/pull/740 + https://github.com/cs3org/reva/pull/774 + https://github.com/cs3org/reva/pull/775 + https://github.com/cs3org/reva/pull/779 -# Changelog for [0.3.0] \(2020-05-20) +# Changelog for [0.3.0] (2020-05-20) The following sections list the changes in ocis-reva 0.3.0. @@ -628,87 +627,87 @@ The following sections list the changes in ocis-reva 0.3.0. ## Summary -- Enhancement - Update reva to v0.1.1-0.20200520150229: [#161](https://github.com/owncloud/ocis/ocis-revapull/161) +* Enhancement - Update reva to v0.1.1-0.20200520150229: [#161](https://github.com/owncloud/ocis/ocis-revapull/161) ## Details -- Enhancement - Update reva to v0.1.1-0.20200520150229: [#161](https://github.com/owncloud/ocis/ocis-revapull/161) +* Enhancement - Update reva to v0.1.1-0.20200520150229: [#161](https://github.com/owncloud/ocis/ocis-revapull/161) - - Update reva to v0.1.1-0.20200520150229 (#161, #180, #192, #207, #221) - Return arbitrary - metadata with stat, upload without TUS (reva/#766) - Stat file before returning datagateway - URL when initiating download (reva/#765) - REST driver for user package (reva/#747) - Sharing - behavior now consistent with the old backend (#20, #26, #43, #44, #46, #94 ,reva/#748) - Mentix - service (reva/#755) - meshdirectory: add mentix driver for gocdb sites integration - (reva/#754) - Add functionality to commit to storage for OCM shares (reva/#760) - Add option in - config to disable tus (reva/#759) - ocdav: fix custom property XML parsing in PROPPATCH - handler (#203, reva/#743) - ocdav: fix PROPPATCH response for removed properties (#186, - reva/#742) - ocdav: implement PROPFIND infinity depth (#212, reva/#758) - Local fs: Allow - setting of arbitrary metadata, minor bug fixes (reva/#764) - Local fs: metadata handling and - share persistence (reva/#732) - Local fs: return file owner info in stat (reva/#750) - Fixed - regression when uploading empty files to OCFS or EOS with PUT and TUS (#188, reva/#734) - On - delete move the file versions to the trashbin (#94, reva/#731) - Fix OCFS move operation (#182, - reva/#729) - Fix OCFS custom property / xattr removal (reva/#728) - Retry trashbin in case of - timestamp collision (reva/#730) - Disable chunking v1 by default (reva/#678) - Implement ocs - to http status code mapping (#26, reva/#696, reva/#707, reva/#711) - Handle the case if - directory already exists (reva/#695) - Added TUS upload support (reva/#674, reva/#725, - reva/#717) - Always return file sizes in Webdav PROPFIND (reva/#712) - Use default mime type - when none was detected (reva/#713) - Fixed Webdav shallow COPY (reva/#714) - Fixed arbitrary - namespace usage for custom properties in PROPFIND (#57, reva/#720) - Implement returning - Webdav custom properties from xattr (#57, reva/#721) - Minor fix in OCM share pkg (reva/#718) + - Update reva to v0.1.1-0.20200520150229 (#161, #180, #192, #207, #221) - Return arbitrary + metadata with stat, upload without TUS (reva/#766) - Stat file before returning datagateway + URL when initiating download (reva/#765) - REST driver for user package (reva/#747) - Sharing + behavior now consistent with the old backend (#20, #26, #43, #44, #46, #94 ,reva/#748) - Mentix + service (reva/#755) - meshdirectory: add mentix driver for gocdb sites integration + (reva/#754) - Add functionality to commit to storage for OCM shares (reva/#760) - Add option in + config to disable tus (reva/#759) - ocdav: fix custom property XML parsing in PROPPATCH + handler (#203, reva/#743) - ocdav: fix PROPPATCH response for removed properties (#186, + reva/#742) - ocdav: implement PROPFIND infinity depth (#212, reva/#758) - Local fs: Allow + setting of arbitrary metadata, minor bug fixes (reva/#764) - Local fs: metadata handling and + share persistence (reva/#732) - Local fs: return file owner info in stat (reva/#750) - Fixed + regression when uploading empty files to OCFS or EOS with PUT and TUS (#188, reva/#734) - On + delete move the file versions to the trashbin (#94, reva/#731) - Fix OCFS move operation (#182, + reva/#729) - Fix OCFS custom property / xattr removal (reva/#728) - Retry trashbin in case of + timestamp collision (reva/#730) - Disable chunking v1 by default (reva/#678) - Implement ocs + to http status code mapping (#26, reva/#696, reva/#707, reva/#711) - Handle the case if + directory already exists (reva/#695) - Added TUS upload support (reva/#674, reva/#725, + reva/#717) - Always return file sizes in Webdav PROPFIND (reva/#712) - Use default mime type + when none was detected (reva/#713) - Fixed Webdav shallow COPY (reva/#714) - Fixed arbitrary + namespace usage for custom properties in PROPFIND (#57, reva/#720) - Implement returning + Webdav custom properties from xattr (#57, reva/#721) - Minor fix in OCM share pkg (reva/#718) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + https://github.com/owncloud/ocis/ocis-revaissues/20 + https://github.com/owncloud/ocis/ocis-revaissues/26 + https://github.com/owncloud/ocis/ocis-revaissues/43 + https://github.com/owncloud/ocis/ocis-revaissues/44 + https://github.com/owncloud/ocis/ocis-revaissues/46 + https://github.com/owncloud/ocis/ocis-revaissues/94 + https://github.com/owncloud/ocis/ocis-revaissues/26 + https://github.com/owncloud/ocis/ocis-revaissues/67 + https://github.com/owncloud/ocis/ocis-revaissues/57 + https://github.com/owncloud/ocis/ocis-revaissues/94 + https://github.com/owncloud/ocis/ocis-revaissues/188 + https://github.com/owncloud/ocis/ocis-revaissues/182 + https://github.com/owncloud/ocis/ocis-revaissues/212 + https://github.com/owncloud/ocis/ocis-revaissues/186 + https://github.com/owncloud/ocis/ocis-revaissues/203 + https://github.com/owncloud/ocis/ocis-revapull/161 + https://github.com/owncloud/ocis/ocis-revapull/180 + https://github.com/owncloud/ocis/ocis-revapull/192 + https://github.com/owncloud/ocis/ocis-revapull/207 + https://github.com/owncloud/ocis/ocis-revapull/221 + https://github.com/cs3org/reva/pull/766 + https://github.com/cs3org/reva/pull/765 + https://github.com/cs3org/reva/pull/755 + https://github.com/cs3org/reva/pull/754 + https://github.com/cs3org/reva/pull/747 + https://github.com/cs3org/reva/pull/748 + https://github.com/cs3org/reva/pull/760 + https://github.com/cs3org/reva/pull/759 + https://github.com/cs3org/reva/pull/678 + https://github.com/cs3org/reva/pull/696 + https://github.com/cs3org/reva/pull/707 + https://github.com/cs3org/reva/pull/711 + https://github.com/cs3org/reva/pull/695 + https://github.com/cs3org/reva/pull/674 + https://github.com/cs3org/reva/pull/725 + https://github.com/cs3org/reva/pull/717 + https://github.com/cs3org/reva/pull/712 + https://github.com/cs3org/reva/pull/713 + https://github.com/cs3org/reva/pull/720 + https://github.com/cs3org/reva/pull/718 + https://github.com/cs3org/reva/pull/731 + https://github.com/cs3org/reva/pull/734 + https://github.com/cs3org/reva/pull/729 + https://github.com/cs3org/reva/pull/728 + https://github.com/cs3org/reva/pull/730 + https://github.com/cs3org/reva/pull/758 + https://github.com/cs3org/reva/pull/742 + https://github.com/cs3org/reva/pull/764 + https://github.com/cs3org/reva/pull/743 + https://github.com/cs3org/reva/pull/732 + https://github.com/cs3org/reva/pull/750 -# Changelog for [0.2.1] \(2020-04-28) +# Changelog for [0.2.1] (2020-04-28) The following sections list the changes in ocis-reva 0.2.1. @@ -716,36 +715,36 @@ The following sections list the changes in ocis-reva 0.2.1. ## Summary -- Bugfix - Stop advertising unsupported chunking v2: [#145](https://github.com/owncloud/ocis/ocis-revapull/145) -- Enhancement - Allow configuring the gateway for dataproviders: [#136](https://github.com/owncloud/ocis/ocis-revapull/136) -- Enhancement - Use a configured logger on reva runtime: [#153](https://github.com/owncloud/ocis/ocis-revapull/153) +* Bugfix - Stop advertising unsupported chunking v2: [#145](https://github.com/owncloud/ocis/ocis-revapull/145) +* Enhancement - Allow configuring the gateway for dataproviders: [#136](https://github.com/owncloud/ocis/ocis-revapull/136) +* Enhancement - Use a configured logger on reva runtime: [#153](https://github.com/owncloud/ocis/ocis-revapull/153) ## Details -- Bugfix - Stop advertising unsupported chunking v2: [#145](https://github.com/owncloud/ocis/ocis-revapull/145) +* Bugfix - Stop advertising unsupported chunking v2: [#145](https://github.com/owncloud/ocis/ocis-revapull/145) - Removed "chunking" attribute in the DAV capabilities. Please note that chunking v2 is - advertised as "chunking 1.0" while chunking v1 is the attribute "bigfilechunking" which is - already false. + Removed "chunking" attribute in the DAV capabilities. Please note that chunking v2 is + advertised as "chunking 1.0" while chunking v1 is the attribute "bigfilechunking" which is + already false. - + https://github.com/owncloud/ocis/ocis-revapull/145 -- Enhancement - Allow configuring the gateway for dataproviders: [#136](https://github.com/owncloud/ocis/ocis-revapull/136) +* Enhancement - Allow configuring the gateway for dataproviders: [#136](https://github.com/owncloud/ocis/ocis-revapull/136) - This allows using basic or bearer auth when directly talking to dataproviders. + This allows using basic or bearer auth when directly talking to dataproviders. - + https://github.com/owncloud/ocis/ocis-revapull/136 -- Enhancement - Use a configured logger on reva runtime: [#153](https://github.com/owncloud/ocis/ocis-revapull/153) +* Enhancement - Use a configured logger on reva runtime: [#153](https://github.com/owncloud/ocis/ocis-revapull/153) - For consistency reasons we need a configured logger that is inline with an ocis logger, so the - log cascade can be easily parsed by a human. + For consistency reasons we need a configured logger that is inline with an ocis logger, so the + log cascade can be easily parsed by a human. - + https://github.com/owncloud/ocis/ocis-revapull/153 -# Changelog for [0.2.0] \(2020-04-15) +# Changelog for [0.2.0] (2020-04-15) The following sections list the changes in ocis-reva 0.2.0. @@ -753,27 +752,27 @@ The following sections list the changes in ocis-reva 0.2.0. ## Summary -- Bugfix - Fix eos user sharing config: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) -- Enhancement - Update reva to v1.1.0-20200414133413: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) +* Bugfix - Fix eos user sharing config: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) +* Enhancement - Update reva to v1.1.0-20200414133413: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) ## Details -- Bugfix - Fix eos user sharing config: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) +* Bugfix - Fix eos user sharing config: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) - We have added missing config options for the user sharing manager and added a dedicated eos - storage command with pre configured settings for the eos-docker container. It configures a - `Shares` folder in a users home when using eos as the storage driver. + We have added missing config options for the user sharing manager and added a dedicated eos + storage command with pre configured settings for the eos-docker container. It configures a + `Shares` folder in a users home when using eos as the storage driver. - + https://github.com/owncloud/ocis/ocis-revapull/127 -- Enhancement - Update reva to v1.1.0-20200414133413: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) +* Enhancement - Update reva to v1.1.0-20200414133413: [#127](https://github.com/owncloud/ocis/ocis-revapull/127) - Adds initial public sharing and ocm implementation. + Adds initial public sharing and ocm implementation. - + https://github.com/owncloud/ocis/ocis-revapull/127 -# Changelog for [0.1.1] \(2020-03-31) +# Changelog for [0.1.1] (2020-03-31) The following sections list the changes in ocis-reva 0.1.1. @@ -781,18 +780,18 @@ The following sections list the changes in ocis-reva 0.1.1. ## Summary -- Bugfix - Fix eos config: [#125](https://github.com/owncloud/ocis/ocis-revapull/125) +* Bugfix - Fix eos config: [#125](https://github.com/owncloud/ocis/ocis-revapull/125) ## Details -- Bugfix - Fix eos config: [#125](https://github.com/owncloud/ocis/ocis-revapull/125) +* Bugfix - Fix eos config: [#125](https://github.com/owncloud/ocis/ocis-revapull/125) - We have added missing config options for the home layout to the config struct that is passed to - eos. + We have added missing config options for the home layout to the config struct that is passed to + eos. - + https://github.com/owncloud/ocis/ocis-revapull/125 -# Changelog for [0.1.0] \(2020-03-23) +# Changelog for [0.1.0] (2020-03-23) The following sections list the changes in ocis-reva 0.1.0. @@ -800,149 +799,150 @@ The following sections list the changes in ocis-reva 0.1.0. ## Summary -- Bugfix - Set correct flag type in the flagsets: [#75](https://github.com/owncloud/ocis/ocis-revaissues/75) -- Bugfix - We fixed a typo in the `REVA_LDAP_SCHEMA_MAIL` environment variable: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) -- Bugfix - Allow different namespaces for /webdav and /dav/files: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) -- Change - Use /home as default namespace: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocis-revaissues/1) -- Change - Start multiple services with dedicated commands: [#6](https://github.com/owncloud/ocis/ocis-revaissues/6) -- Change - Storage providers now default to exposing data servers: [#89](https://github.com/owncloud/ocis/ocis-revaissues/89) -- Change - Default to running behind ocis-proxy: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) -- Enhancement - Expose owncloud storage driver config in flagset: [#87](https://github.com/owncloud/ocis/ocis-revaissues/87) -- Enhancement - Update reva to v0.0.2-0.20200212114015-0dbce24f7e8b: [#91](https://github.com/owncloud/ocis/ocis-revapull/91) -- Enhancement - Allow configuring user sharing driver: [#115](https://github.com/owncloud/ocis/ocis-revapull/115) +* Bugfix - Set correct flag type in the flagsets: [#75](https://github.com/owncloud/ocis/ocis-revaissues/75) +* Bugfix - We fixed a typo in the `REVA_LDAP_SCHEMA_MAIL` environment variable: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) +* Bugfix - Allow different namespaces for /webdav and /dav/files: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) +* Change - Use /home as default namespace: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocis-revaissues/1) +* Change - Start multiple services with dedicated commands: [#6](https://github.com/owncloud/ocis/ocis-revaissues/6) +* Change - Storage providers now default to exposing data servers: [#89](https://github.com/owncloud/ocis/ocis-revaissues/89) +* Change - Default to running behind ocis-proxy: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) +* Enhancement - Expose owncloud storage driver config in flagset: [#87](https://github.com/owncloud/ocis/ocis-revaissues/87) +* Enhancement - Update reva to v0.0.2-0.20200212114015-0dbce24f7e8b: [#91](https://github.com/owncloud/ocis/ocis-revapull/91) +* Enhancement - Allow configuring user sharing driver: [#115](https://github.com/owncloud/ocis/ocis-revapull/115) ## Details -- Bugfix - Set correct flag type in the flagsets: [#75](https://github.com/owncloud/ocis/ocis-revaissues/75) +* Bugfix - Set correct flag type in the flagsets: [#75](https://github.com/owncloud/ocis/ocis-revaissues/75) - While upgrading to the micro/cli version 2 there where two instances of `StringFlag` which had - not been changed to `StringSliceFlag`. This caused `ocis-reva users` and `ocis-reva - storage-root` to fail on startup. + While upgrading to the micro/cli version 2 there where two instances of `StringFlag` which had + not been changed to `StringSliceFlag`. This caused `ocis-reva users` and `ocis-reva + storage-root` to fail on startup. - - + https://github.com/owncloud/ocis/ocis-revaissues/75 + https://github.com/owncloud/ocis/ocis-revapull/76 -- Bugfix - We fixed a typo in the `REVA_LDAP_SCHEMA_MAIL` environment variable: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) +* Bugfix - We fixed a typo in the `REVA_LDAP_SCHEMA_MAIL` environment variable: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) - It was misspelled as `REVA_LDAP_SCHEMA_Mail`. + It was misspelled as `REVA_LDAP_SCHEMA_Mail`. - + https://github.com/owncloud/ocis/ocis-revapull/113 -- Bugfix - Allow different namespaces for /webdav and /dav/files: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) +* Bugfix - Allow different namespaces for /webdav and /dav/files: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) - After fbf131c the path for the "new" webdav path does not contain a username - `/remote.php/dav/files/textfile0.txt`. It used to be - `/remote.php/dav/files/oc/einstein/textfile0.txt` So it lost `oc/einstein`. + After fbf131c the path for the "new" webdav path does not contain a username + `/remote.php/dav/files/textfile0.txt`. It used to be + `/remote.php/dav/files/oc/einstein/textfile0.txt` So it lost `oc/einstein`. - This PR allows setting up different namespaces for `/webav` and `/dav/files`: + This PR allows setting up different namespaces for `/webav` and `/dav/files`: - `/webdav` is jailed into `/home` - which uses the home storage driver and uses the logged in user - to construct the path `/dav/files` is jailed into `/oc` - which uses the owncloud storage - driver and expects a username as the first path segment + `/webdav` is jailed into `/home` - which uses the home storage driver and uses the logged in user + to construct the path `/dav/files` is jailed into `/oc` - which uses the owncloud storage + driver and expects a username as the first path segment - This mimics oc10 + This mimics oc10 - The `WEBDAV_NAMESPACE_JAIL` environment variable is split into - `WEBDAV_NAMESPACE` and - - `DAV_FILES_NAMESPACE` accordingly. + The `WEBDAV_NAMESPACE_JAIL` environment variable is split into - `WEBDAV_NAMESPACE` and - + `DAV_FILES_NAMESPACE` accordingly. - - related: + https://github.com/owncloud/ocis/ocis-revapull/68 + related: -- Change - Use /home as default namespace: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) +* Change - Use /home as default namespace: [#68](https://github.com/owncloud/ocis/ocis-revapull/68) - Currently, cross storage etag propagation is not yet implemented, which prevents the desktop - client from detecting changes via the PROPFIND to /. / is managed by the root storage provider - which is independend of the home and oc storage providers. If a file changes in /home/foo, the - etag change will only be propagated to the root of the home storage provider. + Currently, cross storage etag propagation is not yet implemented, which prevents the desktop + client from detecting changes via the PROPFIND to /. / is managed by the root storage provider + which is independend of the home and oc storage providers. If a file changes in /home/foo, the + etag change will only be propagated to the root of the home storage provider. - This change jails users into the `/home` namespace, and allows configuring the namespace to - use for the two webdav endpoints using the new environment variable `WEBDAV_NAMESPACE_JAIL` - which affects both endpoints `/dav/files` and `/webdav`. + This change jails users into the `/home` namespace, and allows configuring the namespace to + use for the two webdav endpoints using the new environment variable `WEBDAV_NAMESPACE_JAIL` + which affects both endpoints `/dav/files` and `/webdav`. - This will allow us to focus on getting a single storage driver like eos or owncloud tested and - better resembles what owncloud 10 does. + This will allow us to focus on getting a single storage driver like eos or owncloud tested and + better resembles what owncloud 10 does. - To get back the global namespace, which ultimately is the goal, just set the above environment - variable to `/`. + To get back the global namespace, which ultimately is the goal, just set the above environment + variable to `/`. - + https://github.com/owncloud/ocis/ocis-revapull/68 -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocis-revaissues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocis-revaissues/1) - Just prepared an initial basic version to start a reva server and start integrating with the - go-micro base dextension framework of ownCloud Infinite Scale. + Just prepared an initial basic version to start a reva server and start integrating with the + go-micro base dextension framework of ownCloud Infinite Scale. - + https://github.com/owncloud/ocis/ocis-revaissues/1 -- Change - Start multiple services with dedicated commands: [#6](https://github.com/owncloud/ocis/ocis-revaissues/6) +* Change - Start multiple services with dedicated commands: [#6](https://github.com/owncloud/ocis/ocis-revaissues/6) - The initial version would only allow us to use a set of reva configurations to start multiple - services. We use a more opinionated set of commands to start dedicated services that allows us - to configure them individually. It allows us to switch eg. the user backend to LDAP and fully use - it on the cli. + The initial version would only allow us to use a set of reva configurations to start multiple + services. We use a more opinionated set of commands to start dedicated services that allows us + to configure them individually. It allows us to switch eg. the user backend to LDAP and fully use + it on the cli. - + https://github.com/owncloud/ocis/ocis-revaissues/6 -- Change - Storage providers now default to exposing data servers: [#89](https://github.com/owncloud/ocis/ocis-revaissues/89) +* Change - Storage providers now default to exposing data servers: [#89](https://github.com/owncloud/ocis/ocis-revaissues/89) - The flags that let reva storage providers announce that they expose a data server now defaults - to true: + The flags that let reva storage providers announce that they expose a data server now defaults + to true: - `REVA_STORAGE_HOME_EXPOSE_DATA_SERVER=1` `REVA_STORAGE_OC_EXPOSE_DATA_SERVER=1` + `REVA_STORAGE_HOME_EXPOSE_DATA_SERVER=1` `REVA_STORAGE_OC_EXPOSE_DATA_SERVER=1` - + https://github.com/owncloud/ocis/ocis-revaissues/89 -- Change - Default to running behind ocis-proxy: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) +* Change - Default to running behind ocis-proxy: [#113](https://github.com/owncloud/ocis/ocis-revapull/113) - We changed the default configuration to integrate better with ocis. + We changed the default configuration to integrate better with ocis. - - We use ocis-glauth as the default ldap server on port 9125 with base `dc=example,dc=org`. - We - use a dedicated technical `reva` user to make ldap binds - Clients are supposed to use the - ocis-proxy endpoint `https://localhost:9200` - We removed unneeded ocis configuration - from the frontend which no longer serves an oidc provider. - We changed the default user - OpaqueID attribute from `sub` to `preferred_username`. The latter is a claim populated by - konnectd that can also be used by the reva ldap user manager to look up users by their OpaqueId + - We use ocis-glauth as the default ldap server on port 9125 with base `dc=example,dc=org`. - We + use a dedicated technical `reva` user to make ldap binds - Clients are supposed to use the + ocis-proxy endpoint `https://localhost:9200` - We removed unneeded ocis configuration + from the frontend which no longer serves an oidc provider. - We changed the default user + OpaqueID attribute from `sub` to `preferred_username`. The latter is a claim populated by + konnectd that can also be used by the reva ldap user manager to look up users by their OpaqueId - + https://github.com/owncloud/ocis/ocis-revapull/113 -- Enhancement - Expose owncloud storage driver config in flagset: [#87](https://github.com/owncloud/ocis/ocis-revaissues/87) +* Enhancement - Expose owncloud storage driver config in flagset: [#87](https://github.com/owncloud/ocis/ocis-revaissues/87) - Three new flags are now available: + Three new flags are now available: - - scan files on startup to generate missing fileids default: `true` env var: - `REVA_STORAGE_OWNCLOUD_SCAN` cli option: `--storage-owncloud-scan` + - scan files on startup to generate missing fileids default: `true` env var: + `REVA_STORAGE_OWNCLOUD_SCAN` cli option: `--storage-owncloud-scan` - - autocreate home path for new users default: `true` env var: - `REVA_STORAGE_OWNCLOUD_AUTOCREATE` cli option: `--storage-owncloud-autocreate` + - autocreate home path for new users default: `true` env var: + `REVA_STORAGE_OWNCLOUD_AUTOCREATE` cli option: `--storage-owncloud-autocreate` - - the address of the redis server default: `:6379` env var: - `REVA_STORAGE_OWNCLOUD_REDIS_ADDR` cli option: `--storage-owncloud-redis` + - the address of the redis server default: `:6379` env var: + `REVA_STORAGE_OWNCLOUD_REDIS_ADDR` cli option: `--storage-owncloud-redis` - + https://github.com/owncloud/ocis/ocis-revaissues/87 -- Enhancement - Update reva to v0.0.2-0.20200212114015-0dbce24f7e8b: [#91](https://github.com/owncloud/ocis/ocis-revapull/91) +* Enhancement - Update reva to v0.0.2-0.20200212114015-0dbce24f7e8b: [#91](https://github.com/owncloud/ocis/ocis-revapull/91) - Reva has seen a lot of changes that allow us to - reduce the configuration overhead - use the - autocreato home folder option - use the home folder path layout option - no longer start the root - storage + Reva has seen a lot of changes that allow us to - reduce the configuration overhead - use the + autocreato home folder option - use the home folder path layout option - no longer start the root + storage - - related: + https://github.com/owncloud/ocis/ocis-revapull/91 + related: -- Enhancement - Allow configuring user sharing driver: [#115](https://github.com/owncloud/ocis/ocis-revapull/115) +* Enhancement - Allow configuring user sharing driver: [#115](https://github.com/owncloud/ocis/ocis-revapull/115) - We now default to `json` which persists shares in the sharing manager in a json file instead of an - in memory db. + We now default to `json` which persists shares in the sharing manager in a json file instead of an + in memory db. + + https://github.com/owncloud/ocis/ocis-revapull/115 - diff --git a/ocis-reva/README.md b/ocis-reva/README.md index 07cbd16c3..fe8880ae3 100644 --- a/ocis-reva/README.md +++ b/ocis-reva/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-reva/status.svg)](https://cloud.drone.io/owncloud/ocis-reva) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/6f1eaaa399294d959ef7b3b10deed41d)](https://www.codacy.com/manual/owncloud/ocis-reva?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-reva&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/6f1eaaa399294d959ef7b3b10deed41d)](https://www.codacy.com/manual/owncloud/ocis-reva?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-reva&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-reva?status.svg)](http://godoc.org/github.com/owncloud/ocis-reva) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-reva)](http://goreportcard.com/report/github.com/owncloud/ocis-reva) [![](https://images.microbadger.com/badges/image/owncloud/ocis-reva.svg)](http://microbadger.com/images/owncloud/ocis-reva "Get your own image badge on microbadger.com") @@ -27,45 +27,49 @@ make generate build ``` To run a demo installation you can use the preconfigured defaults and start all necessary services: +``` +export REVA_USERS_DRIVER=demo - export REVA_USERS_DRIVER=demo - - bin/ocis-reva frontend & \ - bin/ocis-reva gateway & \ - bin/ocis-reva users & \ - bin/ocis-reva auth-basic & \ - bin/ocis-reva auth-bearer & \ - bin/ocis-reva sharing & \ - bin/ocis-reva storage-root & \ - bin/ocis-reva storage-home & \ - bin/ocis-reva storage-home-data & \ - bin/ocis-reva storage-oc & \ - bin/ocis-reva storage-oc-data +bin/ocis-reva frontend & \ +bin/ocis-reva gateway & \ +bin/ocis-reva users & \ +bin/ocis-reva auth-basic & \ +bin/ocis-reva auth-bearer & \ +bin/ocis-reva sharing & \ +bin/ocis-reva storage-root & \ +bin/ocis-reva storage-home & \ +bin/ocis-reva storage-home-data & \ +bin/ocis-reva storage-oc & \ +bin/ocis-reva storage-oc-data +``` The root storage serves the available namespaces from disk using the local storage driver. In order to be able to navigate into the `/home` and `/oc` storage providers you have to create these directories: - - mkdir /var/tmp/reva/root/home - mkdir /var/tmp/reva/root/oc +``` +mkdir /var/tmp/reva/root/home +mkdir /var/tmp/reva/root/oc +``` Note: the owncloud storage driver currently requires a redis server running on the local machine. You should now be able to get a file listing of a users home using - - curl -X PROPFIND http://localhost:9140/remote.php/dav/files/ -v -u einstein:relativity +``` +curl -X PROPFIND http://localhost:9140/remote.php/dav/files/ -v -u einstein:relativity +``` ## Users The default config uses the demo user backend, which contains three users: - - einstein:relativity - marie:radioactivty - richard:superfluidity +``` +einstein:relativity +marie:radioactivty +richard:superfluidity +``` For details on the `json` and `ldap` backends see the [documentation](https://owncloud.github.io/extensions/ocis_reva/users/) ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/76.md b/ocis-reva/changelog/0.1.0_2020-03-23/76.md index 2d949c4e4..4f324f37f 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/76.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/76.md @@ -4,5 +4,5 @@ While upgrading to the micro/cli version 2 there where two instances of `StringF which had not been changed to `StringSliceFlag`. This caused `ocis-reva users` and `ocis-reva storage-root` to fail on startup. - - +https://github.com/owncloud/ocis/ocis-revaissues/75 +https://github.com/owncloud/ocis/ocis-revapull/76 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/change-default-namespace.md b/ocis-reva/changelog/0.1.0_2020-03-23/change-default-namespace.md index f6fd7ca8d..bd7de2586 100755 --- a/ocis-reva/changelog/0.1.0_2020-03-23/change-default-namespace.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/change-default-namespace.md @@ -8,4 +8,4 @@ This will allow us to focus on getting a single storage driver like eos or owncl To get back the global namespace, which ultimately is the goal, just set the above environment variable to `/`. - +https://github.com/owncloud/ocis/ocis-revapull/68 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/fix-typos.md b/ocis-reva/changelog/0.1.0_2020-03-23/fix-typos.md index ecc6c25c1..01631b479 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/fix-typos.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/fix-typos.md @@ -2,4 +2,4 @@ Bugfix: we fixed a typo in the `REVA_LDAP_SCHEMA_MAIL` environment variable It was misspelled as `REVA_LDAP_SCHEMA_Mail`. - +https://github.com/owncloud/ocis/ocis-revapull/113 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/initial-release.md b/ocis-reva/changelog/0.1.0_2020-03-23/initial-release.md index 836eb1564..44e2f518b 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/initial-release.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/initial-release.md @@ -2,4 +2,4 @@ Change: Initial release of basic version Just prepared an initial basic version to start a reva server and start integrating with the go-micro base dextension framework of ownCloud Infinite Scale. - +https://github.com/owncloud/ocis/ocis-revaissues/1 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/issue-6.md b/ocis-reva/changelog/0.1.0_2020-03-23/issue-6.md index 35381c095..88ee7029e 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/issue-6.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/issue-6.md @@ -4,4 +4,4 @@ The initial version would only allow us to use a set of reva configurations to s We use a more opinionated set of commands to start dedicated services that allows us to configure them individually. It allows us to switch eg. the user backend to LDAP and fully use it on the cli. - +https://github.com/owncloud/ocis/ocis-revaissues/6 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/issue-87.md b/ocis-reva/changelog/0.1.0_2020-03-23/issue-87.md index 1e13378f9..2bb77315e 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/issue-87.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/issue-87.md @@ -2,19 +2,19 @@ Enhancement: expose owncloud storage driver config in flagset Three new flags are now available: -- scan files on startup to generate missing fileids - default: `true` - env var: `REVA_STORAGE_OWNCLOUD_SCAN` - cli option: `--storage-owncloud-scan` +- scan files on startup to generate missing fileids + default: `true` + env var: `REVA_STORAGE_OWNCLOUD_SCAN` + cli option: `--storage-owncloud-scan` -- autocreate home path for new users - default: `true` - env var: `REVA_STORAGE_OWNCLOUD_AUTOCREATE` - cli option: `--storage-owncloud-autocreate` +- autocreate home path for new users + default: `true` + env var: `REVA_STORAGE_OWNCLOUD_AUTOCREATE` + cli option: `--storage-owncloud-autocreate` -- the address of the redis server - default: `:6379` - env var: `REVA_STORAGE_OWNCLOUD_REDIS_ADDR` - cli option: `--storage-owncloud-redis` +- the address of the redis server + default: `:6379` + env var: `REVA_STORAGE_OWNCLOUD_REDIS_ADDR` + cli option: `--storage-owncloud-redis` - +https://github.com/owncloud/ocis/ocis-revaissues/87 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/issue-89.md b/ocis-reva/changelog/0.1.0_2020-03-23/issue-89.md index 425d32efe..f2058b938 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/issue-89.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/issue-89.md @@ -5,4 +5,4 @@ The flags that let reva storage providers announce that they expose a data serve `REVA_STORAGE_HOME_EXPOSE_DATA_SERVER=1` `REVA_STORAGE_OC_EXPOSE_DATA_SERVER=1` - +https://github.com/owncloud/ocis/ocis-revaissues/89 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/new-ocis-config.md b/ocis-reva/changelog/0.1.0_2020-03-23/new-ocis-config.md index bc5a748d0..2c7de61a9 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/new-ocis-config.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/new-ocis-config.md @@ -2,10 +2,10 @@ Change: default to running behind ocis-proxy We changed the default configuration to integrate better with ocis. -- We use ocis-glauth as the default ldap server on port 9125 with base `dc=example,dc=org`. -- We use a dedicated technical `reva` user to make ldap binds -- Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` -- We removed unneeded ocis configuration from the frontend which no longer serves an oidc provider. -- We changed the default user OpaqueID attribute from `sub` to `preferred_username`. The latter is a claim populated by konnectd that can also be used by the reva ldap user manager to look up users by their OpaqueId +- We use ocis-glauth as the default ldap server on port 9125 with base `dc=example,dc=org`. +- We use a dedicated technical `reva` user to make ldap binds +- Clients are supposed to use the ocis-proxy endpoint `https://localhost:9200` +- We removed unneeded ocis configuration from the frontend which no longer serves an oidc provider. +- We changed the default user OpaqueID attribute from `sub` to `preferred_username`. The latter is a claim populated by konnectd that can also be used by the reva ldap user manager to look up users by their OpaqueId - +https://github.com/owncloud/ocis/ocis-revapull/113 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/pull-77.md b/ocis-reva/changelog/0.1.0_2020-03-23/pull-77.md index 6a16970c8..ab44ddb9e 100755 --- a/ocis-reva/changelog/0.1.0_2020-03-23/pull-77.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/pull-77.md @@ -10,8 +10,7 @@ This PR allows setting up different namespaces for `/webav` and `/dav/files`: This mimics oc10 The `WEBDAV_NAMESPACE_JAIL` environment variable is split into +- `WEBDAV_NAMESPACE` and +- `DAV_FILES_NAMESPACE` accordingly. -- `WEBDAV_NAMESPACE` and -- `DAV_FILES_NAMESPACE` accordingly. - -Related: +Related: https://github.com/owncloud/ocis/ocis-revapull/68 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/pull-91.md b/ocis-reva/changelog/0.1.0_2020-03-23/pull-91.md index 37f5d5202..61e410670 100755 --- a/ocis-reva/changelog/0.1.0_2020-03-23/pull-91.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/pull-91.md @@ -1,10 +1,9 @@ Enhancement: update reva to v0.0.2-0.20200212114015-0dbce24f7e8b Reva has seen a lot of changes that allow us to +- reduce the configuration overhead +- use the autocreato home folder option +- use the home folder path layout option +- no longer start the root storage -- reduce the configuration overhead -- use the autocreato home folder option -- use the home folder path layout option -- no longer start the root storage - -Related: +Related: https://github.com/owncloud/ocis/ocis-revapull/91 diff --git a/ocis-reva/changelog/0.1.0_2020-03-23/user-sharing-driver-json.md b/ocis-reva/changelog/0.1.0_2020-03-23/user-sharing-driver-json.md index 51737cb0a..25bf65677 100644 --- a/ocis-reva/changelog/0.1.0_2020-03-23/user-sharing-driver-json.md +++ b/ocis-reva/changelog/0.1.0_2020-03-23/user-sharing-driver-json.md @@ -2,4 +2,4 @@ Enhancement: Allow configuring user sharing driver We now default to `json` which persists shares in the sharing manager in a json file instead of an in memory db. - +https://github.com/owncloud/ocis/ocis-revapull/115 diff --git a/ocis-reva/changelog/0.1.1_2020-03-31/fix-eos-config.md b/ocis-reva/changelog/0.1.1_2020-03-31/fix-eos-config.md index 125dde1d1..1d2ac754e 100644 --- a/ocis-reva/changelog/0.1.1_2020-03-31/fix-eos-config.md +++ b/ocis-reva/changelog/0.1.1_2020-03-31/fix-eos-config.md @@ -2,4 +2,4 @@ Bugfix: Fix eos config We have added missing config options for the home layout to the config struct that is passed to eos. - +https://github.com/owncloud/ocis/ocis-revapull/125 diff --git a/ocis-reva/changelog/0.10.0_2020-07-10/make-frontend-prefixes-configurable.md b/ocis-reva/changelog/0.10.0_2020-07-10/make-frontend-prefixes-configurable.md index 60d77599f..e86d5febc 100644 --- a/ocis-reva/changelog/0.10.0_2020-07-10/make-frontend-prefixes-configurable.md +++ b/ocis-reva/changelog/0.10.0_2020-07-10/make-frontend-prefixes-configurable.md @@ -2,11 +2,13 @@ Enhancement: make frontend prefixes configurable We introduce three new environment variables and preconfigure them the following way: - REVA_FRONTEND_DATAGATEWAY_PREFIX="data" - REVA_FRONTEND_OCDAV_PREFIX="" - REVA_FRONTEND_OCS_PREFIX="ocs" +``` +REVA_FRONTEND_DATAGATEWAY_PREFIX="data" +REVA_FRONTEND_OCDAV_PREFIX="" +REVA_FRONTEND_OCS_PREFIX="ocs" +``` This restores the reva defaults that were changed upstream. - - +https://github.com/owncloud/ocis/ocis-revapull/363 +https://github.com/cs3org/reva/pull/936/files#diff-51bf4fb310f7362f5c4306581132fc3bR63 diff --git a/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200703.md b/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200703.md index b3b7853dd..924cf20b3 100644 --- a/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200703.md +++ b/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200703.md @@ -1,13 +1,13 @@ Enhancement: update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 -- Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#341) -- Added country information to Mentix (reva/#924) -- Refactor metrics package to implement reader interface (reva/#934) -- Fix OCS public link share update values logic (#252, #288, reva/#930) +- Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#341) +- Added country information to Mentix (reva/#924) +- Refactor metrics package to implement reader interface (reva/#934) +- Fix OCS public link share update values logic (#252, #288, reva/#930) - - - - - - +https://github.com/owncloud/ocis/ocis-revapull/341 +https://github.com/cs3org/reva/pull/924 +https://github.com/cs3org/reva/pull/934 +https://github.com/owncloud/ocis/ocis-revaissues/252 +https://github.com/owncloud/ocis/ocis-revaissues/288 +https://github.com/cs3org/reva/pull/930 diff --git a/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200709.md b/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200709.md index cd2fd236a..4a0f98341 100644 --- a/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200709.md +++ b/ocis-reva/changelog/0.10.0_2020-07-10/update-reva-to-20200709.md @@ -1,30 +1,32 @@ Enhancement: update reva to v0.1.1-0.20200709064551-91eed007038f -- Update reva to v0.1.1-0.20200709064551-91eed007038f (#362) -- Fix config for uploads when data server is not exposed (reva/#936) -- Update OCM partners endpoints (reva/#937) -- Update Ailleron endpoint (reva/#938) -- OCS: Fix initialization of shares json file (reva/#940) -- OCS: Fix returned public link URL (#336, reva/#945) -- OCS: Share wrap resource id correctly (#344, reva/#951) -- OCS: Implement share handling for accepting and listing shares (#11, reva/#929) -- ocm: dynamically lookup IPs for provider check (reva/#946) -- ocm: add functionality to mail OCM invite tokens (reva/#944) -- Change percentagused to percentageused (reva/#903) -- Fix file-descriptor leak (reva/#954) +- Update reva to v0.1.1-0.20200709064551-91eed007038f (#362) +- Fix config for uploads when data server is not exposed (reva/#936) +- Update OCM partners endpoints (reva/#937) +- Update Ailleron endpoint (reva/#938) +- OCS: Fix initialization of shares json file (reva/#940) +- OCS: Fix returned public link URL (#336, reva/#945) +- OCS: Share wrap resource id correctly (#344, reva/#951) +- OCS: Implement share handling for accepting and listing shares (#11, reva/#929) +- ocm: dynamically lookup IPs for provider check (reva/#946) +- ocm: add functionality to mail OCM invite tokens (reva/#944) +- Change percentagused to percentageused (reva/#903) +- Fix file-descriptor leak (reva/#954) + +https://github.com/owncloud/ocis/ocis-revapull/362 +https://github.com/cs3org/reva/pull/936 +https://github.com/cs3org/reva/pull/937 +https://github.com/cs3org/reva/pull/938 +https://github.com/cs3org/reva/pull/940 +https://github.com/cs3org/reva/pull/951 +https://github.com/owncloud/ocis/ocis-revaissues/344 +https://github.com/cs3org/reva/pull/945 +https://github.com/owncloud/ocis/ocis-revaissues/336 +https://github.com/cs3org/reva/pull/929 +https://github.com/owncloud/ocis/ocis-revaissues/11 +https://github.com/cs3org/reva/pull/946 +https://github.com/cs3org/reva/pull/944 +https://github.com/cs3org/reva/pull/903 +https://github.com/cs3org/reva/pull/954 + - - - - - - - - - - - - - - - diff --git a/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200710.md b/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200710.md index 7e5f1557f..a54c97373 100644 --- a/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200710.md +++ b/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200710.md @@ -1,15 +1,15 @@ Enhancement: update reva to v0.1.1-0.20200710143425-cf38a45220c5 -- Update reva to v0.1.1-0.20200710143425-cf38a45220c5 (#371) -- Add wopi open (reva/#920) -- Added a CS3API compliant data exporter to Mentix (reva/#955) -- Read SMTP password from env if not set in config (reva/#953) -- OCS share fix including file info after update (reva/#958) -- Add flag to smtpclient for for unauthenticated SMTP (reva/#963) +- Update reva to v0.1.1-0.20200710143425-cf38a45220c5 (#371) +- Add wopi open (reva/#920) +- Added a CS3API compliant data exporter to Mentix (reva/#955) +- Read SMTP password from env if not set in config (reva/#953) +- OCS share fix including file info after update (reva/#958) +- Add flag to smtpclient for for unauthenticated SMTP (reva/#963) - - - - - - +https://github.com/owncloud/ocis/ocis-revapull/371 +https://github.com/cs3org/reva/pull/920 +https://github.com/cs3org/reva/pull/953 +https://github.com/cs3org/reva/pull/955 +https://github.com/cs3org/reva/pull/958 +https://github.com/cs3org/reva/pull/963 diff --git a/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200722.md b/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200722.md index 508e976be..4765d4b34 100644 --- a/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200722.md +++ b/ocis-reva/changelog/0.11.0_2020-07-23/update-reva-to-20200722.md @@ -1,13 +1,13 @@ Enhancement: update reva to v0.1.1-0.20200722125752-6dea7936f9d1 -- Update reva to v0.1.1-0.20200722125752-6dea7936f9d1 -- Added signing key capability (reva/#986) -- Add functionality to create webdav references for OCM shares (reva/#974) -- Added a site locations exporter to Mentix (reva/#972) -- Add option to config to allow requests to hosts with unverified certificates (reva/#969) +- Update reva to v0.1.1-0.20200722125752-6dea7936f9d1 +- Added signing key capability (reva/#986) +- Add functionality to create webdav references for OCM shares (reva/#974) +- Added a site locations exporter to Mentix (reva/#972) +- Add option to config to allow requests to hosts with unverified certificates (reva/#969) - - - - - +https://github.com/owncloud/ocis/ocis-revapull/392 +https://github.com/cs3org/reva/pull/986 +https://github.com/cs3org/reva/pull/974 +https://github.com/cs3org/reva/pull/972 +https://github.com/cs3org/reva/pull/969 diff --git a/ocis-reva/changelog/0.11.0_2020-07-23/use-alpine-latest.md b/ocis-reva/changelog/0.11.0_2020-07-23/use-alpine-latest.md index cc70c3de0..8c4fc3b53 100644 --- a/ocis-reva/changelog/0.11.0_2020-07-23/use-alpine-latest.md +++ b/ocis-reva/changelog/0.11.0_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/ocis-revapull/393 diff --git a/ocis-reva/changelog/0.12.0_2020-08-17/update-docs.md b/ocis-reva/changelog/0.12.0_2020-08-17/update-docs.md index 2f42cf530..92cddf637 100644 --- a/ocis-reva/changelog/0.12.0_2020-08-17/update-docs.md +++ b/ocis-reva/changelog/0.12.0_2020-08-17/update-docs.md @@ -2,5 +2,5 @@ Enhancement: Update storage documentation We added details to the documentation about storage requirements known from ownCloud 10, the local storage driver and the ownCloud storage driver. - - +https://github.com/owncloud/ocis/ocis-revapull/384 +https://github.com/owncloud/ocis/ocis-revapull/390 diff --git a/ocis-reva/changelog/0.12.0_2020-08-17/update-ldap-config.md b/ocis-reva/changelog/0.12.0_2020-08-17/update-ldap-config.md index 48734caf4..cd0790851 100644 --- a/ocis-reva/changelog/0.12.0_2020-08-17/update-ldap-config.md +++ b/ocis-reva/changelog/0.12.0_2020-08-17/update-ldap-config.md @@ -2,8 +2,11 @@ Bugfix: Update LDAP filters With the separation of use and find filters we can now use a filter that taken into account a users uuid as well as his username. This is necessary to make sharing work with the new account service which assigns accounts an immutable account id that is different from the username. Furthermore, the separate find filters now allows searching users by their displayname or email as well. - userfilter = "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))" - findfilter = "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))" - - +``` +userfilter = "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))" +findfilter = "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))" +``` + +https://github.com/owncloud/ocis/ocis-revapull/399 +https://github.com/cs3org/reva/pull/996 diff --git a/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200724.md b/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200724.md index 34069f54c..f562444d9 100644 --- a/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200724.md +++ b/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200724.md @@ -1,13 +1,13 @@ Enhancement: update reva to v0.1.1-0.20200724135750-b46288b375d6 -- Update reva to v0.1.1-0.20200724135750-b46288b375d6 -- Split LDAP user filters (reva/#996) -- meshdirectory: Add invite forward API to provider links (reva/#1000) -- OCM: Pass the link to the meshdirectory service in token mail (reva/#1002) -- Update github.com/go-ldap/ldap to v3 (reva/#1004) +- Update reva to v0.1.1-0.20200724135750-b46288b375d6 +- Split LDAP user filters (reva/#996) +- meshdirectory: Add invite forward API to provider links (reva/#1000) +- OCM: Pass the link to the meshdirectory service in token mail (reva/#1002) +- Update github.com/go-ldap/ldap to v3 (reva/#1004) - - - - - +https://github.com/owncloud/ocis/ocis-revapull/399 +https://github.com/cs3org/reva/pull/996 +https://github.com/cs3org/reva/pull/1000 +https://github.com/cs3org/reva/pull/1002 +https://github.com/cs3org/reva/pull/1004 diff --git a/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200728.md b/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200728.md index c0f0f5d41..6c7a47e4c 100644 --- a/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200728.md +++ b/ocis-reva/changelog/0.12.0_2020-08-17/update-reva-to-20200728.md @@ -1,11 +1,11 @@ Enhancement: update reva to v0.1.1-0.20200728071211-c948977dd3a0 -- Update reva to v0.1.1-0.20200728071211-c948977dd3a0 -- Use proper logging for ldap auth requests (reva/#1008) -- Update github.com/eventials/go-tus to v0.0.0-20200718001131-45c7ec8f5d59 (reva/#1007) -- Check if SMTP credentials are nil (reva/#1006) +- Update reva to v0.1.1-0.20200728071211-c948977dd3a0 +- Use proper logging for ldap auth requests (reva/#1008) +- Update github.com/eventials/go-tus to v0.0.0-20200718001131-45c7ec8f5d59 (reva/#1007) +- Check if SMTP credentials are nil (reva/#1006) - - - - +https://github.com/owncloud/ocis/ocis-revapull/407 +https://github.com/cs3org/reva/pull/1008 +https://github.com/cs3org/reva/pull/1007 +https://github.com/cs3org/reva/pull/1006 diff --git a/ocis-reva/changelog/0.12.0_2020-08-17/updates-for-username-userid-split.md b/ocis-reva/changelog/0.12.0_2020-08-17/updates-for-username-userid-split.md index 335f68640..0afa2cb86 100644 --- a/ocis-reva/changelog/0.12.0_2020-08-17/updates-for-username-userid-split.md +++ b/ocis-reva/changelog/0.12.0_2020-08-17/updates-for-username-userid-split.md @@ -2,5 +2,5 @@ Change: environment updates for the username userid split We updated the owncloud storage driver in reva to properly look up users by userid or username using the userprovider instead of taking the path segment as is. This requires the user service address as well as changing the default layout to the userid instead of the username. The latter is not considered a stable and persistent identifier. - - +https://github.com/owncloud/ocis/ocis-revapull/420 +https://github.com/cs3org/reva/pull/1033 diff --git a/ocis-reva/changelog/0.13.0_2020-08-27/separate-auth-user-providers.md b/ocis-reva/changelog/0.13.0_2020-08-27/separate-auth-user-providers.md index b2bbaf2d6..bfb1f69e7 100644 --- a/ocis-reva/changelog/0.13.0_2020-08-27/separate-auth-user-providers.md +++ b/ocis-reva/changelog/0.13.0_2020-08-27/separate-auth-user-providers.md @@ -5,5 +5,5 @@ which restricted using separate drivers and configs for both. This PR separates the two and adds the config for the rest user driver and the gatewaysvc parameter to EOS fs. - - +https://github.com/owncloud/ocis/ocis-revapull/412 +https://github.com/cs3org/reva/pull/995 diff --git a/ocis-reva/changelog/0.13.0_2020-08-27/update-reva-to-20200728.md b/ocis-reva/changelog/0.13.0_2020-08-27/update-reva-to-20200728.md index 8f1f5c4b8..84cefb987 100644 --- a/ocis-reva/changelog/0.13.0_2020-08-27/update-reva-to-20200728.md +++ b/ocis-reva/changelog/0.13.0_2020-08-27/update-reva-to-20200728.md @@ -1,17 +1,17 @@ Enhancement: update reva to v1.1.1-0.20200819100654-dcbf0c8ea187 -- Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187 -- fix restoring and deleting trash items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) -- Add UID and GID in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) -- Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) -- Ignore Stray Public Shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) -- Implement GetUserByClaim for LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) -- eosclient: get file info by fxid [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) -- Ensure stray shares get ignored [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) -- Improve timestamp precision while logging [(reva/#1059)](https://github.com/cs3org/reva/pull/1059) -- Ocfs lookup userid (update) [(reva/#1052)](https://github.com/cs3org/reva/pull/1052) -- Disallow sharing the shares directory [(reva/#1051)](https://github.com/cs3org/reva/pull/1051) -- Local storage provider: Fixed resolution of fileid [(reva/#1046)](https://github.com/cs3org/reva/pull/1046) -- List public shares only created by the current user [(reva/#1042)](https://github.com/cs3org/reva/pull/1042) +- Update reva to v1.1.1-0.20200819100654-dcbf0c8ea187 +- fix restoring and deleting trash items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) +- Add UID and GID in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) +- Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) +- Ignore Stray Public Shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) +- Implement GetUserByClaim for LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) +- eosclient: get file info by fxid [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) +- Ensure stray shares get ignored [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) +- Improve timestamp precision while logging [(reva/#1059)](https://github.com/cs3org/reva/pull/1059) +- Ocfs lookup userid (update) [(reva/#1052)](https://github.com/cs3org/reva/pull/1052) +- Disallow sharing the shares directory [(reva/#1051)](https://github.com/cs3org/reva/pull/1051) +- Local storage provider: Fixed resolution of fileid [(reva/#1046)](https://github.com/cs3org/reva/pull/1046) +- List public shares only created by the current user [(reva/#1042)](https://github.com/cs3org/reva/pull/1042) - +https://github.com/owncloud/ocis/ocis-revapull/447 diff --git a/ocis-reva/changelog/0.14.0_2020-09-11/config-cleanup.md b/ocis-reva/changelog/0.14.0_2020-09-11/config-cleanup.md index 0aec0ded4..5432641ca 100644 --- a/ocis-reva/changelog/0.14.0_2020-09-11/config-cleanup.md +++ b/ocis-reva/changelog/0.14.0_2020-09-11/config-cleanup.md @@ -2,5 +2,7 @@ Bugfix: Fix default configuration for accessing shares The storage provider mounted at `/home` should always have EnableHome set to `true`. The other storage providers should have it set to `false`. - - +https://github.com/owncloud/product/issues/205 +https://github.com/owncloud/ocis/ocis-revapull/461 + + diff --git a/ocis-reva/changelog/0.14.0_2020-09-11/storage-registry-rules.md b/ocis-reva/changelog/0.14.0_2020-09-11/storage-registry-rules.md index 70ceab50c..23189b0ce 100644 --- a/ocis-reva/changelog/0.14.0_2020-09-11/storage-registry-rules.md +++ b/ocis-reva/changelog/0.14.0_2020-09-11/storage-registry-rules.md @@ -2,5 +2,7 @@ Enhancement: Allow configuring arbitrary storage registry rules We added a new config flag `storage-registry-rule` that can be given multiple times for the gateway to specify arbitrary storage registry rules. You can also use a comma separated list of rules in the `REVA_STORAGE_REGISTRY_RULES` environment variable. - - +https://github.com/owncloud/product/issues/193 +https://github.com/owncloud/ocis/ocis-revapull/461 + + diff --git a/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200826.md b/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200826.md index 7717c5148..59b61cf50 100644 --- a/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200826.md +++ b/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200826.md @@ -1,23 +1,24 @@ Enhancement: update reva to v1.2.1-0.20200826162318-c0f54e1f37ea -- Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea -- Do not swallow 'not found' errors in Stat [(reva/#1124)](https://github.com/cs3org/reva/pull/1124) -- Rewire dav files to the home storage [(reva/#1125)](https://github.com/cs3org/reva/pull/1125) -- Do not restore recycle entry on purge [(reva/#1099)](https://github.com/cs3org/reva/pull/1099) -- Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) -- Restore and delete trash items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) -- Ensure ignoring public stray shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) -- Ensure ignoring stray shares [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) -- Minor fixes in reva cmd, gateway uploads and smtpclient [(reva/#1082)](https://github.com/cs3org/reva/pull/1082) -- Owncloud driver - propagate mtime on RemoveGrant [(reva/#1115)](https://github.com/cs3org/reva/pull/1115) -- Handle redirection prefixes when extracting destination from URL [(reva/#1111)](https://github.com/cs3org/reva/pull/1111) -- Add UID and GID in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) -- Add calens check to verify changelog entries in CI [(reva/#1077)](https://github.com/cs3org/reva/pull/1077) -- Refactor Reva CLI with prompts [(reva/#1072)](https://github.com/cs3org/reva/pull/1072j) -- Get file info using fxids from EOS [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) -- Update LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) -- System information metrics cleanup [(reva/#1114)](https://github.com/cs3org/reva/pull/1114) -- System information included in Prometheus metrics [(reva/#1071)](https://github.com/cs3org/reva/pull/1071) -- Add logic for resolving storage references over webdav [(reva/#1094)](https://github.com/cs3org/reva/pull/1094) +- Update reva to v1.2.1-0.20200826162318-c0f54e1f37ea +- Do not swallow 'not found' errors in Stat [(reva/#1124)](https://github.com/cs3org/reva/pull/1124) +- Rewire dav files to the home storage [(reva/#1125)](https://github.com/cs3org/reva/pull/1125) +- Do not restore recycle entry on purge [(reva/#1099)](https://github.com/cs3org/reva/pull/1099) +- Allow listing the trashbin [(reva/#1091)](https://github.com/cs3org/reva/pull/1091) +- Restore and delete trash items via ocs [(reva/#1103)](https://github.com/cs3org/reva/pull/1103) +- Ensure ignoring public stray shares [(reva/#1090)](https://github.com/cs3org/reva/pull/1090) +- Ensure ignoring stray shares [(reva/#1064)](https://github.com/cs3org/reva/pull/1064) +- Minor fixes in reva cmd, gateway uploads and smtpclient [(reva/#1082)](https://github.com/cs3org/reva/pull/1082) +- Owncloud driver - propagate mtime on RemoveGrant [(reva/#1115)](https://github.com/cs3org/reva/pull/1115) +- Handle redirection prefixes when extracting destination from URL [(reva/#1111)](https://github.com/cs3org/reva/pull/1111) +- Add UID and GID in ldap auth driver [(reva/#1101)](https://github.com/cs3org/reva/pull/1101) +- Add calens check to verify changelog entries in CI [(reva/#1077)](https://github.com/cs3org/reva/pull/1077) +- Refactor Reva CLI with prompts [(reva/#1072)](https://github.com/cs3org/reva/pull/1072j) +- Get file info using fxids from EOS [(reva/#1079)](https://github.com/cs3org/reva/pull/1079) +- Update LDAP user driver [(reva/#1088)](https://github.com/cs3org/reva/pull/1088) +- System information metrics cleanup [(reva/#1114)](https://github.com/cs3org/reva/pull/1114) +- System information included in Prometheus metrics [(reva/#1071)](https://github.com/cs3org/reva/pull/1071) +- Add logic for resolving storage references over webdav [(reva/#1094)](https://github.com/cs3org/reva/pull/1094) + +https://github.com/owncloud/ocis/ocis-revapull/454 - diff --git a/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200911.md b/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200911.md index 307f60b77..3a901c1a4 100644 --- a/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200911.md +++ b/ocis-reva/changelog/0.14.0_2020-09-11/update-reva-to-20200911.md @@ -1,9 +1,10 @@ Enhancement: update reva to v1.2.1-0.20200911111727-51649e37df2d -- Update reva to v1.2.1-0.20200911111727-51649e37df2d -- Added new OCIS storage driver ocis [(reva/#1155)](https://github.com/cs3org/reva/pull/1155) -- App provider: fallback to env. variable if 'iopsecret' unset [(reva/#1146)](https://github.com/cs3org/reva/pull/1146) -- Add switch to database [(reva/#1135)](https://github.com/cs3org/reva/pull/1135) -- Add the ocdav HTTP svc to the standalone config [(reva/#1128)](https://github.com/cs3org/reva/pull/1128) +- Update reva to v1.2.1-0.20200911111727-51649e37df2d +- Added new OCIS storage driver ocis [(reva/#1155)](https://github.com/cs3org/reva/pull/1155) +- App provider: fallback to env. variable if 'iopsecret' unset [(reva/#1146)](https://github.com/cs3org/reva/pull/1146) +- Add switch to database [(reva/#1135)](https://github.com/cs3org/reva/pull/1135) +- Add the ocdav HTTP svc to the standalone config [(reva/#1128)](https://github.com/cs3org/reva/pull/1128) + +https://github.com/owncloud/ocis/ocis-revapull/466 - diff --git a/ocis-reva/changelog/0.2.0_2020-04-15/fix-eos-config.md b/ocis-reva/changelog/0.2.0_2020-04-15/fix-eos-config.md index 7512efb0c..4559740e9 100644 --- a/ocis-reva/changelog/0.2.0_2020-04-15/fix-eos-config.md +++ b/ocis-reva/changelog/0.2.0_2020-04-15/fix-eos-config.md @@ -2,4 +2,4 @@ Bugfix: Fix eos user sharing config We have added missing config options for the user sharing manager and added a dedicated eos storage command with pre configured settings for the eos-docker container. It configures a `Shares` folder in a users home when using eos as the storage driver. - +https://github.com/owncloud/ocis/ocis-revapull/127 diff --git a/ocis-reva/changelog/0.2.0_2020-04-15/update-reva-to-20200414133413.md b/ocis-reva/changelog/0.2.0_2020-04-15/update-reva-to-20200414133413.md index 526dbd25d..e5a1eea0a 100644 --- a/ocis-reva/changelog/0.2.0_2020-04-15/update-reva-to-20200414133413.md +++ b/ocis-reva/changelog/0.2.0_2020-04-15/update-reva-to-20200414133413.md @@ -2,4 +2,4 @@ Enhancement: update reva to v1.1.0-20200414133413 Adds initial public sharing and ocm implementation. - +https://github.com/owncloud/ocis/ocis-revapull/127 diff --git a/ocis-reva/changelog/0.2.1_2020-04-28/gatewayconfig.md b/ocis-reva/changelog/0.2.1_2020-04-28/gatewayconfig.md index a20220055..1b931e256 100644 --- a/ocis-reva/changelog/0.2.1_2020-04-28/gatewayconfig.md +++ b/ocis-reva/changelog/0.2.1_2020-04-28/gatewayconfig.md @@ -2,4 +2,4 @@ Enhancement: Allow configuring the gateway for dataproviders This allows using basic or bearer auth when directly talking to dataproviders. - +https://github.com/owncloud/ocis/ocis-revapull/136 diff --git a/ocis-reva/changelog/0.2.1_2020-04-28/reva-ocis-logger.md b/ocis-reva/changelog/0.2.1_2020-04-28/reva-ocis-logger.md index 617487397..6d586f475 100644 --- a/ocis-reva/changelog/0.2.1_2020-04-28/reva-ocis-logger.md +++ b/ocis-reva/changelog/0.2.1_2020-04-28/reva-ocis-logger.md @@ -2,4 +2,4 @@ Enhancement: Use a configured logger on reva runtime For consistency reasons we need a configured logger that is inline with an ocis logger, so the log cascade can be easily parsed by a human. - +https://github.com/owncloud/ocis/ocis-revapull/153 diff --git a/ocis-reva/changelog/0.2.1_2020-04-28/unadvertise-chunking-v2.md b/ocis-reva/changelog/0.2.1_2020-04-28/unadvertise-chunking-v2.md index f732ab361..056ef42c3 100644 --- a/ocis-reva/changelog/0.2.1_2020-04-28/unadvertise-chunking-v2.md +++ b/ocis-reva/changelog/0.2.1_2020-04-28/unadvertise-chunking-v2.md @@ -4,4 +4,4 @@ Removed "chunking" attribute in the DAV capabilities. Please note that chunking v2 is advertised as "chunking 1.0" while chunking v1 is the attribute "bigfilechunking" which is already false. - +https://github.com/owncloud/ocis/ocis-revapull/145 diff --git a/ocis-reva/changelog/0.3.0_2020-05-20/update-reva-to-20200518061204.md b/ocis-reva/changelog/0.3.0_2020-05-20/update-reva-to-20200518061204.md index e6e85413f..e45e361a6 100644 --- a/ocis-reva/changelog/0.3.0_2020-05-20/update-reva-to-20200518061204.md +++ b/ocis-reva/changelog/0.3.0_2020-05-20/update-reva-to-20200518061204.md @@ -1,84 +1,87 @@ Enhancement: update reva to v0.1.1-0.20200520150229 -- Update reva to v0.1.1-0.20200520150229 (#161, #180, #192, #207, #221) -- Return arbitrary metadata with stat, upload without TUS (reva/#766) -- Stat file before returning datagateway URL when initiating download (reva/#765) -- REST driver for user package (reva/#747) -- Sharing behavior now consistent with the old backend (#20, #26, #43, #44, #46, #94 ,reva/#748) -- Mentix service (reva/#755) -- meshdirectory: add mentix driver for gocdb sites integration (reva/#754) -- Add functionality to commit to storage for OCM shares (reva/#760) -- Add option in config to disable tus (reva/#759) -- ocdav: fix custom property XML parsing in PROPPATCH handler (#203, reva/#743) -- ocdav: fix PROPPATCH response for removed properties (#186, reva/#742) -- ocdav: implement PROPFIND infinity depth (#212, reva/#758) -- Local fs: Allow setting of arbitrary metadata, minor bug fixes (reva/#764) -- Local fs: metadata handling and share persistence (reva/#732) -- Local fs: return file owner info in stat (reva/#750) -- Fixed regression when uploading empty files to OCFS or EOS with PUT and TUS (#188, reva/#734) -- On delete move the file versions to the trashbin (#94, reva/#731) -- Fix OCFS move operation (#182, reva/#729) -- Fix OCFS custom property / xattr removal (reva/#728) -- Retry trashbin in case of timestamp collision (reva/#730) -- Disable chunking v1 by default (reva/#678) -- Implement ocs to http status code mapping (#26, reva/#696, reva/#707, reva/#711) -- Handle the case if directory already exists (reva/#695) -- Added TUS upload support (reva/#674, reva/#725, reva/#717) -- Always return file sizes in Webdav PROPFIND (reva/#712) -- Use default mime type when none was detected (reva/#713) -- Fixed Webdav shallow COPY (reva/#714) -- Fixed arbitrary namespace usage for custom properties in PROPFIND (#57, reva/#720) -- Implement returning Webdav custom properties from xattr (#57, reva/#721) -- Minor fix in OCM share pkg (reva/#718) +- Update reva to v0.1.1-0.20200520150229 (#161, #180, #192, #207, #221) +- Return arbitrary metadata with stat, upload without TUS (reva/#766) +- Stat file before returning datagateway URL when initiating download (reva/#765) +- REST driver for user package (reva/#747) +- Sharing behavior now consistent with the old backend (#20, #26, #43, #44, #46, #94 ,reva/#748) +- Mentix service (reva/#755) +- meshdirectory: add mentix driver for gocdb sites integration (reva/#754) +- Add functionality to commit to storage for OCM shares (reva/#760) +- Add option in config to disable tus (reva/#759) +- ocdav: fix custom property XML parsing in PROPPATCH handler (#203, reva/#743) +- ocdav: fix PROPPATCH response for removed properties (#186, reva/#742) +- ocdav: implement PROPFIND infinity depth (#212, reva/#758) +- Local fs: Allow setting of arbitrary metadata, minor bug fixes (reva/#764) +- Local fs: metadata handling and share persistence (reva/#732) +- Local fs: return file owner info in stat (reva/#750) +- Fixed regression when uploading empty files to OCFS or EOS with PUT and TUS (#188, reva/#734) +- On delete move the file versions to the trashbin (#94, reva/#731) +- Fix OCFS move operation (#182, reva/#729) +- Fix OCFS custom property / xattr removal (reva/#728) +- Retry trashbin in case of timestamp collision (reva/#730) +- Disable chunking v1 by default (reva/#678) +- Implement ocs to http status code mapping (#26, reva/#696, reva/#707, reva/#711) +- Handle the case if directory already exists (reva/#695) +- Added TUS upload support (reva/#674, reva/#725, reva/#717) +- Always return file sizes in Webdav PROPFIND (reva/#712) +- Use default mime type when none was detected (reva/#713) +- Fixed Webdav shallow COPY (reva/#714) +- Fixed arbitrary namespace usage for custom properties in PROPFIND (#57, reva/#720) +- Implement returning Webdav custom properties from xattr (#57, reva/#721) +- Minor fix in OCM share pkg (reva/#718) + +https://github.com/owncloud/ocis/ocis-revapull/161 +https://github.com/owncloud/ocis/ocis-revapull/180 +https://github.com/owncloud/ocis/ocis-revapull/192 +https://github.com/owncloud/ocis/ocis-revapull/207 +https://github.com/owncloud/ocis/ocis-revapull/221 +https://github.com/cs3org/reva/pull/766 +https://github.com/cs3org/reva/pull/765 +https://github.com/cs3org/reva/pull/755 +https://github.com/cs3org/reva/pull/754 +https://github.com/owncloud/ocis/ocis-revaissues/20 +https://github.com/owncloud/ocis/ocis-revaissues/26 +https://github.com/owncloud/ocis/ocis-revaissues/43 +https://github.com/owncloud/ocis/ocis-revaissues/44 +https://github.com/owncloud/ocis/ocis-revaissues/46 +https://github.com/owncloud/ocis/ocis-revaissues/94 +https://github.com/cs3org/reva/pull/747 +https://github.com/cs3org/reva/pull/748 +https://github.com/cs3org/reva/pull/760 +https://github.com/cs3org/reva/pull/759 +https://github.com/cs3org/reva/pull/678 +https://github.com/owncloud/ocis/ocis-revaissues/26 +https://github.com/cs3org/reva/pull/696 +https://github.com/cs3org/reva/pull/707 +https://github.com/cs3org/reva/pull/711 +https://github.com/cs3org/reva/pull/695 +https://github.com/cs3org/reva/pull/674 +https://github.com/cs3org/reva/pull/725 +https://github.com/cs3org/reva/pull/717 +https://github.com/owncloud/ocis/ocis-revaissues/67 +https://github.com/cs3org/reva/pull/712 +https://github.com/cs3org/reva/pull/713 +https://github.com/owncloud/ocis/ocis-revaissues/57 +https://github.com/cs3org/reva/pull/720 +https://github.com/cs3org/reva/pull/718 +https://github.com/owncloud/ocis/ocis-revaissues/94 +https://github.com/cs3org/reva/pull/731 +https://github.com/owncloud/ocis/ocis-revaissues/188 +https://github.com/cs3org/reva/pull/734 +https://github.com/owncloud/ocis/ocis-revaissues/182 +https://github.com/cs3org/reva/pull/729 +https://github.com/cs3org/reva/pull/728 +https://github.com/cs3org/reva/pull/730 +https://github.com/owncloud/ocis/ocis-revaissues/212 +https://github.com/cs3org/reva/pull/758 +https://github.com/owncloud/ocis/ocis-revaissues/186 +https://github.com/cs3org/reva/pull/742 +https://github.com/cs3org/reva/pull/764 +https://github.com/owncloud/ocis/ocis-revaissues/203 +https://github.com/cs3org/reva/pull/743 +https://github.com/cs3org/reva/pull/732 +https://github.com/cs3org/reva/pull/750 + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ocis-reva/changelog/0.4.0_2020-05-29/public-shares.md b/ocis-reva/changelog/0.4.0_2020-05-29/public-shares.md index d659582b2..9127ac62a 100644 --- a/ocis-reva/changelog/0.4.0_2020-05-29/public-shares.md +++ b/ocis-reva/changelog/0.4.0_2020-05-29/public-shares.md @@ -2,5 +2,6 @@ Enhancement: Add public shares service Added Public Shares service with CRUD operations and File Public Shares Manager - - +https://github.com/owncloud/ocis/ocis-revaissues/49 +https://github.com/owncloud/ocis/ocis-revapull/232 + diff --git a/ocis-reva/changelog/0.4.0_2020-05-29/update-reva-to-20200529120551.md b/ocis-reva/changelog/0.4.0_2020-05-29/update-reva-to-20200529120551.md index 618319000..e2fc0c0d5 100644 --- a/ocis-reva/changelog/0.4.0_2020-05-29/update-reva-to-20200529120551.md +++ b/ocis-reva/changelog/0.4.0_2020-05-29/update-reva-to-20200529120551.md @@ -1,31 +1,32 @@ Enhancement: update reva to v0.1.1-0.20200529120551-4f2d9c85d3c9 -- Updated reva to v0.1.1-0.20200529120551 (#232) -- Public Shares CRUD, File Public Shares Manager (#49, #232, reva/#681, reva/#788) -- Disable HTTP-KeepAlives to reduce fd count (ocis/#268, reva/#787) -- Fix trashbin listing (#229, reva/#782) -- Create PUT wrapper for TUS uploads (reva/#770) -- Add security access headers for ocdav requests (#66, reva/#780) -- Add option to revad cmd to specify logging level (reva/#772) -- New metrics package (reva/#740) -- Remove implicit data member from memory store (reva/#774) -- Added TUS global capabilities (#177, reva/#775) -- Fix PROPFIND with Depth 1 for cross-storage operations (reva/#779) +- Updated reva to v0.1.1-0.20200529120551 (#232) +- Public Shares CRUD, File Public Shares Manager (#49, #232, reva/#681, reva/#788) +- Disable HTTP-KeepAlives to reduce fd count (ocis/#268, reva/#787) +- Fix trashbin listing (#229, reva/#782) +- Create PUT wrapper for TUS uploads (reva/#770) +- Add security access headers for ocdav requests (#66, reva/#780) +- Add option to revad cmd to specify logging level (reva/#772) +- New metrics package (reva/#740) +- Remove implicit data member from memory store (reva/#774) +- Added TUS global capabilities (#177, reva/#775) +- Fix PROPFIND with Depth 1 for cross-storage operations (reva/#779) + +https://github.com/owncloud/ocis/ocis-revaissues/49 +https://github.com/owncloud/ocis/ocis-revapull/232 +https://github.com/cs3org/reva/pull/787 +https://github.com/cs3org/reva/pull/681 +https://github.com/cs3org/reva/pull/788 +https://github.com/owncloud/ocis/ocis-revaissues/229 +https://github.com/cs3org/reva/pull/782 +https://github.com/cs3org/reva/pull/770 +https://github.com/owncloud/ocis/ocis-revaissues/66 +https://github.com/cs3org/reva/pull/780 +https://github.com/cs3org/reva/pull/772 +https://github.com/cs3org/reva/pull/740 +https://github.com/cs3org/reva/pull/774 +https://github.com/owncloud/ocis/ocis-revaissues/177 +https://github.com/cs3org/reva/pull/775 +https://github.com/cs3org/reva/pull/779 +https://github.com/owncloud/ocis/issues/268 - - - - - - - - - - - - - - - - - diff --git a/ocis-reva/changelog/0.5.0_2020-06-04/add-tus-global-capabilities.md b/ocis-reva/changelog/0.5.0_2020-06-04/add-tus-global-capabilities.md index 25ec1e9ec..3295e2580 100644 --- a/ocis-reva/changelog/0.5.0_2020-06-04/add-tus-global-capabilities.md +++ b/ocis-reva/changelog/0.5.0_2020-06-04/add-tus-global-capabilities.md @@ -5,5 +5,5 @@ The TUS global capabilities from Reva are now exposed. The advertised max chunk size can be configured using the "--upload-max-chunk-size" CLI switch or "REVA_FRONTEND_UPLOAD_MAX_CHUNK_SIZE" environment variable. The advertised http method override can be configured using the "--upload-http-method-override" CLI switch or "REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE" environment variable. - - +https://github.com/owncloud/ocis/ocis-revaissues/177 +https://github.com/owncloud/ocis/ocis-revapull/228 diff --git a/ocis-reva/changelog/0.5.0_2020-06-04/update-reva-to-20200603071553.md b/ocis-reva/changelog/0.5.0_2020-06-04/update-reva-to-20200603071553.md index 8c8cf1fd5..c6ac63055 100644 --- a/ocis-reva/changelog/0.5.0_2020-06-04/update-reva-to-20200603071553.md +++ b/ocis-reva/changelog/0.5.0_2020-06-04/update-reva-to-20200603071553.md @@ -1,12 +1,12 @@ Enhancement: update reva to v0.1.1-0.20200603071553-e05a87521618 -- Updated reva to v0.1.1-0.20200603071553-e05a87521618 (#244) -- Add option to disable TUS on OC layer (#177, reva/#791) -- Dataprovider now supports method override (#177, reva/#792) -- OCS fixes for create public link (reva/#798) +- Updated reva to v0.1.1-0.20200603071553-e05a87521618 (#244) +- Add option to disable TUS on OC layer (#177, reva/#791) +- Dataprovider now supports method override (#177, reva/#792) +- OCS fixes for create public link (reva/#798) - - - - - +https://github.com/owncloud/ocis/ocis-revaissues/244 +https://github.com/owncloud/ocis/ocis-revaissues/177 +https://github.com/cs3org/reva/pull/791 +https://github.com/cs3org/reva/pull/792 +https://github.com/cs3org/reva/pull/798 diff --git a/ocis-reva/changelog/0.6.0_2020-06-24/update-reva-to-20200624.md b/ocis-reva/changelog/0.6.0_2020-06-24/update-reva-to-20200624.md index 232d6e61e..14ffeae0a 100644 --- a/ocis-reva/changelog/0.6.0_2020-06-24/update-reva-to-20200624.md +++ b/ocis-reva/changelog/0.6.0_2020-06-24/update-reva-to-20200624.md @@ -1,68 +1,68 @@ Enhancement: update reva to v0.1.1-0.20200624063447-db5e6635d5f0 -- Updated reva to v0.1.1-0.20200624063447-db5e6635d5f0 (#279) -- Local storage: URL-encode file ids to ease integration with other microservices like WOPI (reva/#799) -- Mentix fixes (reva/#803, reva/#817) -- OCDAV: fix returned timestamp format (#116, reva/#805) -- OCM: add default prefix (#814) -- add the content-length header to the responses (reva/#816) -- Deps: clean (reva/#818) -- Fix trashbin listing (#112, #253, #254, reva/#819) -- Make the json publicshare driver configurable (reva/#820) -- TUS: Return metadata headers after direct upload (ocis/#216, reva/#813) -- Set mtime to storage after simple upload (#174, reva/#823, reva/#841) -- Configure grpc client to allow for insecure conns and skip server certificate verification (reva/#825) -- Deployment: simplify config with more default values (reva/#826, reva/#837, reva/#843, reva/#848, reva/#842) -- Separate local fs into home and with home disabled (reva/#829) -- Register reflection after other services (reva/#831) -- Refactor EOS fs (reva/#830) -- Add ocs-share-permissions to the propfind response (#47, reva/#836) -- OCS: Properly read permissions when creating public link (reva/#852) -- localfs: make normalize return associated error (reva/#850) -- EOS grpc driver (reva/#664) -- OCS: Add support for legacy public link arg publicUpload (reva/#853) -- Add cache layer to user REST package (reva/#849) -- Meshdirectory: pass query params to selected provider (reva/#863) -- Pass etag in quotes from the fs layer (#269, reva/#866, reva/#867) -- OCM: use refactored cs3apis provider definition (reva/#864) +- Updated reva to v0.1.1-0.20200624063447-db5e6635d5f0 (#279) +- Local storage: URL-encode file ids to ease integration with other microservices like WOPI (reva/#799) +- Mentix fixes (reva/#803, reva/#817) +- OCDAV: fix returned timestamp format (#116, reva/#805) +- OCM: add default prefix (#814) +- add the content-length header to the responses (reva/#816) +- Deps: clean (reva/#818) +- Fix trashbin listing (#112, #253, #254, reva/#819) +- Make the json publicshare driver configurable (reva/#820) +- TUS: Return metadata headers after direct upload (ocis/#216, reva/#813) +- Set mtime to storage after simple upload (#174, reva/#823, reva/#841) +- Configure grpc client to allow for insecure conns and skip server certificate verification (reva/#825) +- Deployment: simplify config with more default values (reva/#826, reva/#837, reva/#843, reva/#848, reva/#842) +- Separate local fs into home and with home disabled (reva/#829) +- Register reflection after other services (reva/#831) +- Refactor EOS fs (reva/#830) +- Add ocs-share-permissions to the propfind response (#47, reva/#836) +- OCS: Properly read permissions when creating public link (reva/#852) +- localfs: make normalize return associated error (reva/#850) +- EOS grpc driver (reva/#664) +- OCS: Add support for legacy public link arg publicUpload (reva/#853) +- Add cache layer to user REST package (reva/#849) +- Meshdirectory: pass query params to selected provider (reva/#863) +- Pass etag in quotes from the fs layer (#269, reva/#866, reva/#867) +- OCM: use refactored cs3apis provider definition (reva/#864) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +https://github.com/owncloud/ocis/ocis-revapull/279 +https://github.com/owncloud/cs3org/reva/pull/799 +https://github.com/owncloud/cs3org/reva/pull/803 +https://github.com/owncloud/cs3org/reva/pull/817 +https://github.com/owncloud/ocis/ocis-revaissues/116 +https://github.com/owncloud/cs3org/reva/pull/805 +https://github.com/owncloud/cs3org/reva/pull/814 +https://github.com/owncloud/cs3org/reva/pull/816 +https://github.com/owncloud/cs3org/reva/pull/818 +https://github.com/owncloud/ocis/ocis-revaissues/112 +https://github.com/owncloud/ocis/ocis-revaissues/253 +https://github.com/owncloud/ocis/ocis-revaissues/254 +https://github.com/owncloud/cs3org/reva/pull/819 +https://github.com/owncloud/cs3org/reva/pull/820 +https://github.com/owncloud/ocis/issues/216 +https://github.com/owncloud/ocis/ocis-revaissues/174 +https://github.com/owncloud/cs3org/reva/pull/823 +https://github.com/owncloud/cs3org/reva/pull/841 +https://github.com/owncloud/cs3org/reva/pull/813 +https://github.com/owncloud/cs3org/reva/pull/825 +https://github.com/owncloud/cs3org/reva/pull/826 +https://github.com/owncloud/cs3org/reva/pull/837 +https://github.com/owncloud/cs3org/reva/pull/843 +https://github.com/owncloud/cs3org/reva/pull/848 +https://github.com/owncloud/cs3org/reva/pull/842 +https://github.com/owncloud/cs3org/reva/pull/829 +https://github.com/owncloud/cs3org/reva/pull/831 +https://github.com/owncloud/cs3org/reva/pull/830 +https://github.com/owncloud/ocis/ocis-revaissues/47 +https://github.com/owncloud/cs3org/reva/pull/836 +https://github.com/owncloud/cs3org/reva/pull/852 +https://github.com/owncloud/cs3org/reva/pull/850 +https://github.com/owncloud/cs3org/reva/pull/664 +https://github.com/owncloud/cs3org/reva/pull/853 +https://github.com/owncloud/cs3org/reva/pull/849 +https://github.com/owncloud/cs3org/reva/pull/863 +https://github.com/owncloud/ocis/ocis-revaissues/269 +https://github.com/owncloud/cs3org/reva/pull/866 +https://github.com/owncloud/cs3org/reva/pull/867 +https://github.com/owncloud/cs3org/reva/pull/864 diff --git a/ocis-reva/changelog/0.7.0_2020-06-26/update-reva-to-20200625.md b/ocis-reva/changelog/0.7.0_2020-06-26/update-reva-to-20200625.md index 1038b2019..57458fd5a 100644 --- a/ocis-reva/changelog/0.7.0_2020-06-26/update-reva-to-20200625.md +++ b/ocis-reva/changelog/0.7.0_2020-06-26/update-reva-to-20200625.md @@ -1,23 +1,23 @@ Enhancement: update reva to v0.1.1-0.20200626111234-e21c32db9614 -- Updated reva to v0.1.1-0.20200626111234-e21c32db9614 (#304) -- TUS upload support through datagateway (#261, reva/#878, reva/#888) -- Added support for differing metrics path for Prometheus to Mentix (reva/#875) -- More data exported by Mentix (reva/#881) -- Implementation of file operations in public folder shares (#49, #293, reva/#877) -- Make httpclient trust local certificates for now (reva/#880) -- EOS homes are not configured with an enable-flag anymore, but with a dedicated storage driver. - We're using it now and adapted default configs of storages (reva/#891, #304) +- Updated reva to v0.1.1-0.20200626111234-e21c32db9614 (#304) +- TUS upload support through datagateway (#261, reva/#878, reva/#888) +- Added support for differing metrics path for Prometheus to Mentix (reva/#875) +- More data exported by Mentix (reva/#881) +- Implementation of file operations in public folder shares (#49, #293, reva/#877) +- Make httpclient trust local certificates for now (reva/#880) +- EOS homes are not configured with an enable-flag anymore, but with a dedicated storage driver. + We're using it now and adapted default configs of storages (reva/#891, #304) - - - - - - - - - - - - +https://github.com/owncloud/ocis/ocis-revapull/261 +https://github.com/cs3org/reva/pull/875 +https://github.com/owncloud/ocis/ocis-revaissues/49 +https://github.com/owncloud/ocis/ocis-revaissues/293 +https://github.com/cs3org/reva/pull/877 +https://github.com/owncloud/ocis/ocis-revaissues/261 +https://github.com/cs3org/reva/pull/878 +https://github.com/cs3org/reva/pull/881 +https://github.com/cs3org/reva/pull/880 +https://github.com/cs3org/reva/pull/888 +https://github.com/owncloud/ocis/ocis-revapull/304 +https://github.com/cs3org/reva/pull/891 diff --git a/ocis-reva/changelog/0.8.0_2020-06-29/update-reva-to-20200629.md b/ocis-reva/changelog/0.8.0_2020-06-29/update-reva-to-20200629.md index cec89084f..dd3c19717 100644 --- a/ocis-reva/changelog/0.8.0_2020-06-29/update-reva-to-20200629.md +++ b/ocis-reva/changelog/0.8.0_2020-06-29/update-reva-to-20200629.md @@ -1,13 +1,13 @@ Enhancement: update reva to v0.1.1-0.20200629131207-04298ea1c088 -- Update reva to v0.1.1-0.20200629094927-e33d65230abc (#309) -- Fix public link file share (#278, reva/#895, reva/#900) -- Delete public share (reva/#899) -- Updated reva to v0.1.1-0.20200629131207-04298ea1c088 (#313) +- Update reva to v0.1.1-0.20200629094927-e33d65230abc (#309) +- Fix public link file share (#278, reva/#895, reva/#900) +- Delete public share (reva/#899) +- Updated reva to v0.1.1-0.20200629131207-04298ea1c088 (#313) - - - - - - +https://github.com/owncloud/ocis/ocis-revapull/309 +https://github.com/owncloud/ocis/ocis-revaissues/278 +https://github.com/cs3org/reva/pull/895 +https://github.com/cs3org/reva/pull/899 +https://github.com/cs3org/reva/pull/900 +https://github.com/owncloud/ocis/ocis-revapull/313 diff --git a/ocis-reva/changelog/0.9.0_2020-07-01/allow-datagateway-transfers-24h.md b/ocis-reva/changelog/0.9.0_2020-07-01/allow-datagateway-transfers-24h.md index fa48e7557..6fbf97302 100644 --- a/ocis-reva/changelog/0.9.0_2020-07-01/allow-datagateway-transfers-24h.md +++ b/ocis-reva/changelog/0.9.0_2020-07-01/allow-datagateway-transfers-24h.md @@ -1,5 +1,5 @@ Enhancement: Allow datagateway transfers to take 24h -- Increase transfer token life time to 24h (PR #323) +- Increase transfer token life time to 24h (PR #323) - +https://github.com/owncloud/ocis/ocis-revapull/323 diff --git a/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200630.md b/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200630.md index ec808b86a..238d533e1 100644 --- a/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200630.md +++ b/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200630.md @@ -1,11 +1,11 @@ Enhancement: update reva to v0.1.1-0.20200630075923-39a90d431566 -- Update reva to v0.1.1-0.20200630075923-39a90d431566 (#320) -- Return special value for public link password (#294, reva/#904) -- Fix public stat and listcontainer response to contain the correct prefix (#310, reva/#902) +- Update reva to v0.1.1-0.20200630075923-39a90d431566 (#320) +- Return special value for public link password (#294, reva/#904) +- Fix public stat and listcontainer response to contain the correct prefix (#310, reva/#902) - - - - - +https://github.com/owncloud/ocis/ocis-revapull/320 +https://github.com/owncloud/ocis/ocis-revaissues/310 +https://github.com/cs3org/reva/pull/902 +https://github.com/owncloud/ocis/ocis-revaissues/294 +https://github.com/cs3org/reva/pull/904 diff --git a/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200701.md b/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200701.md index b0484120c..af139c00a 100644 --- a/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200701.md +++ b/ocis-reva/changelog/0.9.0_2020-07-01/update-reva-to-20200701.md @@ -1,29 +1,30 @@ Enhancement: update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 -- Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#328) -- Use sync.Map on pool package (reva/#909) -- Use mutex instead of sync.Map (reva/#915) -- Use gatewayProviders instead of storageProviders on conn pool (reva/#916) -- Add logic to ls and stat to process arbitrary metadata keys (reva/#905) -- Preliminary implementation of Set/UnsetArbitraryMetadata (reva/#912) -- Make datagateway forward headers (reva/#913, reva/#926) -- Add option to cmd upload to disable tus (reva/#911) -- OCS Share Allow date-only expiration for public shares (#288, reva/#918) -- OCS Share Remove array from OCS Share update response (#252, reva/#919) -- OCS Share Implement GET request for single shares (#249, reva/#921) +- Update reva to v0.1.1-0.20200701152626-2f6cc60e2f66 (#328) +- Use sync.Map on pool package (reva/#909) +- Use mutex instead of sync.Map (reva/#915) +- Use gatewayProviders instead of storageProviders on conn pool (reva/#916) +- Add logic to ls and stat to process arbitrary metadata keys (reva/#905) +- Preliminary implementation of Set/UnsetArbitraryMetadata (reva/#912) +- Make datagateway forward headers (reva/#913, reva/#926) +- Add option to cmd upload to disable tus (reva/#911) +- OCS Share Allow date-only expiration for public shares (#288, reva/#918) +- OCS Share Remove array from OCS Share update response (#252, reva/#919) +- OCS Share Implement GET request for single shares (#249, reva/#921) + +https://github.com/owncloud/ocis/ocis-revapull/328 +https://github.com/cs3org/reva/pull/909 +https://github.com/cs3org/reva/pull/915 +https://github.com/cs3org/reva/pull/916 +https://github.com/cs3org/reva/pull/905 +https://github.com/cs3org/reva/pull/912 +https://github.com/cs3org/reva/pull/913 +https://github.com/cs3org/reva/pull/926 +https://github.com/cs3org/reva/pull/911 +https://github.com/owncloud/ocis/ocis-revaissues/288 +https://github.com/cs3org/reva/pull/918 +https://github.com/owncloud/ocis/ocis-revaissues/252 +https://github.com/cs3org/reva/pull/919 +https://github.com/owncloud/ocis/ocis-revaissues/249 +https://github.com/cs3org/reva/pull/921 - - - - - - - - - - - - - - - diff --git a/ocis-reva/docs/_index.md b/ocis-reva/docs/_index.md index 23d4809c2..ab942240c 100644 --- a/ocis-reva/docs/_index.md +++ b/ocis-reva/docs/_index.md @@ -1,19 +1,18 @@ -* * * - +--- title: "Reva" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an ocis extension that wraps [reva](https://github.com/cs3org/reva/) and adds an opinionated configuration to it. It uses the port range 9140-9179 to preconfigure several services. | port | service | -\+------+---------+ ++------+---------+ | 9109 | health? | | 9140 | frontend | | 9141 | frontend debug | diff --git a/ocis-reva/docs/building.md b/ocis-reva/docs/building.md index c3dc9015c..cebab803f 100644 --- a/ocis-reva/docs/building.md +++ b/ocis-reva/docs/building.md @@ -1,26 +1,26 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install).To build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-reva.git cd ocis-reva -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. + ### Backend -{{< highlight txt >}} +{{< highlight txt >}} make build -{{< / highlight >}} +{{< / highlight >}} The above command should produce the binary within the `bin/` folder now, give it a try with `./bin/ocis-reva -h` to see all available options. diff --git a/ocis-reva/docs/configuration.md b/ocis-reva/docs/configuration.md index 9dcf4713f..a66cb1f5d 100644 --- a/ocis-reva/docs/configuration.md +++ b/ocis-reva/docs/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:49+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ Example service for Reva/oCIS Usage: `ocis-reva [global options] command [command options] [arguments...]` -\--config-file | $REVA_CONFIG_FILE +--config-file | $REVA_CONFIG_FILE : Path to config file. -\--log-level | $REVA_LOG_LEVEL +--log-level | $REVA_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $REVA_LOG_PRETTY +--log-pretty | $REVA_LOG_PRETTY : Enable pretty logging. -\--log-color | $REVA_LOG_COLOR +--log-color | $REVA_LOG_COLOR : Enable colored logging. ## Sub Commands @@ -64,25 +63,25 @@ Start reva authprovider for basic auth Usage: `ocis-reva auth-basic [command options] [arguments...]` -\--debug-addr | $REVA_AUTH_BASIC_DEBUG_ADDR +--debug-addr | $REVA_AUTH_BASIC_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9147`. -\--auth-driver | $REVA_AUTH_DRIVER +--auth-driver | $REVA_AUTH_DRIVER : auth driver: 'demo', 'json' or 'ldap'. Default: `ldap`. -\--auth-json | $REVA_AUTH_JSON +--auth-json | $REVA_AUTH_JSON : Path to users.json file. -\--network | $REVA_AUTH_BASIC_NETWORK +--network | $REVA_AUTH_BASIC_NETWORK : Network to use for the reva auth-basic service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_AUTH_BASIC_PROTOCOL +--protocol | $REVA_AUTH_BASIC_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_AUTH_BASIC_ADDR +--addr | $REVA_AUTH_BASIC_ADDR : Address to bind reva service. Default: `0.0.0.0:9146`. -\--url | $REVA_AUTH_BASIC_URL +--url | $REVA_AUTH_BASIC_URL : URL to use for the reva service. Default: `localhost:9146`. ### ocis-reva frontend @@ -91,46 +90,46 @@ Start reva frontend service Usage: `ocis-reva frontend [command options] [arguments...]` -\--debug-addr | $REVA_FRONTEND_DEBUG_ADDR +--debug-addr | $REVA_FRONTEND_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9141`. -\--transfer-secret | $REVA_TRANSFER_SECRET +--transfer-secret | $REVA_TRANSFER_SECRET : Transfer secret for datagateway. Default: `replace-me-with-a-transfer-secret`. -\--webdav-namespace | $WEBDAV_NAMESPACE +--webdav-namespace | $WEBDAV_NAMESPACE : Namespace prefix for the /webdav endpoint. Default: `/home/`. -\--dav-files-namespace | $DAV_FILES_NAMESPACE +--dav-files-namespace | $DAV_FILES_NAMESPACE : Namespace prefix for the webdav /dav/files endpoint. Default: `/oc/`. -\--network | $REVA_FRONTEND_NETWORK +--network | $REVA_FRONTEND_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_FRONTEND_PROTOCOL +--protocol | $REVA_FRONTEND_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_FRONTEND_ADDR +--addr | $REVA_FRONTEND_ADDR : Address to bind reva service. Default: `0.0.0.0:9140`. -\--url | $REVA_FRONTEND_URL +--url | $REVA_FRONTEND_URL : URL to use for the reva service. Default: `https://localhost:9200`. -\--datagateway-prefix | $REVA_FRONTEND_DATAGATEWAY_PREFIX +--datagateway-prefix | $REVA_FRONTEND_DATAGATEWAY_PREFIX : datagateway prefix. Default: `data`. -\--ocdav-prefix | $REVA_FRONTEND_OCDAV_PREFIX +--ocdav-prefix | $REVA_FRONTEND_OCDAV_PREFIX : owncloud webdav endpoint prefix. -\--ocs-prefix | $REVA_FRONTEND_OCS_PREFIX +--ocs-prefix | $REVA_FRONTEND_OCS_PREFIX : open collaboration services endpoint prefix. Default: `ocs`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--upload-disable-tus | $REVA_FRONTEND_UPLOAD_DISABLE_TUS +--upload-disable-tus | $REVA_FRONTEND_UPLOAD_DISABLE_TUS : Disables TUS upload mechanism. Default: `false`. -\--upload-http-method-override | $REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE +--upload-http-method-override | $REVA_FRONTEND_UPLOAD_HTTP_METHOD_OVERRIDE : Specify an HTTP method (ex: POST) that clients should to use when uploading instead of PATCH. ### ocis-reva gateway @@ -139,100 +138,100 @@ Start reva gateway Usage: `ocis-reva gateway [command options] [arguments...]` -\--debug-addr | $REVA_GATEWAY_DEBUG_ADDR +--debug-addr | $REVA_GATEWAY_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9143`. -\--transfer-secret | $REVA_TRANSFER_SECRET +--transfer-secret | $REVA_TRANSFER_SECRET : Transfer secret for datagateway. Default: `replace-me-with-a-transfer-secret`. -\--network | $REVA_GATEWAY_NETWORK +--network | $REVA_GATEWAY_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_GATEWAY_PROTOCOL +--protocol | $REVA_GATEWAY_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_GATEWAY_ADDR +--addr | $REVA_GATEWAY_ADDR : Address to bind reva service. Default: `0.0.0.0:9142`. -\--url | $REVA_GATEWAY_URL +--url | $REVA_GATEWAY_URL : URL to use for the reva service. Default: `localhost:9142`. -\--commit-share-to-storage-grant | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_GRANT +--commit-share-to-storage-grant | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_GRANT : Commit shares to the share manager. Default: `true`. -\--commit-share-to-storage-ref | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_REF +--commit-share-to-storage-ref | $REVA_GATEWAY_COMMIT_SHARE_TO_STORAGE_REF : Commit shares to the storage. Default: `true`. -\--share-folder | $REVA_GATEWAY_SHARE_FOLDER +--share-folder | $REVA_GATEWAY_SHARE_FOLDER : mount shares in this folder of the home storage provider. Default: `Shares`. -\--disable-home-creation-on-login | $REVA_GATEWAY_DISABLE_HOME_CREATION_ON_LOGIN +--disable-home-creation-on-login | $REVA_GATEWAY_DISABLE_HOME_CREATION_ON_LOGIN : Disable creation of home folder on login. -\--storage-registry-driver | $REVA_STORAGE_REGISTRY_DRIVER +--storage-registry-driver | $REVA_STORAGE_REGISTRY_DRIVER : driver of the storage registry. Default: `static`. -\--storage-home-provider | $REVA_STORAGE_HOME_PROVIDER +--storage-home-provider | $REVA_STORAGE_HOME_PROVIDER : mount point of the storage provider for user homes in the global namespace. Default: `/home`. -\--frontend-url | $REVA_FRONTEND_URL +--frontend-url | $REVA_FRONTEND_URL : URL to use for the reva service. Default: `https://localhost:9200`. -\--datagateway-url | $REVA_DATAGATEWAY_URL +--datagateway-url | $REVA_DATAGATEWAY_URL : URL to use for the reva datagateway. Default: `https://localhost:9200/data`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. -\--auth-basic-url | $REVA_AUTH_BASIC_URL +--auth-basic-url | $REVA_AUTH_BASIC_URL : URL to use for the reva service. Default: `localhost:9146`. -\--auth-bearer-url | $REVA_AUTH_BEARER_URL +--auth-bearer-url | $REVA_AUTH_BEARER_URL : URL to use for the reva service. Default: `localhost:9148`. -\--sharing-url | $REVA_SHARING_URL +--sharing-url | $REVA_SHARING_URL : URL to use for the reva service. Default: `localhost:9150`. -\--storage-root-url | $REVA_STORAGE_ROOT_URL +--storage-root-url | $REVA_STORAGE_ROOT_URL : URL to use for the reva service. Default: `localhost:9152`. -\--storage-root-mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH +--storage-root-mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH : mount path. Default: `/`. -\--storage-root-mount-id | $REVA_STORAGE_ROOT_MOUNT_ID +--storage-root-mount-id | $REVA_STORAGE_ROOT_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009152`. -\--storage-home-url | $REVA_STORAGE_HOME_URL +--storage-home-url | $REVA_STORAGE_HOME_URL : URL to use for the reva service. Default: `localhost:9154`. -\--storage-home-mount-path | $REVA_STORAGE_HOME_MOUNT_PATH +--storage-home-mount-path | $REVA_STORAGE_HOME_MOUNT_PATH : mount path. Default: `/home`. -\--storage-home-mount-id | $REVA_STORAGE_HOME_MOUNT_ID +--storage-home-mount-id | $REVA_STORAGE_HOME_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009154`. -\--storage-eos-url | $REVA_STORAGE_EOS_URL +--storage-eos-url | $REVA_STORAGE_EOS_URL : URL to use for the reva service. Default: `localhost:9158`. -\--storage-eos-mount-path | $REVA_STORAGE_EOS_MOUNT_PATH +--storage-eos-mount-path | $REVA_STORAGE_EOS_MOUNT_PATH : mount path. Default: `/eos`. -\--storage-eos-mount-id | $REVA_STORAGE_EOS_MOUNT_ID +--storage-eos-mount-id | $REVA_STORAGE_EOS_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009158`. -\--storage-oc-url | $REVA_STORAGE_OC_URL +--storage-oc-url | $REVA_STORAGE_OC_URL : URL to use for the reva service. Default: `localhost:9162`. -\--storage-oc-mount-path | $REVA_STORAGE_OC_MOUNT_PATH +--storage-oc-mount-path | $REVA_STORAGE_OC_MOUNT_PATH : mount path. Default: `/oc`. -\--storage-oc-mount-id | $REVA_STORAGE_OC_MOUNT_ID +--storage-oc-mount-id | $REVA_STORAGE_OC_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--public-link-url | $REVA_STORAGE_PUBLIC_LINK_URL +--public-link-url | $REVA_STORAGE_PUBLIC_LINK_URL : URL to use for the public links service. Default: `localhost:9178`. -\--storage-public-link-mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH +--storage-public-link-mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH : mount path. Default: `/public/`. ### ocis-reva sharing @@ -241,28 +240,28 @@ Start reva sharing service Usage: `ocis-reva sharing [command options] [arguments...]` -\--debug-addr | $REVA_SHARING_DEBUG_ADDR +--debug-addr | $REVA_SHARING_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9151`. -\--network | $REVA_SHARING_NETWORK +--network | $REVA_SHARING_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_SHARING_PROTOCOL +--protocol | $REVA_SHARING_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_SHARING_ADDR +--addr | $REVA_SHARING_ADDR : Address to bind reva service. Default: `0.0.0.0:9150`. -\--url | $REVA_SHARING_URL +--url | $REVA_SHARING_URL : URL to use for the reva service. Default: `localhost:9150`. -\--user-driver | $REVA_SHARING_USER_DRIVER +--user-driver | $REVA_SHARING_USER_DRIVER : driver to use for the UserShareProvider. Default: `json`. -\--user-json-file | $REVA_SHARING_USER_JSON_FILE +--user-json-file | $REVA_SHARING_USER_JSON_FILE : file used to persist shares for the UserShareProvider. Default: `/var/tmp/reva/shares.json`. -\--public-driver | $REVA_SHARING_PUBLIC_DRIVER +--public-driver | $REVA_SHARING_PUBLIC_DRIVER : driver to use for the PublicShareProvider. Default: `json`. ### ocis-reva storage-home-data @@ -271,37 +270,37 @@ Start reva storage-home-data service Usage: `ocis-reva storage-home-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_HOME_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_HOME_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9157`. -\--network | $REVA_STORAGE_HOME_DATA_NETWORK +--network | $REVA_STORAGE_HOME_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_HOME_DATA_PROTOCOL +--protocol | $REVA_STORAGE_HOME_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_HOME_DATA_ADDR +--addr | $REVA_STORAGE_HOME_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9156`. -\--url | $REVA_STORAGE_HOME_DATA_URL +--url | $REVA_STORAGE_HOME_DATA_URL : URL to use for the reva service. Default: `localhost:9156`. -\--driver | $REVA_STORAGE_HOME_DATA_DRIVER +--driver | $REVA_STORAGE_HOME_DATA_DRIVER : storage driver for home data mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--prefix | $REVA_STORAGE_HOME_DATA_PREFIX +--prefix | $REVA_STORAGE_HOME_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_HOME_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_HOME_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME +--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME : enable the creation of home directories. Default: `true`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva health @@ -310,7 +309,7 @@ Check health status Usage: `ocis-reva health [command options] [arguments...]` -\--debug-addr | $REVA_DEBUG_ADDR +--debug-addr | $REVA_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9109`. ### ocis-reva storage-home @@ -319,40 +318,40 @@ Start reva storage-home service Usage: `ocis-reva storage-home [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_HOME_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_HOME_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9155`. -\--network | $REVA_STORAGE_HOME_NETWORK +--network | $REVA_STORAGE_HOME_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_HOME_PROTOCOL +--protocol | $REVA_STORAGE_HOME_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_HOME_ADDR +--addr | $REVA_STORAGE_HOME_ADDR : Address to bind reva service. Default: `0.0.0.0:9154`. -\--url | $REVA_STORAGE_HOME_URL +--url | $REVA_STORAGE_HOME_URL : URL to use for the reva service. Default: `localhost:9154`. -\--driver | $REVA_STORAGE_HOME_DRIVER +--driver | $REVA_STORAGE_HOME_DRIVER : storage driver for home mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--mount-path | $REVA_STORAGE_HOME_MOUNT_PATH +--mount-path | $REVA_STORAGE_HOME_MOUNT_PATH : mount path. Default: `/home`. -\--mount-id | $REVA_STORAGE_HOME_MOUNT_ID +--mount-id | $REVA_STORAGE_HOME_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--expose-data-server | $REVA_STORAGE_HOME_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_HOME_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_HOME_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_HOME_DATA_SERVER_URL : data server url. Default: `http://localhost:9156/data`. -\--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME +--enable-home | $REVA_STORAGE_HOME_ENABLE_HOME : enable the creation of home directories. Default: `true`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-eos-data @@ -361,34 +360,34 @@ Start reva storage-eos-data service Usage: `ocis-reva storage-eos-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9161`. -\--network | $REVA_STORAGE_EOS_DATA_NETWORK +--network | $REVA_STORAGE_EOS_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_EOS_DATA_PROTOCOL +--protocol | $REVA_STORAGE_EOS_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_EOS_DATA_ADDR +--addr | $REVA_STORAGE_EOS_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9160`. -\--url | $REVA_STORAGE_EOS_DATA_URL +--url | $REVA_STORAGE_EOS_DATA_URL : URL to use for the reva service. Default: `localhost:9160`. -\--driver | $REVA_STORAGE_EOS_DATA_DRIVER +--driver | $REVA_STORAGE_EOS_DATA_DRIVER : storage driver for eos data mount: eg. local, eos, owncloud, ocis or s3. Default: `eos`. -\--prefix | $REVA_STORAGE_EOS_DATA_PREFIX +--prefix | $REVA_STORAGE_EOS_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_EOS_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_EOS_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva reva-storage-public-link @@ -397,25 +396,25 @@ Start reva storage-public-link service Usage: `ocis-reva reva-storage-public-link [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_PUBLIC_LINK_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_PUBLIC_LINK_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9179`. -\--network | $REVA_STORAGE_PUBLIC_LINK_NETWORK +--network | $REVA_STORAGE_PUBLIC_LINK_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_PUBLIC_LINK_PROTOCOL +--protocol | $REVA_STORAGE_PUBLIC_LINK_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_PUBLIC_LINK_ADDR +--addr | $REVA_STORAGE_PUBLIC_LINK_ADDR : Address to bind reva service. Default: `0.0.0.0:9178`. -\--url | $REVA_STORAGE_PUBLIC_LINK_URL +--url | $REVA_STORAGE_PUBLIC_LINK_URL : Address to bind reva service. Default: `localhost:9178`. -\--mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH +--mount-path | $REVA_STORAGE_PUBLIC_LINK_MOUNT_PATH : mount path. Default: `/public/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. ### ocis-reva users @@ -424,52 +423,52 @@ Start reva users service Usage: `ocis-reva users [command options] [arguments...]` -\--debug-addr | $REVA_SHARING_DEBUG_ADDR +--debug-addr | $REVA_SHARING_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9145`. -\--network | $REVA_USERS_NETWORK +--network | $REVA_USERS_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_USERS_PROTOCOL +--protocol | $REVA_USERS_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_USERS_ADDR +--addr | $REVA_USERS_ADDR : Address to bind reva service. Default: `0.0.0.0:9144`. -\--url | $REVA_USERS_URL +--url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. -\--driver | $REVA_USERS_DRIVER +--driver | $REVA_USERS_DRIVER : user driver: 'demo', 'json', 'ldap', or 'rest'. Default: `ldap`. -\--json-config | $REVA_USERS_JSON +--json-config | $REVA_USERS_JSON : Path to users.json file. -\--rest-client-id | $REVA_REST_CLIENT_ID +--rest-client-id | $REVA_REST_CLIENT_ID : User rest driver Client ID. -\--rest-client-secret | $REVA_REST_CLIENT_SECRET +--rest-client-secret | $REVA_REST_CLIENT_SECRET : User rest driver Client Secret. -\--rest-redis-address | $REVA_REST_REDIS_ADDRESS +--rest-redis-address | $REVA_REST_REDIS_ADDRESS : Address for redis server. Default: `localhost:6379`. -\--rest-redis-username | $REVA_REST_REDIS_USERNAME +--rest-redis-username | $REVA_REST_REDIS_USERNAME : Username for redis server. -\--rest-redis-password | $REVA_REST_REDIS_PASSWORD +--rest-redis-password | $REVA_REST_REDIS_PASSWORD : Password for redis server. -\--rest-id-provider | $REVA_REST_ID_PROVIDER +--rest-id-provider | $REVA_REST_ID_PROVIDER : The OIDC Provider. -\--rest-api-base-url | $REVA_REST_API_BASE_URL +--rest-api-base-url | $REVA_REST_API_BASE_URL : Base API Endpoint. -\--rest-oidc-token-endpoint | $REVA_REST_OIDC_TOKEN_ENDPOINT +--rest-oidc-token-endpoint | $REVA_REST_OIDC_TOKEN_ENDPOINT : Endpoint to generate token to access the API. -\--rest-target-api | $REVA_REST_TARGET_API +--rest-target-api | $REVA_REST_TARGET_API : The target application. ### ocis-reva auth-bearer @@ -478,34 +477,34 @@ Start reva authprovider for bearer auth Usage: `ocis-reva auth-bearer [command options] [arguments...]` -\--debug-addr | $REVA_AUTH_BEARER_DEBUG_ADDR +--debug-addr | $REVA_AUTH_BEARER_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9149`. -\--oidc-issuer | $REVA_OIDC_ISSUER +--oidc-issuer | $REVA_OIDC_ISSUER : OIDC issuer. Default: `https://localhost:9200`. -\--oidc-insecure | $REVA_OIDC_INSECURE +--oidc-insecure | $REVA_OIDC_INSECURE : OIDC allow insecure communication. Default: `true`. -\--oidc-id-claim | $REVA_OIDC_ID_CLAIM +--oidc-id-claim | $REVA_OIDC_ID_CLAIM : OIDC id claim. Default: `preferred_username`. -\--oidc-uid-claim | $REVA_OIDC_UID_CLAIM +--oidc-uid-claim | $REVA_OIDC_UID_CLAIM : OIDC uid claim. -\--oidc-gid-claim | $REVA_OIDC_GID_CLAIM +--oidc-gid-claim | $REVA_OIDC_GID_CLAIM : OIDC gid claim. -\--network | $REVA_AUTH_BEARER_NETWORK +--network | $REVA_AUTH_BEARER_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_AUTH_BEARER_PROTOCOL +--protocol | $REVA_AUTH_BEARER_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_AUTH_BEARER_ADDR +--addr | $REVA_AUTH_BEARER_ADDR : Address to bind reva service. Default: `0.0.0.0:9148`. -\--url | $REVA_AUTH_BEARER_URL +--url | $REVA_AUTH_BEARER_URL : URL to use for the reva service. Default: `localhost:9148`. ### ocis-reva storage-eos @@ -514,34 +513,34 @@ Start reva storage-eos service Usage: `ocis-reva storage-eos [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_EOS_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_EOS_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9159`. -\--network | $REVA_STORAGE_EOS_NETWORK +--network | $REVA_STORAGE_EOS_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_EOS_PROTOCOL +--protocol | $REVA_STORAGE_EOS_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_EOS_ADDR +--addr | $REVA_STORAGE_EOS_ADDR : Address to bind reva service. Default: `0.0.0.0:9158`. -\--url | $REVA_STORAGE_EOS_URL +--url | $REVA_STORAGE_EOS_URL : URL to use for the reva service. Default: `localhost:9158`. -\--driver | $REVA_STORAGE_EOS_DRIVER +--driver | $REVA_STORAGE_EOS_DRIVER : storage driver for eos mount: eg. local, eos, owncloud, ocis or s3. Default: `eos`. -\--mount-path | $REVA_STORAGE_EOS_MOUNT_PATH +--mount-path | $REVA_STORAGE_EOS_MOUNT_PATH : mount path. Default: `/eos`. -\--mount-id | $REVA_STORAGE_EOS_MOUNT_ID +--mount-id | $REVA_STORAGE_EOS_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009158`. -\--expose-data-server | $REVA_STORAGE_EOS_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_EOS_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_EOS_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_EOS_DATA_SERVER_URL : data server url. Default: `http://localhost:9160/data`. ### ocis-reva storage-oc @@ -550,37 +549,37 @@ Start reva storage-oc service Usage: `ocis-reva storage-oc [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9163`. -\--network | $REVA_STORAGE_OC_NETWORK +--network | $REVA_STORAGE_OC_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_OC_PROTOCOL +--protocol | $REVA_STORAGE_OC_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_OC_ADDR +--addr | $REVA_STORAGE_OC_ADDR : Address to bind reva service. Default: `0.0.0.0:9162`. -\--url | $REVA_STORAGE_OC_URL +--url | $REVA_STORAGE_OC_URL : URL to use for the reva service. Default: `localhost:9162`. -\--driver | $REVA_STORAGE_OC_DRIVER +--driver | $REVA_STORAGE_OC_DRIVER : storage driver for oc mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--mount-path | $REVA_STORAGE_OC_MOUNT_PATH +--mount-path | $REVA_STORAGE_OC_MOUNT_PATH : mount path. Default: `/oc`. -\--mount-id | $REVA_STORAGE_OC_MOUNT_ID +--mount-id | $REVA_STORAGE_OC_MOUNT_ID : mount id. Default: `1284d238-aa92-42ce-bdc4-0b0000009162`. -\--expose-data-server | $REVA_STORAGE_OC_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_OC_EXPOSE_DATA_SERVER : exposes a dedicated data server. Default: `false`. -\--data-server-url | $REVA_STORAGE_OC_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_OC_DATA_SERVER_URL : data server url. Default: `http://localhost:9164/data`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-oc-data @@ -589,34 +588,34 @@ Start reva storage-oc-data service Usage: `ocis-reva storage-oc-data [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_OC_DATA_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9165`. -\--network | $REVA_STORAGE_OC_DATA_NETWORK +--network | $REVA_STORAGE_OC_DATA_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_OC_DATA_PROTOCOL +--protocol | $REVA_STORAGE_OC_DATA_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `http`. -\--addr | $REVA_STORAGE_OC_DATA_ADDR +--addr | $REVA_STORAGE_OC_DATA_ADDR : Address to bind reva service. Default: `0.0.0.0:9164`. -\--url | $REVA_STORAGE_OC_DATA_URL +--url | $REVA_STORAGE_OC_DATA_URL : URL to use for the reva service. Default: `localhost:9164`. -\--driver | $REVA_STORAGE_OC_DATA_DRIVER +--driver | $REVA_STORAGE_OC_DATA_DRIVER : storage driver for oc data mount: eg. local, eos, owncloud, ocis or s3. Default: `owncloud`. -\--prefix | $REVA_STORAGE_OC_DATA_PREFIX +--prefix | $REVA_STORAGE_OC_DATA_PREFIX : prefix for the http endpoint, without leading slash. Default: `data`. -\--temp-folder | $REVA_STORAGE_OC_DATA_TEMP_FOLDER +--temp-folder | $REVA_STORAGE_OC_DATA_TEMP_FOLDER : temp folder. Default: `/var/tmp/`. -\--gateway-url | $REVA_GATEWAY_URL +--gateway-url | $REVA_GATEWAY_URL : URL to use for the reva gateway service. Default: `localhost:9142`. -\--users-url | $REVA_USERS_URL +--users-url | $REVA_USERS_URL : URL to use for the reva service. Default: `localhost:9144`. ### ocis-reva storage-root @@ -625,32 +624,33 @@ Start reva storage-root service Usage: `ocis-reva storage-root [command options] [arguments...]` -\--debug-addr | $REVA_STORAGE_ROOT_DEBUG_ADDR +--debug-addr | $REVA_STORAGE_ROOT_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9153`. -\--network | $REVA_STORAGE_ROOT_NETWORK +--network | $REVA_STORAGE_ROOT_NETWORK : Network to use for the reva service, can be 'tcp', 'udp' or 'unix'. Default: `tcp`. -\--protocol | $REVA_STORAGE_ROOT_PROTOCOL +--protocol | $REVA_STORAGE_ROOT_PROTOCOL : protocol for reva service, can be 'http' or 'grpc'. Default: `grpc`. -\--addr | $REVA_STORAGE_ROOT_ADDR +--addr | $REVA_STORAGE_ROOT_ADDR : Address to bind reva service. Default: `0.0.0.0:9152`. -\--url | $REVA_STORAGE_ROOT_URL +--url | $REVA_STORAGE_ROOT_URL : URL to use for the reva service. Default: `localhost:9152`. -\--driver | $REVA_STORAGE_ROOT_DRIVER +--driver | $REVA_STORAGE_ROOT_DRIVER : storage driver for root mount: eg. local, eos, owncloud, ocis or s3. Default: `local`. -\--mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH +--mount-path | $REVA_STORAGE_ROOT_MOUNT_PATH : mount path. Default: `/`. -\--mount-id | $REVA_STORAGE_ROOT_MOUNT_ID +--mount-id | $REVA_STORAGE_ROOT_MOUNT_ID : mount id. Default: `123e4567-e89b-12d3-a456-426655440001`. -\--expose-data-server | $REVA_STORAGE_ROOT_EXPOSE_DATA_SERVER +--expose-data-server | $REVA_STORAGE_ROOT_EXPOSE_DATA_SERVER : exposes a dedicated data server. -\--data-server-url | $REVA_STORAGE_ROOT_DATA_SERVER_URL +--data-server-url | $REVA_STORAGE_ROOT_DATA_SERVER_URL : data server url. + diff --git a/ocis-reva/docs/getting-started.md b/ocis-reva/docs/getting-started.md index fc391e446..e7140676e 100644 --- a/ocis-reva/docs/getting-started.md +++ b/ocis-reva/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-reva. The `latest` tag always reflects the current master branch. @@ -26,12 +25,12 @@ docker pull owncloud/ocis-reva #### Dependencies -- Running ocis-reva currently needs a working Redis caching server -- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage +- Running ocis-reva currently needs a working Redis caching server +- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-reva/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-reva/testing/ ```console curl https://download.owncloud.com/ocis/ocis/1.0.0-beta1/ocis-reva-1.0.0-beta1-darwin-amd64 --output ocis-reva @@ -41,8 +40,8 @@ chmod +x ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. +- Running ocis currently needs a working Redis caching server +- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. ## Usage @@ -52,6 +51,6 @@ The program provides a few sub-commands on execution. The available configuratio The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-reva health --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/ocis-reva/docs/license.md b/ocis-reva/docs/license.md index 060c35c4f..84210633a 100644 --- a/ocis-reva/docs/license.md +++ b/ocis-reva/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocis-revablob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/ocis-reva/docs/releasing.md b/ocis-reva/docs/releasing.md index c9f38ba9e..b233ca59c 100644 --- a/ocis-reva/docs/releasing.md +++ b/ocis-reva/docs/releasing.md @@ -1,49 +1,47 @@ -* * * - +--- title: "Releasing" date: 2020-05-22T00:00:00+00:00 weight: 60 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} To release a new version of ocis-reva, you have to follow a few simple steps. ## Preparation -1. Before releasing, make sure that reva has been [updated to the desired version]\({{< ref "updating.md" >}}) -2. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. -3. Checkout the preparation branch. -4. Create a new changelog folder and move the unreleased snippets there. - {{< highlight txt >}} - mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date - mv changelog/unreleased/\* changelog/x.x.x_yyyy-MM-dd/ - {{< / highlight >}} -5. Commit and push the changes - {{< highlight txt >}} - git add --all - git commit -m "prepare release x.x.x" - git push origin release-x.x.x - {{< / highlight >}} -6. Create a pull request to the master branch. +1. Before releasing, make sure that reva has been [updated to the desired version]({{< ref "updating.md" >}}) +2. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. +3. Checkout the preparation branch. +4. Create a new changelog folder and move the unreleased snippets there. +{{< highlight txt >}} +mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date +mv changelog/unreleased/* changelog/x.x.x_yyyy-MM-dd/ +{{< / highlight >}} +5. Commit and push the changes +{{< highlight txt >}} +git add --all +git commit -m "prepare release x.x.x" +git push origin release-x.x.x +{{< / highlight >}} +6. Create a pull request to the master branch. ## Release - -1. After the preparation branch has been merged update your local master. -2. [Wait for CI](https://cloud.drone.io/owncloud/ocis-reva) to generate a commit for the changelog update -3. Check out master (or make sure to check out the generated changelog commit in case of subsequent merges) - {{< highlight txt >}} - git checkout master - git pull origin master - {{< / highlight >}} -4. Create a new tag (preferably signed) and replace the version number accordingly. - {{< highlight txt >}} - git tag -s vx.x.x -m "release vx.x.x" - git push origin vx.x.x - {{< / highlight >}} -5. Wait for CI and check that the GitHub release was published. +1. After the preparation branch has been merged update your local master. +2. [Wait for CI](https://cloud.drone.io/owncloud/ocis-reva) to generate a commit for the changelog update +3. Check out master (or make sure to check out the generated changelog commit in case of subsequent merges) +{{< highlight txt >}} +git checkout master +git pull origin master +{{< / highlight >}} +4. Create a new tag (preferably signed) and replace the version number accordingly. +{{< highlight txt >}} +git tag -s vx.x.x -m "release vx.x.x" +git push origin vx.x.x +{{< / highlight >}} +5. Wait for CI and check that the GitHub release was published. Congratulations, you just released ocis-reva! diff --git a/ocis-reva/docs/storages.md b/ocis-reva/docs/storages.md index 022d59482..bc623d065 100644 --- a/ocis-reva/docs/storages.md +++ b/ocis-reva/docs/storages.md @@ -1,127 +1,117 @@ -* * * - +--- title: "Storages" date: 2020-04-27T18:46:00+01:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: storages.md +geekdocFilePath: storages.md +--- ## Storage commands -`ocis-reva` has multiple storage provider commands to preconfigure different default configurations for the reva _storage provider_ service. While you could rerun `ocis-reva storage-oc` multiple times with different flags to get multiple instances we are giving the different commands the necessary default configuration to allow the `ocis` binary to simply start them and not deal with configuration. +`ocis-reva` has multiple storage provider commands to preconfigure different default configurations for the reva *storage provider* service. While you could rerun `ocis-reva storage-oc` multiple times with different flags to get multiple instances we are giving the different commands the necessary default configuration to allow the `ocis` binary to simply start them and not deal with configuration. ## Storage providers -To manage the file tree ocis uses reva _storage providers_ that are accessing the underlying storage using a _storage driver_. The driver can be used to change the implementation of a storage aspect to better reflect the actual underlying storage capabilities. As an example a move operation on a POSIX filesystem ([theoretically](https://danluu.com/deconstruct-files/)) is an atomic operation. When trying to implement a file tree on top of S3 there is no native move operation that can be used. A naive implementation might fall back on a COPY and DELETE. Some S3 implementations provide a COPY operation that uses an existing key as the source, so the file at least does not need to be reuploaded. In the worst case scenario, which is renaming a folder with hundreds of thousands of objects, a reupload for every file has to be made. Instead of hiding this complexity a better choice might be to disable renaming of files or at least folders on S3. There are however implementations of filesystems on top of S3 that store the tree metadata in dedicated objects or use a completely different persistence mechanism like a distributed key value store to implement the file tree aspect of a storage. +To manage the file tree ocis uses reva *storage providers* that are accessing the underlying storage using a *storage driver*. The driver can be used to change the implementation of a storage aspect to better reflect the actual underlying storage capabilities. As an example a move operation on a POSIX filesystem ([theoretically](https://danluu.com/deconstruct-files/)) is an atomic operation. When trying to implement a file tree on top of S3 there is no native move operation that can be used. A naive implementation might fall back on a COPY and DELETE. Some S3 implementations provide a COPY operation that uses an existing key as the source, so the file at least does not need to be reuploaded. In the worst case scenario, which is renaming a folder with hundreds of thousands of objects, a reupload for every file has to be made. Instead of hiding this complexity a better choice might be to disable renaming of files or at least folders on S3. There are however implementations of filesystems on top of S3 that store the tree metadata in dedicated objects or use a completely different persistence mechanism like a distributed key value store to implement the file tree aspect of a storage. -{{< hint info >}} -While the _storage provider_ is responsible for managing the tree, file up and download is delegated to a dedicated _data provider_. See below. -{{< /hint >}} + +{{< hint info >}} +While the *storage provider* is responsible for managing the tree, file up and download is delegated to a dedicated *data provider*. See below. +{{< /hint >}} ## Storage aspects - -A lot of different storage technologies exist, ranging from general purpose file systems with POSIX semantics to software defined storage with multiple APIs. Choosing any of them is making a tradeoff decision. Or, if a storage technology is already in place it automatically predetermines the capabilities that can be made available. _Not all storage systems are created equal._ +A lot of different storage technologies exist, ranging from general purpose file systems with POSIX semantics to software defined storage with multiple APIs. Choosing any of them is making a tradeoff decision. Or, if a storage technology is already in place it automatically predetermines the capabilities that can be made available. *Not all storage systems are created equal.* Unfortunately, no POSIX filesystem natively supports all storage aspects that ownCloud 10 requires: -### A hierarchical file tree +### A hierarchical file tree An important aspect of a filesystem is organizing files and directories in a file hierarchy, or tree. It allows you to create, move and delete nodes. Beside the name a node also has well known metadata like size and mtime that are persisted in the tree as well. -{{< hint info >}} +{{< hint info >}} **Folders are not directories** -There is a difference between _folder_ and _directory_: a _directory_ is a file system concept. A _folder_ is a metaphor for the concept of a physical file folder. There are also _virtual folders_ or _smart folders_ like the recent files folder which are no file system _directories_. So, every _directory_ and every _virtual folder_ is a _folder_, but not every _folder_ is a _directory_. See [the folder metaphor in wikipedia](https://en.wikipedia.org/wiki/Directory_(computing)#Folder_metaphor). Also see the activity history below. -{{< /hint >}} +There is a difference between *folder* and *directory*: a *directory* is a file system concept. A *folder* is a metaphor for the concept of a physical file folder. There are also *virtual folders* or *smart folders* like the recent files folder which are no file system *directories*. So, every *directory* and every *virtual folder* is a *folder*, but not every *folder* is a *directory*. See [the folder metaphor in wikipedia](https://en.wikipedia.org/wiki/Directory_(computing)#Folder_metaphor). Also see the activity history below. +{{< /hint >}} #### Id based lookup - While traditionally nodes in the tree are reached by traversing the path the tree persistence should be prepared to look up a node by an id. Think of an inode in a POSIX filesystem. If this operation needs to be cached for performance reasons keep in mind that cache invalidation is hard and crawling all files to update the inode to path mapping takes O(n), not O(1). #### ETag propagation - For the state based sync a client can discover changes by recursively descending the tree and comparing the ETag for every node. If the storage technology supports propagating ETag changes up the tree, only the root node of a tree needs to be checked to determine if a discovery needs to be started and which nodes need to be traversed. This allows using the storage technology itself to persist all metadata that is necessary for sync, without additional services or caches. #### Subtree size accounting - The tree can keep track of how many bytes are stored in a folder. Similar to ETag propagation a change in file size is propagated up the hierarchy. -{{< hint info >}} +{{< hint info >}} **ETag and Size propagation** When propagating the ETag (mtime) and size changes up the tree the question is where to stop. If all changes need to be propagated to the root of a storage then the root or busy folders will become a hotspot. There are two things to keep in mind: 1. propagation only happens up to the root of a single space (a user private drive or a single group drive), 2. no cross storage propagation. The latter was used in oc10 to let clients detect when a file in a received shared folder changed. This functionality is moving to the storage registry which caches the ETag for every root so clients can discover if and which storage changed. -{{< /hint >}} +{{< /hint >}} #### Rename +Depending on the underlying storage technology some operations may either be slow, up to a point where it makes more sense to disable them entirely. One example is a folder rename: on S3 a *simple* folder rename translates to a copy and delete operation for every child of the renamed folder. There is an exception though: this restriction only applies if the S3 storage is treated like a filesystem, where the keys are the path and the value is the file content. There are smarter ways to implement file systems on top of S3, but again: there is always a tradeoff. -Depending on the underlying storage technology some operations may either be slow, up to a point where it makes more sense to disable them entirely. One example is a folder rename: on S3 a _simple_ folder rename translates to a copy and delete operation for every child of the renamed folder. There is an exception though: this restriction only applies if the S3 storage is treated like a filesystem, where the keys are the path and the value is the file content. There are smarter ways to implement file systems on top of S3, but again: there is always a tradeoff. - -{{< hint info >}} +{{< hint info >}} **S3 has no rename** -Technically, [S3 has no rename operation at all](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/examples-s3-objects.html#copy-object). By design, the location of the value is determined by the key, so it always has to do a copy and delete. Another example is the [redis RENAME operation](https://redis.io/commands/rename): while being specified as O(1) it _executes an implicit DEL operation, so if the deleted key contains a very big value it may cause high latency..._ -{{< /hint >}} +Technically, [S3 has no rename operation at all](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/examples-s3-objects.html#copy-object). By design, the location of the value is determined by the key, so it always has to do a copy and delete. Another example is the [redis RENAME operation](https://redis.io/commands/rename): while being specified as O(1) it *executes an implicit DEL operation, so if the deleted key contains a very big value it may cause high latency...* +{{< /hint >}} #### Arbitrary metadata persistence - In addition to well known metadata like name size and mtime, users might be able to add arbitrary metadata like tags, comments or [dublin core](https://en.wikipedia.org/wiki/Dublin_Core). In POSIX filesystems this maps to extended attributes. ### Grant persistence - The CS3 API uses grants to describe access permissions. Storage systems have a wide range of permissions granularity and not all grants may be supported by every storage driver. POSIX ACLs for example have no expiry. If the storage system does not support certain grant properties, e.g. expiry, then the storage driver may choose to implement them in a different way. Expiries could be persisted in a different way and checked periodically to remove the grants. Again: every decision is a tradeoff. ### Trash persistence - After deleting a node the storage allows listing the deleted nodes and has an undo mechanism for them. ### Versions persistence - A user can restore a previous version of a file. -{{< hint info >}} +{{< hint info >}} **Snapshots are not versions** Modern POSIX filesystems support snapshotting of volumes. This is different from keeping track of versions to a file or folder, but might be another implementation strategy for a storage driver to allow users to restore content. -{{< /hint >}} +{{< /hint >}} ### Activity History - The storage keeps an activity history, tracking the different actions that have been performed. This does not only include file changes but also metadata changes like renames and permission changes. ## Storage drivers -Reva currently has four storage driver implementations that can be used for _storage providers_ an well as _data providers_. +Reva currently has four storage driver implementations that can be used for *storage providers* an well as *data providers*. ### Local Storage Driver -The _minimal_ storage driver for a POSIX based filesystem. It literally supports none of the storage aspect other than basic file tree management. Sharing can - to a degree - be implemented using POSIX ACLs. +The *minimal* storage driver for a POSIX based filesystem. It literally supports none of the storage aspect other than basic file tree management. Sharing can - to a degree - be implemented using POSIX ACLs. -- tree provided by a POSIX filesystem - - inefficient path by id lookup, currently uses the file path as id, so ids are not stable - - can store a uuid in extended attributes and use a cache to look them up, similar to the ownCloud driver - - no native ETag propagation, five options are available: - - built in propagation (changes bypassing ocis are not picked up until a rescan) - - built in inotify (requires 48 bytes of RAM per file, needs to keep track of every file and folder) - - external inotify (same RAM requirement, but could be triggered by external tools, e.g. a workflow engine) - - kernel audit log (use the linux kernel audit to capture file events on the storage and offload them to a queue) - - fuse filesystem overlay - - no subtree accounting, same options as for ETag propagation - - efficient rename - - arbitrary metadata using extended attributes -- grant persistence - - using POSIX ACLs - - requires an LDAP server to make guest accounts available in the OS - - OCIS has glauth which contains all users - - an existing LDAP could be used if guests ar provisioned in another way - - using extended attributes to implement expiry or sharing that does not require OS level integration - - fuse filesystem overlay -- no native trash - - could use the [The FreeDesktop.org Trash specification](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html) - - fuse filesystem overlay -- no native versions, multiple options possible - - git for folders - - rcs for single files - - rsnapshot for hourly / daily / weekly / monthly backups ... but this is not versioning as known from oc10 - - design new freedesktop spec, basically what is done in oc10 without the limitations or borrow ideas from the freedesktop trash spec - - fuse filesystem overlay +- tree provided by a POSIX filesystem + - inefficient path by id lookup, currently uses the file path as id, so ids are not stable + - can store a uuid in extended attributes and use a cache to look them up, similar to the ownCloud driver + - no native ETag propagation, five options are available: + - built in propagation (changes bypassing ocis are not picked up until a rescan) + - built in inotify (requires 48 bytes of RAM per file, needs to keep track of every file and folder) + - external inotify (same RAM requirement, but could be triggered by external tools, e.g. a workflow engine) + - kernel audit log (use the linux kernel audit to capture file events on the storage and offload them to a queue) + - fuse filesystem overlay + - no subtree accounting, same options as for ETag propagation + - efficient rename + - arbitrary metadata using extended attributes +- grant persistence + - using POSIX ACLs + - requires an LDAP server to make guest accounts available in the OS + - OCIS has glauth which contains all users + - an existing LDAP could be used if guests ar provisioned in another way + - using extended attributes to implement expiry or sharing that does not require OS level integration + - fuse filesystem overlay +- no native trash + - could use the [The FreeDesktop.org Trash specification](https://specifications.freedesktop.org/trash-spec/trashspec-latest.html) + - fuse filesystem overlay +- no native versions, multiple options possible + - git for folders + - rcs for single files + - rsnapshot for hourly / daily / weekly / monthly backups ... but this is not versioning as known from oc10 + - design new freedesktop spec, basically what is done in oc10 without the limitations or borrow ideas from the freedesktop trash spec + - fuse filesystem overlay To provide the other storage aspects we plan to implement a FUSE overlay filesystem which will add the different aspects on top of local filesystems like ext4, btrfs or xfs. It should work on NFSv45 as well, although NFSv4 supports RichACLs and we will explore how to leverage them to implement sharing at a future date. The idea is to use the storages native capabilities to deliver the best user experience. But again: that means making the right tradeoffs. @@ -132,52 +122,54 @@ This is the current default storage driver. While it implements the file tree (u To setup it up properly in a distributed fashion, the storage-home and the storage-oc need to share the same underlying FS. Their "data" counterparts also need access to the same shared FS. For a simple docker-compose setup, you can create a volume which will be used by the "ocis-reva-storage-home", "ocis-reva-storage-home-data", "ocis-reva-storage-oc" and "ocis-reva-storage-oc-data" containers. Using the `owncloud/ocis-reva` docker image, the volume would need to be hooked in the `/var/tmp/reva` folder insde the containers. -- tree provided by a POSIX filesystem - - file layout is mapped to the old ownCloud 10 layout - - the root of tree for a user on disk is prefixed with `/path/to/data//files/` - - efficient path by id lookup - - all files and folders get assigned a uuid in the extended attributes - - when starting the storage provider it will walk all files to populate a redis kv store for uuid to path lookup - - slow to boot trees with lots of nodes - - build in ETag propagation - - ETags are calculated based on mtime - - mtime is propagated by the storage driver - - changes bypassing ocis are not picked up until a restart of the storage provider - - no subtree accounting, same options as for local storage - - efficient rename - - TODO [update the kv store for path lookup](https://github.com/cs3org/reva/issues/985), this is an O(n) operation - - arbitrary metadata using extended attributes -- grant persistence - - using custom ACLs that are stored as extended attributes - - a grant corresponds to one extended attribute of 40-100 bytes, effectively limiting the number of shares to ~100-40 - - extended attributes have varying limitations, based on the underlying filesystem - - the linux kernel imposes a limit of 255bytes per name and 64KiB per value - - ext2/3/4: total bytes for all attributes of a file is limited to 4KiB (a filesystem block) - - xfs: limit of 64KiB per value - - btrfs: total bytes used for the name, value, and implementation overhead bytes 16KiB (the default filesystem nodesize value) - - does not require OS level integration -- built in trash - - trashed files are moved to `/path/to/data//files_trashbin/` - - trashed files are appended a timestamp `.d`, which [breaks trashing of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) -- built in versions - - file versions are stored in `/path/to/data//files_versions/` - - file versions are appended a timestamp `.d`, which [breaks versioning of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) +- tree provided by a POSIX filesystem + - file layout is mapped to the old ownCloud 10 layout + - the root of tree for a user on disk is prefixed with `/path/to/data//files/` + - efficient path by id lookup + - all files and folders get assigned a uuid in the extended attributes + - when starting the storage provider it will walk all files to populate a redis kv store for uuid to path lookup + - slow to boot trees with lots of nodes + - build in ETag propagation + - ETags are calculated based on mtime + - mtime is propagated by the storage driver + - changes bypassing ocis are not picked up until a restart of the storage provider + - no subtree accounting, same options as for local storage + - efficient rename + - TODO [update the kv store for path lookup](https://github.com/cs3org/reva/issues/985), this is an O(n) operation + - arbitrary metadata using extended attributes +- grant persistence + - using custom ACLs that are stored as extended attributes + - a grant corresponds to one extended attribute of 40-100 bytes, effectively limiting the number of shares to ~100-40 + - extended attributes have varying limitations, based on the underlying filesystem + - the linux kernel imposes a limit of 255bytes per name and 64KiB per value + - ext2/3/4: total bytes for all attributes of a file is limited to 4KiB (a filesystem block) + - xfs: limit of 64KiB per value + - btrfs: total bytes used for the name, value, and implementation overhead bytes 16KiB (the default filesystem nodesize value) + - does not require OS level integration +- built in trash + - trashed files are moved to `/path/to/data//files_trashbin/` + - trashed files are appended a timestamp `.d`, which [breaks trashing of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) +- built in versions + - file versions are stored in `/path/to/data//files_versions/` + - file versions are appended a timestamp `.d`, which [breaks versioning of files that reach the filesystems specific name limit](https://github.com/owncloud/core/issues/28095) ### EOS Storage Driver -The CERN eos storage has evolved with ownCloud and natively supports id based lookup, ETag propagation, subtree size accounting, sharing, trash and versions. To use it you need to change the default configuration of the `ocis-reva storage-home` command (or have a look at the Makefile ̀ eos-start\` target): +The CERN eos storage has evolved with ownCloud and natively supports id based lookup, ETag propagation, subtree size accounting, sharing, trash and versions. To use it you need to change the default configuration of the `ocis-reva storage-home` command (or have a look at the Makefile ̀ eos-start` target): - export REVA_STORAGE_HOME_DRIVER=eos - export REVA_STORAGE_EOS_NAMESPACE=/eos - export REVA_STORAGE_EOS_MASTER_URL="root://eos-mgm1.eoscluster.cern.ch:1094" - export REVA_STORAGE_EOS_ENABLE_HOME=true - export REVA_STORAGE_EOS_LAYOUT="dockertest/{{.Username}}" +``` +export REVA_STORAGE_HOME_DRIVER=eos +export REVA_STORAGE_EOS_NAMESPACE=/eos +export REVA_STORAGE_EOS_MASTER_URL="root://eos-mgm1.eoscluster.cern.ch:1094" +export REVA_STORAGE_EOS_ENABLE_HOME=true +export REVA_STORAGE_EOS_LAYOUT="dockertest/{{.Username}}" +``` Running it locally also requires the `eos` and `xrootd` binaries. Running it using `make eos-start` will use CentOS based containers that already have the necessary packages installed. -{{< hint info >}} +{{< hint info >}} Pull requests to add explicit `reva storage-(s3|custom|...)` commands with working defaults are welcome. -{{< /hint >}} +{{< /hint >}} ### S3 Storage Driver @@ -185,20 +177,18 @@ A naive driver that treats the keys in an S3 capable storage as `/` delimited pa ## Data Providers -Clients using the CS3 API use an [InitiateFileDownload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileDownloadRequest) and ]InitiateUpload]() request at the [reva gateway](https://cs3org.github.io/cs3apis/#cs3.gateway.v1beta1.GatewayAPI) to obtain a URL endpoint that can be used to either GET the file content or upload content using the resumable [tus.io](https://tus.io) protocol. +Clients using the CS3 API use an [InitiateFileDownload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileDownloadRequest) and ]InitiateUpload](https://cs3org.github.io/cs3apis/#cs3.storage.provider.v1beta1.InitiateFileUploadRequest) request at the [reva gateway](https://cs3org.github.io/cs3apis/#cs3.gateway.v1beta1.GatewayAPI) to obtain a URL endpoint that can be used to either GET the file content or upload content using the resumable [tus.io](https://tus.io) protocol. -The _data provider_ uses the same _storage driver_ as the _storage provider_ but can be scaled independently. +The *data provider* uses the same *storage driver* as the *storage provider* but can be scaled independently. The dataprovider allows uploading the file to a quarantine area where further data analysis may happen before making the file accessible again. One use case for this is anti virus scanning for files coming from untrusted sources. ## Future work ### FUSE overlay filesystem - We are planning to further separate the concerns and use a local storage provider with a FUSE filesystem overlaying the actual POSIX storage that can be used to capture deletes and writes that might happen outside of ocis/reva. It would allow us to extend the local storage driver with missing storage aspects while keeping a tree like filesystem that end users are used to see when sshing into the machine. ### Upload to Quarantine area - Antivirus scanning of random files uploaded from untrusted sources and executing metadata extraction or thumbnail generation should happen in a sandboxed system to prevent malicious users from gaining any information about the system. By spawning a new container with access to only the uploaded data we can further limit the attack surface. diff --git a/ocis-reva/docs/testing.md b/ocis-reva/docs/testing.md index 849ea927c..2c03fd2a1 100644 --- a/ocis-reva/docs/testing.md +++ b/ocis-reva/docs/testing.md @@ -1,12 +1,12 @@ -* * * - +--- title: "Testing" date: 2018-05-02T00:00:00+00:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: testing.md +--- -## geekdocFilePath: testing.md ## API Acceptance tests @@ -15,22 +15,24 @@ We are using the ownCloud 10 API acceptance testsuite against ocis. To set this ### Getting the tests All you need to do to get the acceptance tests is check out the core repo: - - git clone https://github.com/owncloud/core.git +``` +git clone https://github.com/owncloud/core.git +``` ### Run a ldap server in a docker container The ownCloud 10 acceptance tests will need write permission. You can start a suitable ldap server in a docker container with: - docker run --hostname ldap.my-company.com \ - -e LDAP_TLS_VERIFY_CLIENT=never \ - -e LDAP_DOMAIN=owncloud.com \ - -e LDAP_ORGANISATION=ownCloud \ - -e LDAP_ADMIN_PASSWORD=admin \ - --name docker-slapd \ - -p 127.0.0.1:389:389 \ - -p 636:636 -d osixia/openldap - +``` +docker run --hostname ldap.my-company.com \ + -e LDAP_TLS_VERIFY_CLIENT=never \ + -e LDAP_DOMAIN=owncloud.com \ + -e LDAP_ORGANISATION=ownCloud \ + -e LDAP_ADMIN_PASSWORD=admin \ + --name docker-slapd \ + -p 127.0.0.1:389:389 \ + -p 636:636 -d osixia/openldap +``` ### Run a redis server in a docker container File versions need a redis server. Start one with docker by using: @@ -41,45 +43,50 @@ File versions need a redis server. Start one with docker by using: `ocis-reva` provides multiple subcommands. To configure them all via env vars you can export these environment variables. - export REVA_USERS_DRIVER=ldap - export REVA_LDAP_HOSTNAME=localhost - export REVA_LDAP_PORT=636 - export REVA_LDAP_BASE_DN='dc=owncloud,dc=com' - export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' - export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' - export REVA_LDAP_BIND_DN='cn=admin,dc=owncloud,dc=com' - export REVA_LDAP_BIND_PASSWORD=admin - export REVA_LDAP_SCHEMA_UID=uid - export REVA_LDAP_SCHEMA_MAIL=mail - export REVA_LDAP_SCHEMA_DISPLAYNAME=displayName - export REVA_LDAP_SCHEMA_CN=cn - export REVA_FRONTEND_URL=http://localhost:9140 # needed because the proxy is not started - export REVA_DATAGATEWAY_URL=http://localhost:9140/data # needed because the proxy is not started +``` +export REVA_USERS_DRIVER=ldap +export REVA_LDAP_HOSTNAME=localhost +export REVA_LDAP_PORT=636 +export REVA_LDAP_BASE_DN='dc=owncloud,dc=com' +export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' +export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' +export REVA_LDAP_BIND_DN='cn=admin,dc=owncloud,dc=com' +export REVA_LDAP_BIND_PASSWORD=admin +export REVA_LDAP_SCHEMA_UID=uid +export REVA_LDAP_SCHEMA_MAIL=mail +export REVA_LDAP_SCHEMA_DISPLAYNAME=displayName +export REVA_LDAP_SCHEMA_CN=cn +export REVA_FRONTEND_URL=http://localhost:9140 # needed because the proxy is not started +export REVA_DATAGATEWAY_URL=http://localhost:9140/data # needed because the proxy is not started +``` Then you need to start the ocis-reva services - - bin/ocis-reva frontend & \ - bin/ocis-reva gateway & \ - bin/ocis-reva auth-basic & \ - bin/ocis-reva auth-bearer & \ - bin/ocis-reva sharing & \ - bin/ocis-reva storage-home & \ - bin/ocis-reva storage-home-data & \ - bin/ocis-reva storage-oc & \ - bin/ocis-reva storage-oc-data & \ - bin/ocis-reva users & +``` +bin/ocis-reva frontend & \ +bin/ocis-reva gateway & \ +bin/ocis-reva auth-basic & \ +bin/ocis-reva auth-bearer & \ +bin/ocis-reva sharing & \ +bin/ocis-reva storage-home & \ +bin/ocis-reva storage-home-data & \ +bin/ocis-reva storage-oc & \ +bin/ocis-reva storage-oc-data & \ +bin/ocis-reva users & +``` ### Run the API acceptance tests In the ownCloud 10 core repo run - make test-acceptance-api \ - TEST_SERVER_URL=http://localhost:9140 \ - TEST_EXTERNAL_USER_BACKENDS=true \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS&&~@preview-extension-required' \ - SKELETON_DIR=apps/testing/data/apiSkeleton +``` +make test-acceptance-api \ +TEST_SERVER_URL=http://localhost:9140 \ +TEST_EXTERNAL_USER_BACKENDS=true \ +TEST_OCIS=true \ +OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ +BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS&&~@preview-extension-required' \ +SKELETON_DIR=apps/testing/data/apiSkeleton +``` Make sure to adjust the settings `TEST_SERVER_URL`,`OCIS_REVA_DATA_ROOT` and `SKELETON_DIR` according to your environment. @@ -116,32 +123,26 @@ If you want to work on a specific issue 2. locally run each of the tests marked with that issue in the expected failures file: E.g.: - - make test-acceptance-api \ - TEST_SERVER_URL=http://localhost:9140 \ - TEST_EXTERNAL_USER_BACKENDS=true \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` + make test-acceptance-api \ + TEST_SERVER_URL=http://localhost:9140 \ + TEST_EXTERNAL_USER_BACKENDS=true \ + TEST_OCIS=true \ + OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ + BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` 3. the tests will fail, try to understand how and why they are failing - 4. fix the code - 5. go back to 2. and repeat till the tests are passing. - 6. remove those tests from the expected failures file. - 7. run each of the local tests that were demonstrating the **buggy** behavior. They should fail. - 8. delete each of the local tests that were demonstrating the **buggy** behavior. - 9. make a PR that has the fixed code, relevant lines removed from the expected failures file and bug demonstration tests deleted. If the changes also affect the `ocis` repository make sure the changes get ported over there. That will need the fixed code in `ocis-reva` to be applied to `ocis` along with the test-related changes. ### Notes - -- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. This can be done by simply running `docker stop docker-slapd && docker rm docker-slapd` and [restarting the LDAP server container](#run-a-ldap-server-in-a-docker-container) -- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. +- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. This can be done by simply running `docker stop docker-slapd && docker rm docker-slapd` and [restarting the LDAP server container](#run-a-ldap-server-in-a-docker-container) +- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. diff --git a/ocis-reva/docs/updating.md b/ocis-reva/docs/updating.md index 03d0d0836..569c646f3 100644 --- a/ocis-reva/docs/updating.md +++ b/ocis-reva/docs/updating.md @@ -1,19 +1,19 @@ -* * * - +--- title: "Updating reva" date: 2020-05-22T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs +geekdocFilePath: updating.md +--- -## geekdocFilePath: updating.md - -{{< toc >}} +{{< toc >}} ## Updating reva -1. Run `go get github.com/cs3org/reva@master` -2. Create a changelog entry containing changes that were done in [reva](https://github.com/cs3org/reva/commits/master) -3. Create a Pull Request to ocis-reva master with those changes -4. If test issues appear, you might need to [adjust the tests]\({{< ref "testing.md" >}}) -5. After the PR is merged, consider doing a [release of ocis-reva]\({{< ref "releasing.md" >}}) +1. Run `go get github.com/cs3org/reva@master` +2. Create a changelog entry containing changes that were done in [reva](https://github.com/cs3org/reva/commits/master) +3. Create a Pull Request to ocis-reva master with those changes +4. If test issues appear, you might need to [adjust the tests]({{< ref "testing.md" >}}) +5. After the PR is merged, consider doing a [release of ocis-reva]({{< ref "releasing.md" >}}) + diff --git a/ocis-reva/docs/users.md b/ocis-reva/docs/users.md index b339e75df..475c21290 100644 --- a/ocis-reva/docs/users.md +++ b/ocis-reva/docs/users.md @@ -1,31 +1,32 @@ -* * * - +--- title: "Users" date: 2020-01-16T00:00:00+00:00 weight: 35 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-reva geekdocEditPath: edit/master/docs - -## geekdocFilePath: users.md +geekdocFilePath: users.md +--- ### Demo driver This is a simple user driver for testing. It contains three users: - - einstein:relativity - marie:radioactivty - richard:superfluidity - +``` +einstein:relativity +marie:radioactivty +richard:superfluidity +``` In order to use the `demo` driver you need to export the relevant environment variable: - - export REVA_USERS_DRIVER=demo +``` +export REVA_USERS_DRIVER=demo +``` ### JSON driver In order to switch from the `ldap` driver to JSON based users you need to export the relevant environment variables: - - export REVA_USERS_DRIVER=json - export REVA_USERS_JSON=/path/to/users.json +``` +export REVA_USERS_DRIVER=json +export REVA_USERS_JSON=/path/to/users.json +``` For the format of the users.json have a look at the [reva examples](https://github.com/cs3org/reva/blob/master/examples/separate/users.demo.json) @@ -34,17 +35,18 @@ For the format of the users.json have a look at the [reva examples](https://gith This is the default user driver. If the below defaults don't match your environment change them accordingly: - - export REVA_LDAP_HOSTNAME=localhost - export REVA_LDAP_PORT=9126 - export REVA_LDAP_BASE_DN='dc=example,dc=org' - export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' - export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' - export REVA_LDAP_BIND_DN='cn=reva,ou=sysusers,dc=example,dc=org' - export REVA_LDAP_BIND_PASSWORD=reva - export REVA_LDAP_SCHEMA_UID=uid - export REVA_LDAP_SCHEMA_MAIL=mail - export REVA_LDAP_SCHEMA_DISPLAYNAME=sn - export REVA_LDAP_SCHEMA_CN=cn +``` +export REVA_LDAP_HOSTNAME=localhost +export REVA_LDAP_PORT=9126 +export REVA_LDAP_BASE_DN='dc=example,dc=org' +export REVA_LDAP_USERFILTER='(&(objectclass=posixAccount)(cn=%s))' +export REVA_LDAP_GROUPFILTER='(&(objectclass=posixGroup)(cn=%s))' +export REVA_LDAP_BIND_DN='cn=reva,ou=sysusers,dc=example,dc=org' +export REVA_LDAP_BIND_PASSWORD=reva +export REVA_LDAP_SCHEMA_UID=uid +export REVA_LDAP_SCHEMA_MAIL=mail +export REVA_LDAP_SCHEMA_DISPLAYNAME=sn +export REVA_LDAP_SCHEMA_CN=cn +``` Then restart the `bin/ocis-reva users` and `bin/ocis-reva auth-basic` services for the changes to take effect. diff --git a/ocis/CHANGELOG.md b/ocis/CHANGELOG.md index 30d416e6c..b4b8c5b6c 100644 --- a/ocis/CHANGELOG.md +++ b/ocis/CHANGELOG.md @@ -2,465 +2,465 @@ ## Summary -- Bugfix - Add missing env vars to docker compose: [#392](https://github.com/owncloud/ocis/pull/392) -- Bugfix - Don't enforce empty external apps slice: [#473](https://github.com/owncloud/ocis/pull/473) -- Bugfix - Fix director selection in proxy: [#521](https://github.com/owncloud/ocis/pull/521) -- Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) -- Bugfix - Update ocis-glauth for fixed single user search: [#214](https://github.com/owncloud/product/issues/214) -- Bugfix - Fix builtin config for external apps: [#218](https://github.com/owncloud/product/issues/218) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#416](https://github.com/owncloud/ocis/pull/416) -- Change - Add the thumbnails command: [#156](https://github.com/owncloud/ocis/issues/156) -- Change - Integrate import command from ocis-migration: [#249](https://github.com/owncloud/ocis/pull/249) -- Change - Initial release of basic version: [#2](https://github.com/owncloud/ocis/issues/2) -- Change - Add cli-commands to manage accounts: [#115](https://github.com/owncloud/product/issues/115) -- Change - Start ocis-accounts with the ocis server command: [#25](https://github.com/owncloud/product/issues/25) -- Change - Switch over to a new custom-built runtime: [#287](https://github.com/owncloud/ocis/pull/287) -- Change - Account management permissions for Admin role: [#124](https://github.com/owncloud/product/issues/124) -- Change - Make ocis-settings available: [#287](https://github.com/owncloud/ocis/pull/287) -- Change - Update ocis-settings to v0.2.0: [#467](https://github.com/owncloud/ocis/pull/467) -- Change - Start ocis-proxy with the ocis server command: [#119](https://github.com/owncloud/ocis/issues/119) -- Change - Update ocis-accounts to v0.4.0: [#479](https://github.com/owncloud/ocis/pull/479) -- Change - Create accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) -- Change - Delete accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) -- Change - Enable/disable accounts in accounts UI: [#118](https://github.com/owncloud/product/issues/118) -- Change - Update ocis-ocs to v0.3.0: [#500](https://github.com/owncloud/ocis/pull/500) -- Change - Update ocis-phoenix to v0.13.0: [#487](https://github.com/owncloud/ocis/pull/487) -- Change - Update ocis-proxy to v0.7.0: [#476](https://github.com/owncloud/ocis/pull/476) -- Change - Update ocis-reva to 0.13.0: [#496](https://github.com/owncloud/ocis/pull/496) -- Change - Update proxy with disabled accounts cache: [#525](https://github.com/owncloud/ocis/pull/525) -- Change - Update ocis-reva to v0.14.0: [#556](https://github.com/owncloud/ocis/pull/556) -- Change - Update reva config: [#336](https://github.com/owncloud/ocis/pull/336) -- Change - Update ocis-settings to v0.3.0: [#490](https://github.com/owncloud/ocis/pull/490) -- Enhancement - Document how to run OCIS on top of EOS: [#172](https://github.com/owncloud/ocis/pull/172) -- Enhancement - Simplify tracing config: [#92](https://github.com/owncloud/product/issues/92) -- Enhancement - Accounts UI improvements: [#222](https://github.com/owncloud/product/issues/222) -- Enhancement - Add new REVA config variables to docs: [#345](https://github.com/owncloud/ocis/pull/345) -- Enhancement - Update extensions: [#180](https://github.com/owncloud/ocis/pull/180) -- Enhancement - Update extensions 2020-07-01: [#357](https://github.com/owncloud/ocis/pull/357) -- Enhancement - Update extensions 2020-09-02: [#516](https://github.com/owncloud/ocis/pull/516) -- Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) -- Enhancement - Update extensions: [#151](https://github.com/owncloud/ocis/pull/151) -- Enhancement - Update extensions 2020-07-10: [#376](https://github.com/owncloud/ocis/pull/376) -- Enhancement - Update extensions: [#290](https://github.com/owncloud/ocis/pull/290) -- Enhancement - Update ocis-reva to 0.4.0: [#295](https://github.com/owncloud/ocis/pull/295) -- Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) -- Enhancement - Update extensions 2020-06-29: [#334](https://github.com/owncloud/ocis/pull/334) -- Enhancement - Update proxy and reva: [#466](https://github.com/owncloud/ocis/pull/466) -- Enhancement - Update proxy to v0.2.0: [#167](https://github.com/owncloud/ocis/pull/167) -- Enhancement - Update ocis-reva 2020-09-10: [#334](https://github.com/owncloud/ocis/pull/334) +* Bugfix - Add missing env vars to docker compose: [#392](https://github.com/owncloud/ocis/pull/392) +* Bugfix - Don't enforce empty external apps slice: [#473](https://github.com/owncloud/ocis/pull/473) +* Bugfix - Fix director selection in proxy: [#521](https://github.com/owncloud/ocis/pull/521) +* Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) +* Bugfix - Update ocis-glauth for fixed single user search: [#214](https://github.com/owncloud/product/issues/214) +* Bugfix - Fix builtin config for external apps: [#218](https://github.com/owncloud/product/issues/218) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#416](https://github.com/owncloud/ocis/pull/416) +* Change - Add the thumbnails command: [#156](https://github.com/owncloud/ocis/issues/156) +* Change - Integrate import command from ocis-migration: [#249](https://github.com/owncloud/ocis/pull/249) +* Change - Initial release of basic version: [#2](https://github.com/owncloud/ocis/issues/2) +* Change - Add cli-commands to manage accounts: [#115](https://github.com/owncloud/product/issues/115) +* Change - Start ocis-accounts with the ocis server command: [#25](https://github.com/owncloud/product/issues/25) +* Change - Switch over to a new custom-built runtime: [#287](https://github.com/owncloud/ocis/pull/287) +* Change - Account management permissions for Admin role: [#124](https://github.com/owncloud/product/issues/124) +* Change - Make ocis-settings available: [#287](https://github.com/owncloud/ocis/pull/287) +* Change - Update ocis-settings to v0.2.0: [#467](https://github.com/owncloud/ocis/pull/467) +* Change - Start ocis-proxy with the ocis server command: [#119](https://github.com/owncloud/ocis/issues/119) +* Change - Update ocis-accounts to v0.4.0: [#479](https://github.com/owncloud/ocis/pull/479) +* Change - Create accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) +* Change - Delete accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) +* Change - Enable/disable accounts in accounts UI: [#118](https://github.com/owncloud/product/issues/118) +* Change - Update ocis-ocs to v0.3.0: [#500](https://github.com/owncloud/ocis/pull/500) +* Change - Update ocis-phoenix to v0.13.0: [#487](https://github.com/owncloud/ocis/pull/487) +* Change - Update ocis-proxy to v0.7.0: [#476](https://github.com/owncloud/ocis/pull/476) +* Change - Update ocis-reva to 0.13.0: [#496](https://github.com/owncloud/ocis/pull/496) +* Change - Update proxy with disabled accounts cache: [#525](https://github.com/owncloud/ocis/pull/525) +* Change - Update ocis-reva to v0.14.0: [#556](https://github.com/owncloud/ocis/pull/556) +* Change - Update reva config: [#336](https://github.com/owncloud/ocis/pull/336) +* Change - Update ocis-settings to v0.3.0: [#490](https://github.com/owncloud/ocis/pull/490) +* Enhancement - Document how to run OCIS on top of EOS: [#172](https://github.com/owncloud/ocis/pull/172) +* Enhancement - Simplify tracing config: [#92](https://github.com/owncloud/product/issues/92) +* Enhancement - Accounts UI improvements: [#222](https://github.com/owncloud/product/issues/222) +* Enhancement - Add new REVA config variables to docs: [#345](https://github.com/owncloud/ocis/pull/345) +* Enhancement - Update extensions: [#180](https://github.com/owncloud/ocis/pull/180) +* Enhancement - Update extensions 2020-07-01: [#357](https://github.com/owncloud/ocis/pull/357) +* Enhancement - Update extensions 2020-09-02: [#516](https://github.com/owncloud/ocis/pull/516) +* Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) +* Enhancement - Update extensions: [#151](https://github.com/owncloud/ocis/pull/151) +* Enhancement - Update extensions 2020-07-10: [#376](https://github.com/owncloud/ocis/pull/376) +* Enhancement - Update extensions: [#290](https://github.com/owncloud/ocis/pull/290) +* Enhancement - Update ocis-reva to 0.4.0: [#295](https://github.com/owncloud/ocis/pull/295) +* Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) +* Enhancement - Update extensions 2020-06-29: [#334](https://github.com/owncloud/ocis/pull/334) +* Enhancement - Update proxy and reva: [#466](https://github.com/owncloud/ocis/pull/466) +* Enhancement - Update proxy to v0.2.0: [#167](https://github.com/owncloud/ocis/pull/167) +* Enhancement - Update ocis-reva 2020-09-10: [#334](https://github.com/owncloud/ocis/pull/334) ## Details -- Bugfix - Add missing env vars to docker compose: [#392](https://github.com/owncloud/ocis/pull/392) +* Bugfix - Add missing env vars to docker compose: [#392](https://github.com/owncloud/ocis/pull/392) - Without setting `REVA_FRONTEND_URL` and `REVA_DATAGATEWAY_URL` uploads would default to - locahost and fail if `OCIS_DOMAIN` was used to run ocis on a remote host. + Without setting `REVA_FRONTEND_URL` and `REVA_DATAGATEWAY_URL` uploads would default to + locahost and fail if `OCIS_DOMAIN` was used to run ocis on a remote host. - + https://github.com/owncloud/ocis/pull/392 -- Bugfix - Don't enforce empty external apps slice: [#473](https://github.com/owncloud/ocis/pull/473) +* Bugfix - Don't enforce empty external apps slice: [#473](https://github.com/owncloud/ocis/pull/473) - The command for ocis-phoenix enforced an empty external apps configuration. This was - removed, as it was blocking a new set of default external apps in ocis-phoenix. + The command for ocis-phoenix enforced an empty external apps configuration. This was + removed, as it was blocking a new set of default external apps in ocis-phoenix. - + https://github.com/owncloud/ocis/pull/473 -- Bugfix - Fix director selection in proxy: [#521](https://github.com/owncloud/ocis/pull/521) +* Bugfix - Fix director selection in proxy: [#521](https://github.com/owncloud/ocis/pull/521) - We fixed a bug in ocis-proxy where simultaneous requests could be executed on the wrong - backend. + We fixed a bug in ocis-proxy where simultaneous requests could be executed on the wrong + backend. - - + https://github.com/owncloud/ocis/pull/521 + https://github.com/owncloud/ocis-proxy/pull/99 -- Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) +* Bugfix - Cleanup separated indices in memory: [#224](https://github.com/owncloud/product/issues/224) - The accounts service was creating a bleve index instance in the service handler, thus creating - separate in memory indices for the http and grpc servers. We moved the service handler creation - out of the server creation so that the service handler, thus also the bleve index, is a shared - instance of the servers. + The accounts service was creating a bleve index instance in the service handler, thus creating + separate in memory indices for the http and grpc servers. We moved the service handler creation + out of the server creation so that the service handler, thus also the bleve index, is a shared + instance of the servers. - This fixes a bug that accounts created through the web ui were not able to sign in until a service - restart. + This fixes a bug that accounts created through the web ui were not able to sign in until a service + restart. - - - - + https://github.com/owncloud/product/issues/224 + https://github.com/owncloud/ocis-accounts/pull/117 + https://github.com/owncloud/ocis-accounts/pull/118 + https://github.com/owncloud/ocis/pull/555 -- Bugfix - Update ocis-glauth for fixed single user search: [#214](https://github.com/owncloud/product/issues/214) +* Bugfix - Update ocis-glauth for fixed single user search: [#214](https://github.com/owncloud/product/issues/214) - We updated ocis-glauth to a version that comes with a fix for searching a single user or group. - ocis-glauth was dropping search context before by ignoring the searchBaseDN for filtering. - This has been fixed. + We updated ocis-glauth to a version that comes with a fix for searching a single user or group. + ocis-glauth was dropping search context before by ignoring the searchBaseDN for filtering. + This has been fixed. - - - + https://github.com/owncloud/product/issues/214 + https://github.com/owncloud/ocis/pull/535 + https://github.com/owncloud/ocis-glauth/pull/32 -- Bugfix - Fix builtin config for external apps: [#218](https://github.com/owncloud/product/issues/218) +* Bugfix - Fix builtin config for external apps: [#218](https://github.com/owncloud/product/issues/218) - We fixed a bug in the builtin config of ocis-phoenix, having hardcoded urls instead of just the - path of external apps. + We fixed a bug in the builtin config of ocis-phoenix, having hardcoded urls instead of just the + path of external apps. - - - + https://github.com/owncloud/product/issues/218 + https://github.com/owncloud/ocis-phoenix/pull/83 + https://github.com/owncloud/ocis/pull/544 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#416](https://github.com/owncloud/ocis/pull/416) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#416](https://github.com/owncloud/ocis/pull/416) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/pull/416 -- Change - Add the thumbnails command: [#156](https://github.com/owncloud/ocis/issues/156) +* Change - Add the thumbnails command: [#156](https://github.com/owncloud/ocis/issues/156) - Added the thumbnails command so that the thumbnails service can get started via ocis. + Added the thumbnails command so that the thumbnails service can get started via ocis. - + https://github.com/owncloud/ocis/issues/156 -- Change - Integrate import command from ocis-migration: [#249](https://github.com/owncloud/ocis/pull/249) +* Change - Integrate import command from ocis-migration: [#249](https://github.com/owncloud/ocis/pull/249) - - + https://github.com/owncloud/ocis/pull/249 + https://github.com/owncloud/ocis-migration -- Change - Initial release of basic version: [#2](https://github.com/owncloud/ocis/issues/2) +* Change - Initial release of basic version: [#2](https://github.com/owncloud/ocis/issues/2) - Just prepared an initial basic version which simply embeds the minimum of required services in - the context of the ownCloud Infinite Scale project. + Just prepared an initial basic version which simply embeds the minimum of required services in + the context of the ownCloud Infinite Scale project. - + https://github.com/owncloud/ocis/issues/2 -- Change - Add cli-commands to manage accounts: [#115](https://github.com/owncloud/product/issues/115) +* Change - Add cli-commands to manage accounts: [#115](https://github.com/owncloud/product/issues/115) - COMMANDS: - list, ls List existing accounts - add, create Create a new account - update Make - changes to an existing account - remove, rm Removes an existing account - inspect Show detailed - data on an existing account - help, h Shows a list of commands or help for one command + COMMANDS: - list, ls List existing accounts - add, create Create a new account - update Make + changes to an existing account - remove, rm Removes an existing account - inspect Show detailed + data on an existing account - help, h Shows a list of commands or help for one command - + https://github.com/owncloud/product/issues/115 -- Change - Start ocis-accounts with the ocis server command: [#25](https://github.com/owncloud/product/issues/25) +* Change - Start ocis-accounts with the ocis server command: [#25](https://github.com/owncloud/product/issues/25) - Starts ocis-accounts in single binary mode (./ocis server). This service stores the - user-account information. + Starts ocis-accounts in single binary mode (./ocis server). This service stores the + user-account information. - - + https://github.com/owncloud/product/issues/25 + https://github.com/owncloud/ocis/pull/239/files -- Change - Switch over to a new custom-built runtime: [#287](https://github.com/owncloud/ocis/pull/287) +* Change - Switch over to a new custom-built runtime: [#287](https://github.com/owncloud/ocis/pull/287) - We moved away from using the go-micro runtime and are now using [our own - runtime](https://github.com/refs/pman). This allows us to spawn service processes even - when they are using different versions of go-micro. On top of that we now have the commands `ocis - list`, `ocis kill` and `ocis run` available for service runtime management. + We moved away from using the go-micro runtime and are now using [our own + runtime](https://github.com/refs/pman). This allows us to spawn service processes even + when they are using different versions of go-micro. On top of that we now have the commands `ocis + list`, `ocis kill` and `ocis run` available for service runtime management. - + https://github.com/owncloud/ocis/pull/287 -- Change - Account management permissions for Admin role: [#124](https://github.com/owncloud/product/issues/124) +* Change - Account management permissions for Admin role: [#124](https://github.com/owncloud/product/issues/124) - We created an `AccountManagement` permission and added it to the default admin role. There are - permission checks in place to protected http endpoints in ocis-accounts against requests - without the permission. All existing default users (einstein, marie, richard) have the - default user role now (doesn't have the `AccountManagement` permission). Additionally, - there is a new default Admin user with credentials `moss:vista`. + We created an `AccountManagement` permission and added it to the default admin role. There are + permission checks in place to protected http endpoints in ocis-accounts against requests + without the permission. All existing default users (einstein, marie, richard) have the + default user role now (doesn't have the `AccountManagement` permission). Additionally, + there is a new default Admin user with credentials `moss:vista`. - Known issue: for users without the `AccountManagement` permission, the accounts UI - extension is still available in the ocis-web app switcher, but the requests for loading the - users will fail (as expected). We are working on a way to hide the accounts UI extension if the - user doesn't have the `AccountManagement` permission. + Known issue: for users without the `AccountManagement` permission, the accounts UI + extension is still available in the ocis-web app switcher, but the requests for loading the + users will fail (as expected). We are working on a way to hide the accounts UI extension if the + user doesn't have the `AccountManagement` permission. - - - - - - - - - - + https://github.com/owncloud/product/issues/124 + https://github.com/owncloud/ocis/settings/pull/59 + https://github.com/owncloud/ocis/settings/pull/66 + https://github.com/owncloud/ocis/settings/pull/67 + https://github.com/owncloud/ocis/settings/pull/69 + https://github.com/owncloud/ocis-proxy/pull/95 + https://github.com/owncloud/ocis-pkg/pull/59 + https://github.com/owncloud/ocis-accounts/pull/95 + https://github.com/owncloud/ocis-accounts/pull/100 + https://github.com/owncloud/ocis-accounts/pull/102 -- Change - Make ocis-settings available: [#287](https://github.com/owncloud/ocis/pull/287) +* Change - Make ocis-settings available: [#287](https://github.com/owncloud/ocis/pull/287) - This version delivers `settings` as a new service. It is part of the array of services in the - `server` command. + This version delivers `settings` as a new service. It is part of the array of services in the + `server` command. - + https://github.com/owncloud/ocis/pull/287 -- Change - Update ocis-settings to v0.2.0: [#467](https://github.com/owncloud/ocis/pull/467) +* Change - Update ocis-settings to v0.2.0: [#467](https://github.com/owncloud/ocis/pull/467) - This version delivers `settings` v0.2.0 and versions of accounts (v0.3.0) and phoenix - (v0.15.0) needed for it. + This version delivers `settings` v0.2.0 and versions of accounts (v0.3.0) and phoenix + (v0.15.0) needed for it. - + https://github.com/owncloud/ocis/pull/467 -- Change - Start ocis-proxy with the ocis server command: [#119](https://github.com/owncloud/ocis/issues/119) +* Change - Start ocis-proxy with the ocis server command: [#119](https://github.com/owncloud/ocis/issues/119) - Starts the proxy in single binary mode (./ocis server) on port 9200. The proxy serves as a - single-entry point for all http-clients. + Starts the proxy in single binary mode (./ocis server) on port 9200. The proxy serves as a + single-entry point for all http-clients. - - + https://github.com/owncloud/ocis/issues/119 + https://github.com/owncloud/ocis/issues/136 -- Change - Update ocis-accounts to v0.4.0: [#479](https://github.com/owncloud/ocis/pull/479) +* Change - Update ocis-accounts to v0.4.0: [#479](https://github.com/owncloud/ocis/pull/479) - Provides a web UI for role assignment. + Provides a web UI for role assignment. - + https://github.com/owncloud/ocis/pull/479 -- Change - Create accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) +* Change - Create accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) - We've added a form to create new users above the accounts list in the accounts UI. + We've added a form to create new users above the accounts list in the accounts UI. - - - + https://github.com/owncloud/product/issues/148 + https://github.com/owncloud/ocis-accounts/pull/115 + https://github.com/owncloud/ocis/pull/525 -- Change - Delete accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) +* Change - Delete accounts in accounts UI: [#148](https://github.com/owncloud/product/issues/148) - We've added an action into the actions dropdown of the accounts UI to enable admins to delete - users. + We've added an action into the actions dropdown of the accounts UI to enable admins to delete + users. - - - + https://github.com/owncloud/product/issues/148 + https://github.com/owncloud/ocis-accounts/pull/115 + https://github.com/owncloud/ocis/pull/525 -- Change - Enable/disable accounts in accounts UI: [#118](https://github.com/owncloud/product/issues/118) +* Change - Enable/disable accounts in accounts UI: [#118](https://github.com/owncloud/product/issues/118) - We added a new feature in the ocis-accounts web extension to enable or disable accounts. This - also introduces batch actions, where accounts can be selected and a batch action applied to - them. The UI for this is the same as in the files extension of ocis-web. + We added a new feature in the ocis-accounts web extension to enable or disable accounts. This + also introduces batch actions, where accounts can be selected and a batch action applied to + them. The UI for this is the same as in the files extension of ocis-web. - - - + https://github.com/owncloud/product/issues/118 + https://github.com/owncloud/ocis-accounts/pull/109 + https://github.com/owncloud/ocis/pull/525 -- Change - Update ocis-ocs to v0.3.0: [#500](https://github.com/owncloud/ocis/pull/500) +* Change - Update ocis-ocs to v0.3.0: [#500](https://github.com/owncloud/ocis/pull/500) - This change updates ocis-ocs to version 0.3.0 + This change updates ocis-ocs to version 0.3.0 - + https://github.com/owncloud/ocis/pull/500 -- Change - Update ocis-phoenix to v0.13.0: [#487](https://github.com/owncloud/ocis/pull/487) +* Change - Update ocis-phoenix to v0.13.0: [#487](https://github.com/owncloud/ocis/pull/487) - This version delivers ocis-phoenix v0.13.0. + This version delivers ocis-phoenix v0.13.0. - + https://github.com/owncloud/ocis/pull/487 -- Change - Update ocis-proxy to v0.7.0: [#476](https://github.com/owncloud/ocis/pull/476) +* Change - Update ocis-proxy to v0.7.0: [#476](https://github.com/owncloud/ocis/pull/476) - This version delivers ocis-proxy v0.7.0. + This version delivers ocis-proxy v0.7.0. - + https://github.com/owncloud/ocis/pull/476 -- Change - Update ocis-reva to 0.13.0: [#496](https://github.com/owncloud/ocis/pull/496) +* Change - Update ocis-reva to 0.13.0: [#496](https://github.com/owncloud/ocis/pull/496) - This version delivers ocis-reva v0.13.0 + This version delivers ocis-reva v0.13.0 - + https://github.com/owncloud/ocis/pull/496 -- Change - Update proxy with disabled accounts cache: [#525](https://github.com/owncloud/ocis/pull/525) +* Change - Update proxy with disabled accounts cache: [#525](https://github.com/owncloud/ocis/pull/525) - We removed the accounts cache in ocis-proxy in order to avoid problems with accounts that have - been updated in ocis-accounts. + We removed the accounts cache in ocis-proxy in order to avoid problems with accounts that have + been updated in ocis-accounts. - - - + https://github.com/owncloud/ocis/pull/525 + https://github.com/owncloud/ocis-proxy/pull/100 + https://github.com/owncloud/ocis-accounts/pull/114 -- Change - Update ocis-reva to v0.14.0: [#556](https://github.com/owncloud/ocis/pull/556) +* Change - Update ocis-reva to v0.14.0: [#556](https://github.com/owncloud/ocis/pull/556) - - Update ocis-reva to v0.14.0 - Fix default configuration for accessing shares - (ocis-reva/#461) - Allow configuring arbitrary storage registry rules (ocis-reva/#461) - - Update reva to v1.2.1-0.20200911111727-51649e37df2d (reva/#454, reva/#466) + - Update ocis-reva to v0.14.0 - Fix default configuration for accessing shares + (ocis-reva/#461) - Allow configuring arbitrary storage registry rules (ocis-reva/#461) - + Update reva to v1.2.1-0.20200911111727-51649e37df2d (reva/#454, reva/#466) - - - - + https://github.com/owncloud/ocis/pull/556 + https://github.com/owncloud/ocis/ocis-reva/pull/461 + https://github.com/owncloud/ocis/ocis-reva/pull/454 + https://github.com/owncloud/ocis/ocis-reva/pull/466 -- Change - Update reva config: [#336](https://github.com/owncloud/ocis/pull/336) +* Change - Update reva config: [#336](https://github.com/owncloud/ocis/pull/336) - - EOS homes are not configured with an enable-flag anymore, but with a dedicated storage - driver. - We're using it now and adapted default configs of storages + - EOS homes are not configured with an enable-flag anymore, but with a dedicated storage + driver. - We're using it now and adapted default configs of storages - - - - + https://github.com/owncloud/ocis/pull/336 + https://github.com/owncloud/ocis/pull/337 + https://github.com/owncloud/ocis/pull/338 + https://github.com/owncloud/ocis/ocis-reva/pull/891 -- Change - Update ocis-settings to v0.3.0: [#490](https://github.com/owncloud/ocis/pull/490) +* Change - Update ocis-settings to v0.3.0: [#490](https://github.com/owncloud/ocis/pull/490) - This version delivers ocis-settings v0.3.0. + This version delivers ocis-settings v0.3.0. - + https://github.com/owncloud/ocis/pull/490 -- Enhancement - Document how to run OCIS on top of EOS: [#172](https://github.com/owncloud/ocis/pull/172) +* Enhancement - Document how to run OCIS on top of EOS: [#172](https://github.com/owncloud/ocis/pull/172) - We have added rules to the Makefile that use the official [eos docker - images](https://gitlab.cern.ch/eos/eos-docker) to boot an eos cluster and configure OCIS - to use it. + We have added rules to the Makefile that use the official [eos docker + images](https://gitlab.cern.ch/eos/eos-docker) to boot an eos cluster and configure OCIS + to use it. - + https://github.com/owncloud/ocis/pull/172 -- Enhancement - Simplify tracing config: [#92](https://github.com/owncloud/product/issues/92) +* Enhancement - Simplify tracing config: [#92](https://github.com/owncloud/product/issues/92) - We now apply the oCIS tracing config to all services which have tracing. With this it is possible - to set one tracing config for all services at the same time. + We now apply the oCIS tracing config to all services which have tracing. With this it is possible + to set one tracing config for all services at the same time. - - - + https://github.com/owncloud/product/issues/92 + https://github.com/owncloud/ocis/pull/329 + https://github.com/owncloud/ocis/pull/409 -- Enhancement - Accounts UI improvements: [#222](https://github.com/owncloud/product/issues/222) +* Enhancement - Accounts UI improvements: [#222](https://github.com/owncloud/product/issues/222) - We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, - style of batch actions), added icons to buttons, extracted the buttons from the batch actions - dropdown into individual buttons, improved the wording added a confirmation widget for the - user deletion and removed the uid and gid columns. + We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, + style of batch actions), added icons to buttons, extracted the buttons from the batch actions + dropdown into individual buttons, improved the wording added a confirmation widget for the + user deletion and removed the uid and gid columns. - - - + https://github.com/owncloud/product/issues/222 + https://github.com/owncloud/ocis-accounts/pull/116 + https://github.com/owncloud/ocis/pull/549 -- Enhancement - Add new REVA config variables to docs: [#345](https://github.com/owncloud/ocis/pull/345) +* Enhancement - Add new REVA config variables to docs: [#345](https://github.com/owncloud/ocis/pull/345) - With the default setup of running oCIS with ocis-proxy we need to set `REVA_DATAGATEWAY_URL` - and `REVA_FRONTEND_URL` environment variables. We added those to the configuration - instructions in the dev docs. + With the default setup of running oCIS with ocis-proxy we need to set `REVA_DATAGATEWAY_URL` + and `REVA_FRONTEND_URL` environment variables. We added those to the configuration + instructions in the dev docs. - + https://github.com/owncloud/ocis/pull/345 -- Enhancement - Update extensions: [#180](https://github.com/owncloud/ocis/pull/180) +* Enhancement - Update extensions: [#180](https://github.com/owncloud/ocis/pull/180) - We've updated various extensions to a tagged release: - ocis-phoenix v0.4.0 (phoenix v0.7.0) + We've updated various extensions to a tagged release: - ocis-phoenix v0.4.0 (phoenix v0.7.0) + - ocis-pkg v2.2.0 - ocis-proxy v0.3.1 - ocis-reva v0.1.1 - ocis-thumbnails v0.1.0 - + ocis-webdav v0.1.0 - - ocis-pkg v2.2.0 - ocis-proxy v0.3.1 - ocis-reva v0.1.1 - ocis-thumbnails v0.1.0 - - ocis-webdav v0.1.0 + https://github.com/owncloud/ocis/pull/180 - +* Enhancement - Update extensions 2020-07-01: [#357](https://github.com/owncloud/ocis/pull/357) -- Enhancement - Update extensions 2020-07-01: [#357](https://github.com/owncloud/ocis/pull/357) + - ocis-reva 0.9.0 - - ocis-reva 0.9.0 + https://github.com/owncloud/ocis/pull/357 - +* Enhancement - Update extensions 2020-09-02: [#516](https://github.com/owncloud/ocis/pull/516) -- Enhancement - Update extensions 2020-09-02: [#516](https://github.com/owncloud/ocis/pull/516) + - ocis-accounts 0.4.2-0.20200828150703-2ca83cf4ac20 - ocis-ocs 0.3.1 - ocis-settings + 0.3.2-0.20200828130413-0cc0f5bf26fe - - ocis-accounts 0.4.2-0.20200828150703-2ca83cf4ac20 - ocis-ocs 0.3.1 - ocis-settings - 0.3.2-0.20200828130413-0cc0f5bf26fe + https://github.com/owncloud/ocis/pull/516 - +* Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) -- Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) + We've updated various extensions: - ocis-konnectd v0.3.1 - ocis-phoenix v0.5.0 (phoenix + v0.8.0) - ocis-reva v0.2.0 - We've updated various extensions: - ocis-konnectd v0.3.1 - ocis-phoenix v0.5.0 (phoenix - v0.8.0) - ocis-reva v0.2.0 + https://github.com/owncloud/ocis/pull/209 - +* Enhancement - Update extensions: [#151](https://github.com/owncloud/ocis/pull/151) -- Enhancement - Update extensions: [#151](https://github.com/owncloud/ocis/pull/151) + We've updated various extensions to a tagged release: - ocis-konnectd v0.2.0 - ocis-glauth + v0.4.0 - ocis-phoenix v0.3.0 (phoenix v0.6.0) - ocis-pkg v2.1.0 - ocis-proxy v0.1.0 - + ocis-reva v0.1.0 - We've updated various extensions to a tagged release: - ocis-konnectd v0.2.0 - ocis-glauth - v0.4.0 - ocis-phoenix v0.3.0 (phoenix v0.6.0) - ocis-pkg v2.1.0 - ocis-proxy v0.1.0 - - ocis-reva v0.1.0 + https://github.com/owncloud/ocis/pull/151 - +* Enhancement - Update extensions 2020-07-10: [#376](https://github.com/owncloud/ocis/pull/376) -- Enhancement - Update extensions 2020-07-10: [#376](https://github.com/owncloud/ocis/pull/376) + - ocis-reva 0.10.0 - ocis-phoenix 0.9.0 - - ocis-reva 0.10.0 - ocis-phoenix 0.9.0 + https://github.com/owncloud/ocis/pull/376 - +* Enhancement - Update extensions: [#290](https://github.com/owncloud/ocis/pull/290) -- Enhancement - Update extensions: [#290](https://github.com/owncloud/ocis/pull/290) + We've updated various extensions: - ocis-thumbnails v0.1.2 (tag) - ocis-reva v0.3.0 (tag) - We've updated various extensions: - ocis-thumbnails v0.1.2 (tag) - ocis-reva v0.3.0 (tag) + https://github.com/owncloud/ocis/pull/290 - +* Enhancement - Update ocis-reva to 0.4.0: [#295](https://github.com/owncloud/ocis/pull/295) -- Enhancement - Update ocis-reva to 0.4.0: [#295](https://github.com/owncloud/ocis/pull/295) + Brings in fixes for trashbin and TUS upload. Also adds partial implementation of public + shares. - Brings in fixes for trashbin and TUS upload. Also adds partial implementation of public - shares. + https://github.com/owncloud/ocis/pull/295 - +* Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) -- Enhancement - Update extensions: [#209](https://github.com/owncloud/ocis/pull/209) + We've updated various extensions: - ocis-konnectd v0.3.1 - ocis-phoenix v0.6.0 - ocis-reva + v0.2.1 - ocis-pkg v2.2.1 - ocis-thumbnails v0.1.2 - We've updated various extensions: - ocis-konnectd v0.3.1 - ocis-phoenix v0.6.0 - ocis-reva - v0.2.1 - ocis-pkg v2.2.1 - ocis-thumbnails v0.1.2 + https://github.com/owncloud/ocis/pull/209 - +* Enhancement - Update extensions 2020-06-29: [#334](https://github.com/owncloud/ocis/pull/334) -- Enhancement - Update extensions 2020-06-29: [#334](https://github.com/owncloud/ocis/pull/334) + - ocis-proxy 0.4.0 - ocis-migration 0.2.0 - ocis-reva 0.8.0 - ocis-phoenix 0.8.1 - - ocis-proxy 0.4.0 - ocis-migration 0.2.0 - ocis-reva 0.8.0 - ocis-phoenix 0.8.1 + https://github.com/owncloud/ocis/pull/334 - +* Enhancement - Update proxy and reva: [#466](https://github.com/owncloud/ocis/pull/466) -- Enhancement - Update proxy and reva: [#466](https://github.com/owncloud/ocis/pull/466) + - ocis-reva contains a lot of sharing, eos and trash fixes - ocis-proxy contains fixes to use + ocis on top of eos - - ocis-reva contains a lot of sharing, eos and trash fixes - ocis-proxy contains fixes to use - ocis on top of eos + https://github.com/owncloud/ocis/pull/466 - +* Enhancement - Update proxy to v0.2.0: [#167](https://github.com/owncloud/ocis/pull/167) -- Enhancement - Update proxy to v0.2.0: [#167](https://github.com/owncloud/ocis/pull/167) + https://github.com/owncloud/ocis/pull/167 - +* Enhancement - Update ocis-reva 2020-09-10: [#334](https://github.com/owncloud/ocis/pull/334) -- Enhancement - Update ocis-reva 2020-09-10: [#334](https://github.com/owncloud/ocis/pull/334) + - ocis-reva v0.13.1-0.20200910085648-26465bbdcf46 - fixes file operations for received + shares by changing OC storage default config - adds ability to overwrite storage registry + rules - - ocis-reva v0.13.1-0.20200910085648-26465bbdcf46 - fixes file operations for received - shares by changing OC storage default config - adds ability to overwrite storage registry - rules + https://github.com/owncloud/ocis/pull/334 + https://github.com/owncloud/ocis/ocis-reva/pull/461 - - diff --git a/ocis/README.md b/ocis/README.md index 5548c8d79..edd4549fa 100644 --- a/ocis/README.md +++ b/ocis/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis/status.svg)](https://cloud.drone.io/owncloud/ocis) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/dc97ddfa167641d8b107e9b618823c71)](https://www.codacy.com/app/owncloud/ocis?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/dc97ddfa167641d8b107e9b618823c71)](https://www.codacy.com/app/owncloud/ocis?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis?status.svg)](http://godoc.org/github.com/owncloud/ocis) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis)](http://goreportcard.com/report/github.com/owncloud/ocis) [![](https://images.microbadger.com/badges/image/owncloud/ocis.svg)](http://microbadger.com/images/owncloud/ocis "Get your own image badge on microbadger.com") @@ -51,7 +51,7 @@ mkdir -p /var/tmp/reva/root/{home,oc} ./bin/ocis server ``` -- Open +- Open [https://localhost:9200](https://localhost:9200) - Accept the self-signed certificate (it is regenerated every time the server starts) @@ -68,7 +68,6 @@ mkdir -p /var/tmp/reva/root/{home,oc} The list of available extensions can be found in the "Extensions" section when running `./bin/ocis`. For example to run the "phoenix" extension: - ```console ./bin/ocis --log-level debug phoenix ``` @@ -77,7 +76,7 @@ For example to run the "phoenix" extension: ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/ocis/changelog/unreleased/add-eos.md b/ocis/changelog/unreleased/add-eos.md index 35e59814b..4c14862cb 100644 --- a/ocis/changelog/unreleased/add-eos.md +++ b/ocis/changelog/unreleased/add-eos.md @@ -2,4 +2,4 @@ Enhancement: Document how to run OCIS on top of EOS We have added rules to the Makefile that use the official [eos docker images](https://gitlab.cern.ch/eos/eos-docker) to boot an eos cluster and configure OCIS to use it. - +https://github.com/owncloud/ocis/pull/172 \ No newline at end of file diff --git a/ocis/changelog/unreleased/add-missing-env-vars.md b/ocis/changelog/unreleased/add-missing-env-vars.md index 5c36bc13b..84a631333 100644 --- a/ocis/changelog/unreleased/add-missing-env-vars.md +++ b/ocis/changelog/unreleased/add-missing-env-vars.md @@ -2,4 +2,4 @@ Bugfix: add missing env vars to docker compose Without setting `REVA_FRONTEND_URL` and `REVA_DATAGATEWAY_URL` uploads would default to locahost and fail if `OCIS_DOMAIN` was used to run ocis on a remote host. - +https://github.com/owncloud/ocis/pull/392 diff --git a/ocis/changelog/unreleased/add-thumbnails-command.md b/ocis/changelog/unreleased/add-thumbnails-command.md index 42f0774a1..30a48e439 100644 --- a/ocis/changelog/unreleased/add-thumbnails-command.md +++ b/ocis/changelog/unreleased/add-thumbnails-command.md @@ -2,4 +2,4 @@ Change: add the thumbnails command Added the thumbnails command so that the thumbnails service can get started via ocis. - +https://github.com/owncloud/ocis/issues/156 diff --git a/ocis/changelog/unreleased/clear-external-apps.md b/ocis/changelog/unreleased/clear-external-apps.md index 169bfb612..bd7d1a7a7 100644 --- a/ocis/changelog/unreleased/clear-external-apps.md +++ b/ocis/changelog/unreleased/clear-external-apps.md @@ -2,4 +2,4 @@ Bugfix: Don't enforce empty external apps slice The command for ocis-phoenix enforced an empty external apps configuration. This was removed, as it was blocking a new set of default external apps in ocis-phoenix. - +https://github.com/owncloud/ocis/pull/473 diff --git a/ocis/changelog/unreleased/import.md b/ocis/changelog/unreleased/import.md index 964779e70..79ba69903 100644 --- a/ocis/changelog/unreleased/import.md +++ b/ocis/changelog/unreleased/import.md @@ -1,4 +1,4 @@ Change: Integrate import command from ocis-migration - - +https://github.com/owncloud/ocis/pull/249 +https://github.com/owncloud/ocis-migration diff --git a/ocis/changelog/unreleased/improve-reva-service-descriptions.md b/ocis/changelog/unreleased/improve-reva-service-descriptions.md index 90071da3c..743e08b46 100644 --- a/ocis/changelog/unreleased/improve-reva-service-descriptions.md +++ b/ocis/changelog/unreleased/improve-reva-service-descriptions.md @@ -4,4 +4,4 @@ The descriptions make it clearer that the services actually represent a mount point in the combined storage. Each mount point can have a different driver. - +https://github.com/owncloud/ocis/pull/536 diff --git a/ocis/changelog/unreleased/initial-release.md b/ocis/changelog/unreleased/initial-release.md index 99b86100c..a844d4cc0 100644 --- a/ocis/changelog/unreleased/initial-release.md +++ b/ocis/changelog/unreleased/initial-release.md @@ -3,4 +3,4 @@ Change: Initial release of basic version Just prepared an initial basic version which simply embeds the minimum of required services in the context of the ownCloud Infinite Scale project. - +https://github.com/owncloud/ocis/issues/2 diff --git a/ocis/changelog/unreleased/integrate-accounts-cli.md b/ocis/changelog/unreleased/integrate-accounts-cli.md index 2a2128b02..b236f5894 100644 --- a/ocis/changelog/unreleased/integrate-accounts-cli.md +++ b/ocis/changelog/unreleased/integrate-accounts-cli.md @@ -1,12 +1,11 @@ Change: Add cli-commands to manage accounts COMMANDS: + - list, ls List existing accounts + - add, create Create a new account + - update Make changes to an existing account + - remove, rm Removes an existing account + - inspect Show detailed data on an existing account + - help, h Shows a list of commands or help for one command -- list, ls List existing accounts -- add, create Create a new account -- update Make changes to an existing account -- remove, rm Removes an existing account -- inspect Show detailed data on an existing account -- help, h Shows a list of commands or help for one command - - +https://github.com/owncloud/product/issues/115 diff --git a/ocis/changelog/unreleased/integrate-accounts.md b/ocis/changelog/unreleased/integrate-accounts.md index c5ba5af1c..b09c4e892 100644 --- a/ocis/changelog/unreleased/integrate-accounts.md +++ b/ocis/changelog/unreleased/integrate-accounts.md @@ -2,5 +2,5 @@ Change: Start ocis-accounts with the ocis server command Starts ocis-accounts in single binary mode (./ocis server). This service stores the user-account information. - - +https://github.com/owncloud/product/issues/25 +https://github.com/owncloud/ocis/pull/239/files diff --git a/ocis/changelog/unreleased/new-runtime.md b/ocis/changelog/unreleased/new-runtime.md index 2764b2f3f..4c7828bdc 100644 --- a/ocis/changelog/unreleased/new-runtime.md +++ b/ocis/changelog/unreleased/new-runtime.md @@ -4,4 +4,4 @@ We moved away from using the go-micro runtime and are now using [our own runtime This allows us to spawn service processes even when they are using different versions of go-micro. On top of that we now have the commands `ocis list`, `ocis kill` and `ocis run` available for service runtime management. - +https://github.com/owncloud/ocis/pull/287 diff --git a/ocis/changelog/unreleased/permission-checks-in-ocis-accounts.md b/ocis/changelog/unreleased/permission-checks-in-ocis-accounts.md index 6f290d878..760397e53 100644 --- a/ocis/changelog/unreleased/permission-checks-in-ocis-accounts.md +++ b/ocis/changelog/unreleased/permission-checks-in-ocis-accounts.md @@ -9,13 +9,13 @@ Known issue: for users without the `AccountManagement` permission, the accounts in the ocis-web app switcher, but the requests for loading the users will fail (as expected). We are working on a way to hide the accounts UI extension if the user doesn't have the `AccountManagement` permission. - - - - - - - - - - +https://github.com/owncloud/product/issues/124 +https://github.com/owncloud/ocis/settings/pull/59 +https://github.com/owncloud/ocis/settings/pull/66 +https://github.com/owncloud/ocis/settings/pull/67 +https://github.com/owncloud/ocis/settings/pull/69 +https://github.com/owncloud/ocis-proxy/pull/95 +https://github.com/owncloud/ocis-pkg/pull/59 +https://github.com/owncloud/ocis-accounts/pull/95 +https://github.com/owncloud/ocis-accounts/pull/100 +https://github.com/owncloud/ocis-accounts/pull/102 diff --git a/ocis/changelog/unreleased/proxy-fix-director-selection.md b/ocis/changelog/unreleased/proxy-fix-director-selection.md index 224a628d6..a4eb4c64c 100644 --- a/ocis/changelog/unreleased/proxy-fix-director-selection.md +++ b/ocis/changelog/unreleased/proxy-fix-director-selection.md @@ -2,5 +2,5 @@ Bugfix: Fix director selection in proxy We fixed a bug in ocis-proxy where simultaneous requests could be executed on the wrong backend. - - +https://github.com/owncloud/ocis/pull/521 +https://github.com/owncloud/ocis-proxy/pull/99 diff --git a/ocis/changelog/unreleased/settings-service.md b/ocis/changelog/unreleased/settings-service.md index a16364400..41f1f9bf3 100644 --- a/ocis/changelog/unreleased/settings-service.md +++ b/ocis/changelog/unreleased/settings-service.md @@ -2,4 +2,4 @@ Change: Make ocis-settings available This version delivers `settings` as a new service. It is part of the array of services in the `server` command. - +https://github.com/owncloud/ocis/pull/287 diff --git a/ocis/changelog/unreleased/settings-update-2020-08-21.md b/ocis/changelog/unreleased/settings-update-2020-08-21.md index 6855e5c64..b0e476bab 100644 --- a/ocis/changelog/unreleased/settings-update-2020-08-21.md +++ b/ocis/changelog/unreleased/settings-update-2020-08-21.md @@ -2,4 +2,4 @@ Change: Update ocis-settings to v0.2.0 This version delivers `settings` v0.2.0 and versions of accounts (v0.3.0) and phoenix (v0.15.0) needed for it. - +https://github.com/owncloud/ocis/pull/467 diff --git a/ocis/changelog/unreleased/simplify-tracing.md b/ocis/changelog/unreleased/simplify-tracing.md index 56cb78aee..8102f2152 100644 --- a/ocis/changelog/unreleased/simplify-tracing.md +++ b/ocis/changelog/unreleased/simplify-tracing.md @@ -3,6 +3,6 @@ Enhancement: Simplify tracing config We now apply the oCIS tracing config to all services which have tracing. With this it is possible to set one tracing config for all services at the same time. - - - +https://github.com/owncloud/product/issues/92 +https://github.com/owncloud/ocis/pull/329 +https://github.com/owncloud/ocis/pull/409 diff --git a/ocis/changelog/unreleased/start-proxy-with-server.md b/ocis/changelog/unreleased/start-proxy-with-server.md index 30af2099d..5cfe49642 100644 --- a/ocis/changelog/unreleased/start-proxy-with-server.md +++ b/ocis/changelog/unreleased/start-proxy-with-server.md @@ -3,5 +3,5 @@ Change: Start ocis-proxy with the ocis server command Starts the proxy in single binary mode (./ocis server) on port 9200. The proxy serves as a single-entry point for all http-clients. - - +https://github.com/owncloud/ocis/issues/119 +https://github.com/owncloud/ocis/issues/136 diff --git a/ocis/changelog/unreleased/update-accounts-2020-08-21.md b/ocis/changelog/unreleased/update-accounts-2020-08-21.md index a55823c04..4d83e4a84 100644 --- a/ocis/changelog/unreleased/update-accounts-2020-08-21.md +++ b/ocis/changelog/unreleased/update-accounts-2020-08-21.md @@ -2,4 +2,4 @@ Change: Update ocis-accounts to v0.4.0 Provides a web UI for role assignment. - +https://github.com/owncloud/ocis/pull/479 diff --git a/ocis/changelog/unreleased/update-accounts-create-users.md b/ocis/changelog/unreleased/update-accounts-create-users.md index 41896e3ef..12a7285d2 100644 --- a/ocis/changelog/unreleased/update-accounts-create-users.md +++ b/ocis/changelog/unreleased/update-accounts-create-users.md @@ -2,6 +2,6 @@ Change: Create accounts in accounts UI We've added a form to create new users above the accounts list in the accounts UI. - - - +https://github.com/owncloud/product/issues/148 +https://github.com/owncloud/ocis-accounts/pull/115 +https://github.com/owncloud/ocis/pull/525 diff --git a/ocis/changelog/unreleased/update-accounts-delete-users.md b/ocis/changelog/unreleased/update-accounts-delete-users.md index fa5ab5a24..abd6b3ab3 100644 --- a/ocis/changelog/unreleased/update-accounts-delete-users.md +++ b/ocis/changelog/unreleased/update-accounts-delete-users.md @@ -2,6 +2,6 @@ Change: Delete accounts in accounts UI We've added an action into the actions dropdown of the accounts UI to enable admins to delete users. - - - +https://github.com/owncloud/product/issues/148 +https://github.com/owncloud/ocis-accounts/pull/115 +https://github.com/owncloud/ocis/pull/525 diff --git a/ocis/changelog/unreleased/update-accounts-design-improvements.md b/ocis/changelog/unreleased/update-accounts-design-improvements.md index 26958edad..7181342e9 100644 --- a/ocis/changelog/unreleased/update-accounts-design-improvements.md +++ b/ocis/changelog/unreleased/update-accounts-design-improvements.md @@ -2,6 +2,6 @@ Enhancement: accounts UI improvements We aligned the visual appearance of the accounts UI with default ocis-web apps (full width, style of batch actions), added icons to buttons, extracted the buttons from the batch actions dropdown into individual buttons, improved the wording added a confirmation widget for the user deletion and removed the uid and gid columns. - - - +https://github.com/owncloud/product/issues/222 +https://github.com/owncloud/ocis-accounts/pull/116 +https://github.com/owncloud/ocis/pull/549 diff --git a/ocis/changelog/unreleased/update-accounts-enable-disable-users.md b/ocis/changelog/unreleased/update-accounts-enable-disable-users.md index 9907b8cbe..8629e5277 100644 --- a/ocis/changelog/unreleased/update-accounts-enable-disable-users.md +++ b/ocis/changelog/unreleased/update-accounts-enable-disable-users.md @@ -2,6 +2,6 @@ Change: Enable/disable accounts in accounts UI We added a new feature in the ocis-accounts web extension to enable or disable accounts. This also introduces batch actions, where accounts can be selected and a batch action applied to them. The UI for this is the same as in the files extension of ocis-web. - - - +https://github.com/owncloud/product/issues/118 +https://github.com/owncloud/ocis-accounts/pull/109 +https://github.com/owncloud/ocis/pull/525 diff --git a/ocis/changelog/unreleased/update-accounts-fix-index.md b/ocis/changelog/unreleased/update-accounts-fix-index.md index aa2882037..3b112b7b5 100644 --- a/ocis/changelog/unreleased/update-accounts-fix-index.md +++ b/ocis/changelog/unreleased/update-accounts-fix-index.md @@ -4,7 +4,7 @@ The accounts service was creating a bleve index instance in the service handler, This fixes a bug that accounts created through the web ui were not able to sign in until a service restart. - - - - +https://github.com/owncloud/product/issues/224 +https://github.com/owncloud/ocis-accounts/pull/117 +https://github.com/owncloud/ocis-accounts/pull/118 +https://github.com/owncloud/ocis/pull/555 diff --git a/ocis/changelog/unreleased/update-docs-30_06_2020.md b/ocis/changelog/unreleased/update-docs-30_06_2020.md index 94de3fedd..641d6f1d5 100644 --- a/ocis/changelog/unreleased/update-docs-30_06_2020.md +++ b/ocis/changelog/unreleased/update-docs-30_06_2020.md @@ -4,4 +4,4 @@ With the default setup of running oCIS with ocis-proxy we need to set `REVA_DATA `REVA_FRONTEND_URL` environment variables. We added those to the configuration instructions in the dev docs. - +https://github.com/owncloud/ocis/pull/345 diff --git a/ocis/changelog/unreleased/update-extensions-01_04_2020.md b/ocis/changelog/unreleased/update-extensions-01_04_2020.md index 766084554..e4877c918 100644 --- a/ocis/changelog/unreleased/update-extensions-01_04_2020.md +++ b/ocis/changelog/unreleased/update-extensions-01_04_2020.md @@ -1,12 +1,11 @@ Enhancement: Update extensions We've updated various extensions to a tagged release: +- ocis-phoenix v0.4.0 (phoenix v0.7.0) +- ocis-pkg v2.2.0 +- ocis-proxy v0.3.1 +- ocis-reva v0.1.1 +- ocis-thumbnails v0.1.0 +- ocis-webdav v0.1.0 -- ocis-phoenix v0.4.0 (phoenix v0.7.0) -- ocis-pkg v2.2.0 -- ocis-proxy v0.3.1 -- ocis-reva v0.1.1 -- ocis-thumbnails v0.1.0 -- ocis-webdav v0.1.0 - - +https://github.com/owncloud/ocis/pull/180 \ No newline at end of file diff --git a/ocis/changelog/unreleased/update-extensions-02_09_2020.md b/ocis/changelog/unreleased/update-extensions-02_09_2020.md index 47c5acce3..c36c2dd0d 100644 --- a/ocis/changelog/unreleased/update-extensions-02_09_2020.md +++ b/ocis/changelog/unreleased/update-extensions-02_09_2020.md @@ -1,7 +1,7 @@ Enhancement: Update extensions 2020-09-02 -- ocis-accounts 0.4.2-0.20200828150703-2ca83cf4ac20 -- ocis-ocs 0.3.1 -- ocis-settings 0.3.2-0.20200828130413-0cc0f5bf26fe +- ocis-accounts 0.4.2-0.20200828150703-2ca83cf4ac20 +- ocis-ocs 0.3.1 +- ocis-settings 0.3.2-0.20200828130413-0cc0f5bf26fe - +https://github.com/owncloud/ocis/pull/516 diff --git a/ocis/changelog/unreleased/update-extensions-16_04_2020.md b/ocis/changelog/unreleased/update-extensions-16_04_2020.md index a39d81e1f..eb121dbeb 100644 --- a/ocis/changelog/unreleased/update-extensions-16_04_2020.md +++ b/ocis/changelog/unreleased/update-extensions-16_04_2020.md @@ -1,9 +1,8 @@ Enhancement: Update extensions We've updated various extensions: +- ocis-konnectd v0.3.1 +- ocis-phoenix v0.5.0 (phoenix v0.8.0) +- ocis-reva v0.2.0 -- ocis-konnectd v0.3.1 -- ocis-phoenix v0.5.0 (phoenix v0.8.0) -- ocis-reva v0.2.0 - - +https://github.com/owncloud/ocis/pull/209 \ No newline at end of file diff --git a/ocis/changelog/unreleased/update-extensions-18_03_2020.md.md b/ocis/changelog/unreleased/update-extensions-18_03_2020.md.md index 6a75f1f6c..9b31cb7e1 100644 --- a/ocis/changelog/unreleased/update-extensions-18_03_2020.md.md +++ b/ocis/changelog/unreleased/update-extensions-18_03_2020.md.md @@ -1,12 +1,11 @@ Enhancement: Update extensions We've updated various extensions to a tagged release: +- ocis-konnectd v0.2.0 +- ocis-glauth v0.4.0 +- ocis-phoenix v0.3.0 (phoenix v0.6.0) +- ocis-pkg v2.1.0 +- ocis-proxy v0.1.0 +- ocis-reva v0.1.0 -- ocis-konnectd v0.2.0 -- ocis-glauth v0.4.0 -- ocis-phoenix v0.3.0 (phoenix v0.6.0) -- ocis-pkg v2.1.0 -- ocis-proxy v0.1.0 -- ocis-reva v0.1.0 - - +https://github.com/owncloud/ocis/pull/151 diff --git a/ocis/changelog/unreleased/update-extensions-2020-07-10.md b/ocis/changelog/unreleased/update-extensions-2020-07-10.md index a75230c11..4418dfa0f 100644 --- a/ocis/changelog/unreleased/update-extensions-2020-07-10.md +++ b/ocis/changelog/unreleased/update-extensions-2020-07-10.md @@ -1,6 +1,6 @@ Enhancement: Update extensions 2020-07-10 -- ocis-reva 0.10.0 -- ocis-phoenix 0.9.0 +- ocis-reva 0.10.0 +- ocis-phoenix 0.9.0 - +https://github.com/owncloud/ocis/pull/376 diff --git a/ocis/changelog/unreleased/update-extensions-25_05_2020.md b/ocis/changelog/unreleased/update-extensions-25_05_2020.md index 79cdcfcd1..6501e54e4 100644 --- a/ocis/changelog/unreleased/update-extensions-25_05_2020.md +++ b/ocis/changelog/unreleased/update-extensions-25_05_2020.md @@ -1,8 +1,7 @@ Enhancement: Update extensions We've updated various extensions: +- ocis-thumbnails v0.1.2 (tag) +- ocis-reva v0.3.0 (tag) -- ocis-thumbnails v0.1.2 (tag) -- ocis-reva v0.3.0 (tag) - - +https://github.com/owncloud/ocis/pull/290 diff --git a/ocis/changelog/unreleased/update-extensions-26_05_2020.md b/ocis/changelog/unreleased/update-extensions-26_05_2020.md index 1b5a4c1a0..3624f403d 100644 --- a/ocis/changelog/unreleased/update-extensions-26_05_2020.md +++ b/ocis/changelog/unreleased/update-extensions-26_05_2020.md @@ -3,4 +3,4 @@ Enhancement: Update ocis-reva to 0.4.0 Brings in fixes for trashbin and TUS upload. Also adds partial implementation of public shares. - +https://github.com/owncloud/ocis/pull/295 diff --git a/ocis/changelog/unreleased/update-extensions-28_04_2020.md b/ocis/changelog/unreleased/update-extensions-28_04_2020.md index d90d2dfe2..598da0328 100644 --- a/ocis/changelog/unreleased/update-extensions-28_04_2020.md +++ b/ocis/changelog/unreleased/update-extensions-28_04_2020.md @@ -1,11 +1,10 @@ Enhancement: Update extensions We've updated various extensions: +- ocis-konnectd v0.3.1 +- ocis-phoenix v0.6.0 +- ocis-reva v0.2.1 +- ocis-pkg v2.2.1 +- ocis-thumbnails v0.1.2 -- ocis-konnectd v0.3.1 -- ocis-phoenix v0.6.0 -- ocis-reva v0.2.1 -- ocis-pkg v2.2.1 -- ocis-thumbnails v0.1.2 - - +https://github.com/owncloud/ocis/pull/209 diff --git a/ocis/changelog/unreleased/update-extensions-29_06_2020.md b/ocis/changelog/unreleased/update-extensions-29_06_2020.md index 16e708c53..c7199d1a9 100644 --- a/ocis/changelog/unreleased/update-extensions-29_06_2020.md +++ b/ocis/changelog/unreleased/update-extensions-29_06_2020.md @@ -1,8 +1,8 @@ Enhancement: Update extensions 2020-06-29 -- ocis-proxy 0.4.0 -- ocis-migration 0.2.0 -- ocis-reva 0.8.0 -- ocis-phoenix 0.8.1 +- ocis-proxy 0.4.0 +- ocis-migration 0.2.0 +- ocis-reva 0.8.0 +- ocis-phoenix 0.8.1 - +https://github.com/owncloud/ocis/pull/334 diff --git a/ocis/changelog/unreleased/update-extensions-reva-and-proxy.md b/ocis/changelog/unreleased/update-extensions-reva-and-proxy.md index b137d86f3..e55ab041e 100644 --- a/ocis/changelog/unreleased/update-extensions-reva-and-proxy.md +++ b/ocis/changelog/unreleased/update-extensions-reva-and-proxy.md @@ -1,6 +1,6 @@ Enhancement: Update proxy and reva -- ocis-reva contains a lot of sharing, eos and trash fixes -- ocis-proxy contains fixes to use ocis on top of eos +- ocis-reva contains a lot of sharing, eos and trash fixes +- ocis-proxy contains fixes to use ocis on top of eos - +https://github.com/owncloud/ocis/pull/466 \ No newline at end of file diff --git a/ocis/changelog/unreleased/update-glauth-fixing-search.md b/ocis/changelog/unreleased/update-glauth-fixing-search.md index bc8641383..d7741b9d0 100644 --- a/ocis/changelog/unreleased/update-glauth-fixing-search.md +++ b/ocis/changelog/unreleased/update-glauth-fixing-search.md @@ -2,6 +2,6 @@ Bugfix: Update ocis-glauth for fixed single user search We updated ocis-glauth to a version that comes with a fix for searching a single user or group. ocis-glauth was dropping search context before by ignoring the searchBaseDN for filtering. This has been fixed. - - - +https://github.com/owncloud/product/issues/214 +https://github.com/owncloud/ocis/pull/535 +https://github.com/owncloud/ocis-glauth/pull/32 diff --git a/ocis/changelog/unreleased/update-ocis-ocs.md b/ocis/changelog/unreleased/update-ocis-ocs.md index 63ab2ebc6..364c299ce 100644 --- a/ocis/changelog/unreleased/update-ocis-ocs.md +++ b/ocis/changelog/unreleased/update-ocis-ocs.md @@ -2,4 +2,4 @@ Change: Update ocis-ocs to v0.3.0 This change updates ocis-ocs to version 0.3.0 - +https://github.com/owncloud/ocis/pull/500 diff --git a/ocis/changelog/unreleased/update-ocis-phoenix.md b/ocis/changelog/unreleased/update-ocis-phoenix.md index a90788efe..f8cdc0b33 100644 --- a/ocis/changelog/unreleased/update-ocis-phoenix.md +++ b/ocis/changelog/unreleased/update-ocis-phoenix.md @@ -2,4 +2,4 @@ Change: Update ocis-phoenix to v0.13.0 This version delivers ocis-phoenix v0.13.0. - +https://github.com/owncloud/ocis/pull/487 diff --git a/ocis/changelog/unreleased/update-ocis-proxy.md b/ocis/changelog/unreleased/update-ocis-proxy.md index f0b2c3c1e..7cdee7b0d 100644 --- a/ocis/changelog/unreleased/update-ocis-proxy.md +++ b/ocis/changelog/unreleased/update-ocis-proxy.md @@ -2,4 +2,4 @@ Change: Update ocis-proxy to v0.7.0 This version delivers ocis-proxy v0.7.0. - +https://github.com/owncloud/ocis/pull/476 diff --git a/ocis/changelog/unreleased/update-ocis-reva-2020-08-27.md b/ocis/changelog/unreleased/update-ocis-reva-2020-08-27.md index 927fbb7d3..76067321f 100644 --- a/ocis/changelog/unreleased/update-ocis-reva-2020-08-27.md +++ b/ocis/changelog/unreleased/update-ocis-reva-2020-08-27.md @@ -2,4 +2,4 @@ Change: Update ocis-reva to 0.13.0 This version delivers ocis-reva v0.13.0 - +https://github.com/owncloud/ocis/pull/496 diff --git a/ocis/changelog/unreleased/update-phoenix-ext-app-urls.md b/ocis/changelog/unreleased/update-phoenix-ext-app-urls.md index 9f717a6b2..bba138f7a 100644 --- a/ocis/changelog/unreleased/update-phoenix-ext-app-urls.md +++ b/ocis/changelog/unreleased/update-phoenix-ext-app-urls.md @@ -2,6 +2,6 @@ Bugfix: Fix builtin config for external apps We fixed a bug in the builtin config of ocis-phoenix, having hardcoded urls instead of just the path of external apps. - - - +https://github.com/owncloud/product/issues/218 +https://github.com/owncloud/ocis-phoenix/pull/83 +https://github.com/owncloud/ocis/pull/544 diff --git a/ocis/changelog/unreleased/update-proxy-disable-cache.md b/ocis/changelog/unreleased/update-proxy-disable-cache.md index ce17c2b39..ea1532e70 100644 --- a/ocis/changelog/unreleased/update-proxy-disable-cache.md +++ b/ocis/changelog/unreleased/update-proxy-disable-cache.md @@ -2,6 +2,6 @@ Change: Update proxy with disabled accounts cache We removed the accounts cache in ocis-proxy in order to avoid problems with accounts that have been updated in ocis-accounts. - - - +https://github.com/owncloud/ocis/pull/525 +https://github.com/owncloud/ocis-proxy/pull/100 +https://github.com/owncloud/ocis-accounts/pull/114 diff --git a/ocis/changelog/unreleased/update-proxy.md b/ocis/changelog/unreleased/update-proxy.md index 1da7cdfde..8bcfda755 100644 --- a/ocis/changelog/unreleased/update-proxy.md +++ b/ocis/changelog/unreleased/update-proxy.md @@ -1,3 +1,3 @@ Enhancement: Update proxy to v0.2.0 - +https://github.com/owncloud/ocis/pull/167 diff --git a/ocis/changelog/unreleased/update-reva-10_09_2020.md b/ocis/changelog/unreleased/update-reva-10_09_2020.md index 64bdeb338..f572599fd 100644 --- a/ocis/changelog/unreleased/update-reva-10_09_2020.md +++ b/ocis/changelog/unreleased/update-reva-10_09_2020.md @@ -1,8 +1,9 @@ Enhancement: Update ocis-reva 2020-09-10 -- ocis-reva v0.13.1-0.20200910085648-26465bbdcf46 -- fixes file operations for received shares by changing OC storage default config -- adds ability to overwrite storage registry rules +- ocis-reva v0.13.1-0.20200910085648-26465bbdcf46 +- fixes file operations for received shares by changing OC storage default config +- adds ability to overwrite storage registry rules + +https://github.com/owncloud/ocis/pull/334 +https://github.com/owncloud/ocis/ocis-reva/pull/461 - - diff --git a/ocis/changelog/unreleased/update-reva-12_09_2020.md b/ocis/changelog/unreleased/update-reva-12_09_2020.md index 75bb92e9f..7311627ca 100644 --- a/ocis/changelog/unreleased/update-reva-12_09_2020.md +++ b/ocis/changelog/unreleased/update-reva-12_09_2020.md @@ -1,11 +1,11 @@ Change: Update ocis-reva to v0.14.0 -- Update ocis-reva to v0.14.0 -- Fix default configuration for accessing shares (ocis-reva/#461) -- Allow configuring arbitrary storage registry rules (ocis-reva/#461) -- Update reva to v1.2.1-0.20200911111727-51649e37df2d (reva/#454, reva/#466) +- Update ocis-reva to v0.14.0 +- Fix default configuration for accessing shares (ocis-reva/#461) +- Allow configuring arbitrary storage registry rules (ocis-reva/#461) +- Update reva to v1.2.1-0.20200911111727-51649e37df2d (reva/#454, reva/#466) - - - - +https://github.com/owncloud/ocis/pull/556 +https://github.com/owncloud/ocis/ocis-reva/pull/461 +https://github.com/owncloud/ocis/ocis-reva/pull/454 +https://github.com/owncloud/ocis/ocis-reva/pull/466 diff --git a/ocis/changelog/unreleased/update-settings-26_08_2020.md b/ocis/changelog/unreleased/update-settings-26_08_2020.md index 8c088716c..a74180301 100644 --- a/ocis/changelog/unreleased/update-settings-26_08_2020.md +++ b/ocis/changelog/unreleased/update-settings-26_08_2020.md @@ -2,4 +2,4 @@ Change: Update ocis-settings to v0.3.0 This version delivers ocis-settings v0.3.0. - +https://github.com/owncloud/ocis/pull/490 diff --git a/ocis/changelog/unreleased/use-alpine-latest.md b/ocis/changelog/unreleased/use-alpine-latest.md index fca1f8286..c207b68d5 100644 --- a/ocis/changelog/unreleased/use-alpine-latest.md +++ b/ocis/changelog/unreleased/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/pull/416 diff --git a/ocis/docs/_index.md b/ocis/docs/_index.md index 5da02067b..bafdc6e27 100644 --- a/ocis/docs/_index.md +++ b/ocis/docs/_index.md @@ -1,16 +1,15 @@ -* * * - +--- title: "Infinite Scale" date: 2020-02-27T20:35:00+01:00 weight: -10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This tool provides a single entrypoint for the whole ownCloud Infinite Scale stack. -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} graph TD ocis-proxy --> ocis-konnectd & ocis-phoenix & ocis-thumbnails & ocis-ocs & ocis-webdav @@ -19,12 +18,13 @@ ocis-phoenix --> ocis-reva-fronted ocis-reva-fronted --> ocis-reva-gateway ocis-konnectd --> ocis-glauth + ocis-reva-gateway --> ocis-reva-users ocis-reva-gateway --> ocis-reva-authbasic ocis-reva-gateway --> ocis-reva-auth-bearer ocis-reva-gateway --> ocis-reva-sharing -ocis-reva-gateway --> ocis-reva-storage-home-_ -ocis-reva-storage-home-_ --> ocis-reva-storage-home-\*-data +ocis-reva-gateway --> ocis-reva-storage-home-* +ocis-reva-storage-home-* --> ocis-reva-storage-home-*-data ocis-reva-sharing --> redis -{{< /mermaid >}} +{{< /mermaid >}} diff --git a/ocis/docs/basic-remote-setup.md b/ocis/docs/basic-remote-setup.md index e52b54345..c59e1bd89 100644 --- a/ocis/docs/basic-remote-setup.md +++ b/ocis/docs/basic-remote-setup.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Basic Remote Setup" date: 2020-02-27T20:35:00+01:00 weight: 16 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: basic-remote-setup.md +--- -## geekdocFilePath: basic-remote-setup.md - -{{< toc >}} +{{< toc >}} Out of the box the ocis single binary and the `owncloud/ocis` docker image are configured to run on localhost for quick testing and development. @@ -18,16 +17,16 @@ If you need to access ocis on a VM or a remote machine e.g. when testing a mobil If you start the ocis fullstack for the first time with `./bin/ocis server` it will generate a file `identifier-registration.yml` in the config folder relative to its location. This file is used to configure the clients for the built-in Identity Provider. -{{< hint warning >}} -**Outdated version**\\ +{{< hint warning >}} +**Outdated version**\ The `identifier-registration.yml` file will only be generated if there is no such file in place. You could miss updates on this file. Run `make clean` to delete the file and keep the development environment tidy otherwise as well. -{{< /hint >}} +{{< /hint >}} ### Add your hostname to the idp config Let us assume `your-host` is your remote domain name or IP adress. Add your host to the `identifier-registration.yml` like this: -```yaml {linenos=table,hl_lines=\["15-17",21]} +```yaml {linenos=table,hl_lines=["15-17",21]} # OpenID Connect client registry. clients: - id: phoenix @@ -74,10 +73,10 @@ KONNECTD_TLS=0 \ For more configuration options check the configuration secion in [ocis](https://owncloud.github.io/ocis/configuration/) and every ocis extension. -{{< hint info >}} -**TLS Certificate**\\ +{{< hint info >}} +**TLS Certificate**\ In this example, we are replacing the default self signed cert with a CA signed one to avoid the certificate warning when accessing the login page. -{{< /hint >}} +{{< /hint >}} ## Use Docker Compose diff --git a/ocis/docs/bridge.md b/ocis/docs/bridge.md index bb404e3cc..d8e63dc7f 100644 --- a/ocis/docs/bridge.md +++ b/ocis/docs/bridge.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Bridge" date: 2020-02-27T20:35:00+01:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: bridge.md +--- -## geekdocFilePath: bridge.md - -{{< toc >}} +{{< toc >}} We are planning to build a bridge from ownCloud 10 to ocis. The idea is to have a reverse proxy infront of ownCloud 10 that will forward requests to ownCloud 10 or ocis-reva, depending on the migration status of the logged in user. @@ -23,17 +22,19 @@ Using ocis and the ownCloud 10 openidconnect and graphapi plugins it is possible ### Install the owncloud 10 graphapi app In an owncloud 10 apps folder - - $ git clone git@github.com:owncloud/graphapi.git - $ cd graphapi - $ composer install +``` +$ git clone git@github.com:owncloud/graphapi.git +$ cd graphapi +$ composer install +``` ### Enable the graphapi app - occ a:e graphapi +``` +occ a:e graphapi +``` No configuration necessary. You can test with `curl`: - ```console $ curl https://cloud.example.com/index.php/apps/graphapi/v1.0/users -u admin | jq Enter host password for user 'admin': @@ -68,17 +69,17 @@ We are going to use the above ownCloud 10 and graphapi app to turn it into the d #### Grab it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-glauth.git - $ cd ocis-glauth - $ make - +``` +$ git clone git@github.com:owncloud/ocis-glauth.git +$ cd ocis-glauth +$ make +``` This should give you a `bin/ocis-glauth` binary. Try listing the help with `bin/ocis-glauth --help`. + #### Run it! You need to point `ocis-glauth` to your owncloud domain: - ```console $ bin/ocis-glauth --log-level debug server --backend-datastore owncloud --backend-server https://cloud.example.com --backend-basedn dc=example,dc=com ``` @@ -91,13 +92,11 @@ $ bin/ocis-glauth --log-level debug server --backend-datastore owncloud --backen #### Check it is up and running You should now be able to list accounts from your ownCloud 10 oc_accounts table using: - ```console $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=example,dc=com" -W '(objectclass=posixaccount)' ``` Groups should work as well: - ```console $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=example,dc=com" -W '(objectclass=posixgroup)' ``` @@ -109,44 +108,41 @@ $ ldapsearch -x -H ldap://localhost:9125 -b dc=example,dc=com -D "cn=admin,dc=ex #### Get it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-phoenix.git - $ cd ocis-phoenix - $ make - +``` +$ git clone git@github.com:owncloud/ocis-phoenix.git +$ cd ocis-phoenix +$ make +``` This should give you a `bin/ocis-phoenix` binary. Try listing the help with `bin/ocis-phoenix --help`. #### Run it! Point `ocis-phoenix` to your owncloud domain and tell it where to find the openid connect issuing authority: - ```console $ bin/ocis-phoenix server --web-config-server https://cloud.example.com --oidc-authority https://192.168.1.100:9130 --oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration --oidc-client-id ocis ``` `ocis-phoenix` needs to know - -- `--web-config-server https://cloud.example.com` is ownCloud url with webdav and ocs endpoints (oc10 or ocis) -- `--oidc-authority https://192.168.1.100:9130` the openid connect issuing authority, in our case `oidc-konnectd`, running on port 9130 -- `--oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration` the openid connect configuration endpoint, typically the issuer host with `.well-known/openid-configuration`, but there are cases when another endpoint is used, eg. ping identity provides multiple endpoints to separate domains -- `--oidc-client-id ocis` the client id we will register later with `ocis-konnectd` in the `identifier-registration.yaml` +- `--web-config-server https://cloud.example.com` is ownCloud url with webdav and ocs endpoints (oc10 or ocis) +- `--oidc-authority https://192.168.1.100:9130` the openid connect issuing authority, in our case `oidc-konnectd`, running on port 9130 +- `--oidc-metadata-url https://192.168.1.100:9130/.well-known/openid-configuration` the openid connect configuration endpoint, typically the issuer host with `.well-known/openid-configuration`, but there are cases when another endpoint is used, eg. ping identity provides multiple endpoints to separate domains +- `--oidc-client-id ocis` the client id we will register later with `ocis-konnectd` in the `identifier-registration.yaml` ### Start ocis-konnectd #### Get it! In an `ocis` folder - - $ git clone git@github.com:owncloud/ocis-konnectd.git - $ cd ocis-konnectd - $ make - +``` +$ git clone git@github.com:owncloud/ocis-konnectd.git +$ cd ocis-konnectd +$ make +``` This should give you a `bin/ocis-konnectd` binary. Try listing the help with `bin/ocis-konnectd --help`. #### Set environment variables Konnectd needs environment variables to configure the LDAP server: - ```console export LDAP_URI=ldap://192.168.1.100:9125 export LDAP_BINDDN="cn=admin,dc=example,dc=com" @@ -160,13 +156,11 @@ export LDAP_UUID_ATTRIBUTE=uid export LDAP_UUID_ATTRIBUTE_TYPE=text export LDAP_FILTER="(objectClass=posixaccount)" ``` - Don't forget to use an existing user and the correct password. ### Configure clients Now we need to configure a client we can later use to configure the ownCloud 10 openidconnect app. In the `assets/identifier-registration.yaml` have: - ```yaml --- @@ -182,7 +176,6 @@ clients: - http://localhost:9100 - http://localhost:9100/ ``` - You will need the `insecure: yes` if you are using self signed certificates. Replace `cloud.example.com` in the redirect URI with your ownCloud 10 host and port. @@ -191,44 +184,43 @@ Replace `localhost:9100` in the redirect URIs with your the `ocis-phoenix` host #### Run it! You can now bring up `ocis-connectd` with: - ```console $ bin/ocis-konnectd server --iss https://192.168.1.100:9130 --identifier-registration-conf assets/identifier-registration.yaml --signing-kid gen1-2020-02-27 ``` `ocis-konnectd` needs to know +- `--iss https://192.168.1.100:9130` the issuer, which must be a reachable https endpoint. For testing an ip works. HTTPS is NOT optional. This url is exposed in the `https://192.168.1.100:9130/.well-known/openid-configuration` endpoint and clients need to be able to connect to it +- `--identifier-registration-conf assets/identifier-registration.yaml` the identifier-registration.yaml you created +- `--signing-kid gen1-2020-02-27` a signature key id, otherwise the jwks key has no name, which might cause problems with clients. a random key is ok, but it should change when the actual signing key changes. -- `--iss https://192.168.1.100:9130` the issuer, which must be a reachable https endpoint. For testing an ip works. HTTPS is NOT optional. This url is exposed in the `https://192.168.1.100:9130/.well-known/openid-configuration` endpoint and clients need to be able to connect to it -- `--identifier-registration-conf assets/identifier-registration.yaml` the identifier-registration.yaml you created -- `--signing-kid gen1-2020-02-27` a signature key id, otherwise the jwks key has no name, which might cause problems with clients. a random key is ok, but it should change when the actual signing key changes. #### Check it is up and running -1. Try getting the configuration: - +1. Try getting the configuration: ```console $ curl https://192.168.1.100:9130/.well-known/openid-configuration ``` -2. Check if the login works at +2. Check if the login works at https://192.168.1.100:9130/signin/v1/identifier -> Note: If you later get a `Unable to find a key for (algorithm, kid):PS256, )` Error make sure you did set a `--signing-kid` when starting `ocis-konnectd` by checking it is present in +> Note: If you later get a `Unable to find a key for (algorithm, kid):PS256, )` Error make sure you did set a `--signing-kid` when starting `ocis-konnectd` by checking it is present in https://192.168.1.100:9130/konnect/v1/jwks.json ### Patch owncloud While the UserSession in ownCloud 10 is currently used to test all available IAuthModule implementations, it immediately logs out the user when an exception occurs. However, existing owncloud 10 instances use the oauth2 app to create Bearer tokens for mobile and desktop clients. -To give the openidconnect app a chance to verify the tokens we need to change the code a bit. See for a possible solution. +To give the openidconnect app a chance to verify the tokens we need to change the code a bit. See https://github.com/owncloud/core/pull/37043 for a possible solution. -> Note: The PR is hot ... as in _younger than this list of steps_. And it messes with authentication. Use with caution. +> Note: The PR is hot ... as in *younger than this list of steps*. And it messes with authentication. Use with caution. ### Install the owncloud 10 openidconnect app In an owncloud 10 apps folder - - $ git clone git@github.com:owncloud/openidconnect.git - $ cd openidconnect - $ composer install +``` +$ git clone git@github.com:owncloud/openidconnect.git +$ cd openidconnect +$ composer install +``` After enabling the app configure it in `config/oidc.config.php` @@ -249,16 +241,14 @@ $CONFIG = [ ``` In the above configuration replace - -- `provider-url` with the URL to your `ocis-konnectd` issuer -- `https://cloud.example.com` with the URL to your ownCloud 10 instance -- `http://localhost:9100` with the URL to your phoenix instance +- `provider-url` with the URL to your `ocis-konnectd` issuer +- `https://cloud.example.com` with the URL to your ownCloud 10 instance +- `http://localhost:9100` with the URL to your phoenix instance > Note: By default the openidconnect app will use the email of the user to match the user from the oidc userinfo endpoint with the ownCloud account. So make sure your users have a unique primary email. ## Next steps Aside from the above todos these are the next stepo - -- tie it all together behind `ocis-proxy` -- create an `ocis bridge` command that runs all the ocis services in one step with a properly preconfigured `ocis-konnectd` `identifier-registration.yaml` file for `phoenix` and the owncloud 10 `openidconnect` app, as well as a randomized `--signing-kid`. +- tie it all together behind `ocis-proxy` +- create an `ocis bridge` command that runs all the ocis services in one step with a properly preconfigured `ocis-konnectd` `identifier-registration.yaml` file for `phoenix` and the owncloud 10 `openidconnect` app, as well as a randomized `--signing-kid`. diff --git a/ocis/docs/building-docs.md b/ocis/docs/building-docs.md index 3eed3d888..5167657b1 100644 --- a/ocis/docs/building-docs.md +++ b/ocis/docs/building-docs.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Building the documentation" date: 2020-07-27T08:39:38+00:00 weight: 99 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: building-docs.md +--- -## geekdocFilePath: building-docs.md - -{{< toc >}} +{{< toc >}} ## Buildling the documentation @@ -16,22 +15,22 @@ Following steps can be applied for every oCIS extension repository. ### Setting up -- Install [hugo](https://gohugo.io/getting-started/installing/) -- Run `make docs` +- Install [hugo](https://gohugo.io/getting-started/installing/) +- Run `make docs` ### Viewing the documentation To view the rendered docs in the browser run: - ```bash cd hugo hugo -D server ``` -Then open "http://localhost:1313/" +Then open "http://localhost:1313/" When making changes to the docs, run `make docs` again and the server will pick up the changes and reload the page automatically ### Deploying the documentation -The documentation is automatically deployed from the master branch to +The documentation is automatically deployed from the master branch to https://owncloud.github.io/phoenix/ + diff --git a/ocis/docs/building.md b/ocis/docs/building.md index 5924831b0..29e67ac29 100644 --- a/ocis/docs/building.md +++ b/ocis/docs/building.md @@ -1,36 +1,36 @@ -* * * - +--- title: "Building" date: 2020-02-27T20:35:00+01:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: building.md +geekdocFilePath: building.md +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis.git cd ocis -{{< / highlight >}} +{{< / highlight >}} All required tools besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. To build the `ocis` binary run: -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally, you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis -h` to see all available options. + ## Simple Ocis fo extonsions example Currently, we are using a go build tag to allow building a more simple set of the binary. It was intended to let extension developers focus on only the necessary services. -{{< hint info >}} +{{< hint info >}} While it the tag based simple build demonstrates how to use ocis as a framework for a micro service architecture, we may change to an approach that uses an explicit command to run only a subset of the services. -{{< / hint >}} +{{< / hint >}} ```console TAGS=simple make build @@ -40,8 +40,10 @@ The artifact lives in `/bin/ocis` The generated simple ocis binary is a subset of the ocis command with a restricted set of services meant for ease up development. The services included are - ocis-hello - ocis-phoenix - ocis-konnectd - ocis-glauth - micro's own services +``` +ocis-hello +ocis-phoenix +ocis-konnectd +ocis-glauth +micro's own services +``` diff --git a/ocis/docs/configuration.md b/ocis/docs/configuration.md index 7dbbc113f..807f92149 100644 --- a/ocis/docs/configuration.md +++ b/ocis/docs/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:56+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ ownCloud Infinite Scale Stack Usage: `ocis [global options] command [command options] [arguments...]` -\--config-file | $OCIS_CONFIG_FILE +--config-file | $OCIS_CONFIG_FILE : Path to config file. -\--log-level | $OCIS_LOG_LEVEL +--log-level | $OCIS_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $OCIS_LOG_PRETTY +--log-pretty | $OCIS_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $OCIS_LOG_COLOR +--log-color | $OCIS_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis health [command options] [arguments...]` -\--debug-addr | $OCIS_DEBUG_ADDR +--debug-addr | $OCIS_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9010`. ### ocis server @@ -73,40 +72,40 @@ Start fullstack server Usage: `ocis server [command options] [arguments...]` -\--tracing-enabled | $OCIS_TRACING_ENABLED +--tracing-enabled | $OCIS_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $OCIS_TRACING_TYPE +--tracing-type | $OCIS_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $OCIS_TRACING_ENDPOINT +--tracing-endpoint | $OCIS_TRACING_ENDPOINT : Endpoint for the agent. Default: `localhost:6831`. -\--tracing-collector | $OCIS_TRACING_COLLECTOR +--tracing-collector | $OCIS_TRACING_COLLECTOR : Endpoint for the collector. Default: `http://localhost:14268/api/traces`. -\--tracing-service | $OCIS_TRACING_SERVICE +--tracing-service | $OCIS_TRACING_SERVICE : Service name for tracing. Default: `ocis`. -\--debug-addr | $OCIS_DEBUG_ADDR +--debug-addr | $OCIS_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9010`. -\--debug-token | $OCIS_DEBUG_TOKEN +--debug-token | $OCIS_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $OCIS_DEBUG_PPROF +--debug-pprof | $OCIS_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $OCIS_DEBUG_ZPAGES +--debug-zpages | $OCIS_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $OCIS_HTTP_ADDR +--http-addr | $OCIS_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9000`. -\--http-root | $OCIS_HTTP_ROOT +--http-root | $OCIS_HTTP_ROOT : Root path of http server. Default: `/`. -\--grpc-addr | $OCIS_GRPC_ADDR +--grpc-addr | $OCIS_GRPC_ADDR : Address to bind grpc server. Default: `0.0.0.0:9001`. ### List of available Extension subcommands @@ -220,3 +219,4 @@ Start thumbnails server #### ocis webdav Start webdav server + diff --git a/ocis/docs/debugging.md b/ocis/docs/debugging.md index 717ece24e..4e443aa27 100644 --- a/ocis/docs/debugging.md +++ b/ocis/docs/debugging.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Debugging" date: 2020-03-19T08:21:00+01:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: debugging.md +geekdocFilePath: debugging.md +--- ## Debugging @@ -14,7 +13,7 @@ As a single binary for easy deployment running `ocis server` just forks itself t Ultimately, we want to be able to stop a single service using eg. `ocis kill phoenix` so that you can start the service you want to debug in debug mode. We need to [change the way we fork processes](https://github.com/owncloud/ocis/issues/77) though, otherwise the runtime will automatically restart a service if killed. -### Start ocis +### Start ocis For debugging there are two workflows that work well, depending on your preferences. @@ -68,8 +67,7 @@ Then you can set a breakpoint in the service you need and attach to the process #### Start all services independently to replace one of them with a debug process -1. You can use this `./ocis.sh` script to start all services independently, so they don't get restrarted by the runtime when you kill them: - +1. You can use this `./ocis.sh` script to start all services independently, so they don't get restrarted by the runtime when you kill them: ```bash #/bin/sh LOG_LEVEL="debug" @@ -99,7 +97,7 @@ bin/ocis --log-level=$LOG_LEVEL reva-users & bin/ocis --log-level=$LOG_LEVEL proxy & ``` -2. Get the list of running processes: +2. Get the list of running processes: ```console # ps ax | grep ocis @@ -128,13 +126,14 @@ bin/ocis --log-level=$LOG_LEVEL proxy & 13015 pts/1 Sl 0:00 bin/ocis-debug reva-auth-basic ``` -3. Kill the service you want to start in debug mode: +3. Kill the service you want to start in debug mode: + ```console # kill 17628 ``` -4. Start the service you are interested in in debug mode. When using make to build the binary there is already a `bin/ocis-debug` binary for you. When running an IDE tell it which service to start by providing the corresponding sub command, eg. `bin\ocis-debug reva-frontend`. +4. Start the service you are interested in in debug mode. When using make to build the binary there is already a `bin/ocis-debug` binary for you. When running an IDE tell it which service to start by providing the corresponding sub command, eg. `bin\ocis-debug reva-frontend`. ### Gather error messages @@ -158,22 +157,24 @@ This popped up when I tried to add `marie` as a collaborator in phoenix. That tr ``` -{{< hint info >}} +{{< hint info >}} The username and password only work when basic auth is available. Otherwise you have to obtain a bearer token, eg. by grabbing it from the browser. -{{< /hint >}} -{{< hint danger >}} +{{< /hint >}} +{{< hint danger >}} TODO add ocis cli tool to obtain a bearer token. -{{< /hint >}} +{{< /hint >}} We also have a few interesting log entries: - 0:43PM INF home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=OK end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:44078 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=95841 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.storage.registry.v1beta1.RegistryAPI/GetStorageProvider user-agent=grpc-go/1.26.0 - 10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=Unknown end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:43910 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=586115 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.gateway.v1beta1.GatewayAPI/Stat user-agent=grpc-go/1.26.0 - 10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94 > error sending a grpc stat request error="rpc error: code = Unknown desc = gateway: error calling Stat: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing dial tcp [::1]:9152: connect: connection refused\"" pid=17832 pkg=rhttp traceid=b4eb9a9f45921f7d3632523ca32a42b0 +``` +0:43PM INF home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=OK end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:44078 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=95841 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.storage.registry.v1beta1.RegistryAPI/GetStorageProvider user-agent=grpc-go/1.26.0 +10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/grpc/interceptors/log/log.go:69 > unary code=Unknown end="18/Mar/2020:22:43:40 +0100" from=tcp://[::1]:43910 pid=17836 pkg=rgrpc start="18/Mar/2020:22:43:40 +0100" time_ns=586115 traceid=b4eb9a9f45921f7d3632523ca32a42b0 uri=/cs3.gateway.v1beta1.GatewayAPI/Stat user-agent=grpc-go/1.26.0 +10:43PM ERR home/jfd/go/pkg/mod/github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94 > error sending a grpc stat request error="rpc error: code = Unknown desc = gateway: error calling Stat: rpc error: code = Unavailable desc = connection error: desc = \"transport: Error while dialing dial tcp [::1]:9152: connect: connection refused\"" pid=17832 pkg=rhttp traceid=b4eb9a9f45921f7d3632523ca32a42b0 +``` -{{< hint danger >}} -TODO return the trace id in the response so we can correlate easier. For reva tracked in -{{< /hint >}} +{{< hint danger >}} +TODO return the trace id in the response so we can correlate easier. For reva tracked in https://github.com/cs3org/reva/issues/587 +{{< /hint >}} The last line gives us a hint where the log message originated: `.../github.com/cs3org/reva@v0.0.2-0.20200318111623-a2f97d4aa741/internal/http/services/owncloud/ocs/reqres.go:94`. Which looks like this: @@ -202,14 +203,15 @@ Debug wherever the call trace leads you to ... good luck! You can either run and manage the services independently, or you can update the `go.mod` file and replace dependencies with your local version. To debug the reva frontend we need to add two replacements: - - // use the local ocis-reva repo - replace github.com/owncloud/ocis-reva => ../ocis-reva - // also use the local reva repo - replace github.com/cs3org/reva => ../reva - -{{< hint info >}} +``` +// use the local ocis-reva repo +replace github.com/owncloud/ocis-reva => ../ocis-reva +// also use the local reva repo +replace github.com/cs3org/reva => ../reva +``` +{{< hint info >}} The username and password only work when basic auth is available. Otherwise you have to obtain a bearer token, eg. by grabbing it from the browser. -{{< /hint >}} +{{< /hint >}} Rebuild ocis to make sure the dependency is used. It should be sufficient to just restart the service you want to debug. + diff --git a/ocis/docs/development.md b/ocis/docs/development.md index f157b1feb..bffe88052 100644 --- a/ocis/docs/development.md +++ b/ocis/docs/development.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started with Development" date: 2020-07-07T20:35:00+01:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: development.md +--- -## geekdocFilePath: development.md - -{{< toc >}} +{{< toc >}} ## Docker dev environment @@ -16,59 +15,66 @@ geekdocEditPath: edit/master/docs To build and run your local ocis code with default storage driver - docker run --rm -ti --name ocis -v $PWD:/ocis -p 9200:9200 owncloud/eos-ocis-dev +``` +docker run --rm -ti --name ocis -v $PWD:/ocis -p 9200:9200 owncloud/eos-ocis-dev +``` The eos-ocis-dev container will build and run ocis using the owncloud storage driver and store files in the container at `/var/tmp/reva/data//files` To check the uploaded files start digging with: `docker exec -it ocis ls -l /var/tmp/reva/` -{{< hint info >}} +{{< hint info >}} On MacOS do not mount a local folder to the `/var/tmp/reva/` path. The fuse driver used by docker [does not support extended attributes](https://docs.docker.com/v18.09/docker-for-mac/osxfs/). See [#182](https://github.com/owncloud/ocis/issues/182) for more details. -{{< /hint >}} +{{< /hint >}} + ### Option 2: Docker compose With the `docker-compose.yml` file in ocis repo you can also start ocis via compose: - docker-compose up -d ocis +``` +docker-compose up -d ocis +``` -{{< hint info >}} +{{< hint info >}} We are only starting the `ocis` container here. -{{< /hint >}} +{{< /hint >}} ## Verification Check the services are running - $ docker-compose exec ocis ./bin/ocis list - +--------------------------+-----+ - | EXTENSION | PID | - +--------------------------+-----+ - | accounts | 172 | - | api | 204 | - | glauth | 187 | - | graph | 41 | - | graph-explorer | 55 | - | konnectd | 196 | - | ocs | 59 | - | phoenix | 29 | - | proxy | 22 | - | registry | 226 | - | reva-auth-basic | 96 | - | reva-auth-bearer | 104 | - | reva-frontend | 485 | - | reva-gateway | 78 | - | reva-sharing | 286 | - | reva-storage-eos | 129 | - | reva-storage-eos-data | 134 | - | reva-storage-home | 442 | - | reva-storage-home-data | 464 | - | reva-storage-oc | 149 | - | reva-storage-oc-data | 155 | - | reva-storage-public-link | 168 | - | reva-users | 420 | - | settings | 23 | - | thumbnails | 201 | - | web | 218 | - | webdav | 63 | - +--------------------------+-----+ +``` +$ docker-compose exec ocis ./bin/ocis list ++--------------------------+-----+ +| EXTENSION | PID | ++--------------------------+-----+ +| accounts | 172 | +| api | 204 | +| glauth | 187 | +| graph | 41 | +| graph-explorer | 55 | +| konnectd | 196 | +| ocs | 59 | +| phoenix | 29 | +| proxy | 22 | +| registry | 226 | +| reva-auth-basic | 96 | +| reva-auth-bearer | 104 | +| reva-frontend | 485 | +| reva-gateway | 78 | +| reva-sharing | 286 | +| reva-storage-eos | 129 | +| reva-storage-eos-data | 134 | +| reva-storage-home | 442 | +| reva-storage-home-data | 464 | +| reva-storage-oc | 149 | +| reva-storage-oc-data | 155 | +| reva-storage-public-link | 168 | +| reva-users | 420 | +| settings | 23 | +| thumbnails | 201 | +| web | 218 | +| webdav | 63 | ++--------------------------+-----+ +``` diff --git a/ocis/docs/eos.md b/ocis/docs/eos.md index ee92f9207..4815d393c 100644 --- a/ocis/docs/eos.md +++ b/ocis/docs/eos.md @@ -1,14 +1,13 @@ -* * * - +--- title: "EOS" date: 2020-02-27T20:35:00+01:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: eos.md +--- -## geekdocFilePath: eos.md - -{{< toc >}} +{{< toc >}} OCIS can be configured to run on top of [eos](https://eos.web.cern.ch/). While the [eos documentation](http://eos-docs.web.cern.ch/) does cover a lot of topics it leaves out some details that you may have to either pull from various [docker containers](https://gitlab.cern.ch/eos/eos-docker), the [forums](https://eos-community.web.cern.ch/) or even the [source](https://github.com/cern-eos/eos) itself. @@ -16,151 +15,164 @@ This document is a work in progress of the current setup. ## Docker dev environment for eos storage -We begin with the docker-compose.yml found in and +We begin with the docker-compose.yml found in https://github.com/owncloud/ocis/ and switch it to eos-storage. ### 1. Start eos & ocis containers Start the eos cluster and ocis via the compose stack. +``` +docker-compose up -d +``` - docker-compose up -d - -{{< hint info >}} +{{< hint info >}} The first time the **ocis** container starts up, it will compile ocis from scratch which can take a while. To follow progress, run `docker-compose logs -f --tail=10 ocis` -{{< /hint >}} +{{< /hint >}} ### 2. LDAP support Configure the OS to resolve users and groups using ldap - docker-compose exec -d ocis /start-ldap +``` +docker-compose exec -d ocis /start-ldap +``` Check that the OS in the ocis container can now resolve einstein or the other demo users - $ docker-compose exec ocis id einstein - uid=20000(einstein) gid=30000(users) groups=30000(users),30001(sailing-lovers),30002(violin-haters),30007(physics-lovers) +``` +$ docker-compose exec ocis id einstein +uid=20000(einstein) gid=30000(users) groups=30000(users),30001(sailing-lovers),30002(violin-haters),30007(physics-lovers) +``` -{{< hint info >}} +{{< hint info >}} If the user is not found at first you might need to wait a few more minutes in case the ocis container is still compiling. -{{< /hint >}} +{{< /hint >}} We also need to restart the reva-users service so it picks up the changed environment. Without a restart it is not able to resolve users from LDAP. - - docker-compose exec ocis ./bin/ocis kill reva-users - docker-compose exec ocis ./bin/ocis run reva-users +``` +docker-compose exec ocis ./bin/ocis kill reva-users +docker-compose exec ocis ./bin/ocis run reva-users +``` ### 3. Home storage Kill the home storage. By default it uses the `owncloud` storage driver. We need to switch it to the `eoshome` driver and make it use the storage id of the eos storage provider: - docker-compose exec ocis ./bin/ocis kill reva-storage-home - docker-compose exec -e REVA_STORAGE_HOME_DRIVER=eoshome -e REVA_STORAGE_HOME_MOUNT_ID=1284d238-aa92-42ce-bdc4-0b0000009158 ocis ./bin/ocis run reva-storage-home +``` +docker-compose exec ocis ./bin/ocis kill reva-storage-home +docker-compose exec -e REVA_STORAGE_HOME_DRIVER=eoshome -e REVA_STORAGE_HOME_MOUNT_ID=1284d238-aa92-42ce-bdc4-0b0000009158 ocis ./bin/ocis run reva-storage-home +``` ### 4. Home data provider Kill the home data provider. By default it uses the `owncloud` storage driver. We need to switch it to the `eoshome` driver and make it use the storage id of the eos storage provider: - docker-compose exec ocis ./bin/ocis kill reva-storage-home-data - docker-compose exec -e REVA_STORAGE_HOME_DATA_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home-data +``` +docker-compose exec ocis ./bin/ocis kill reva-storage-home-data +docker-compose exec -e REVA_STORAGE_HOME_DATA_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home-data +``` -{{< hint info >}} -The difference between the _home storage_ and the _home data provider_ are that the former is responsible for metadata changes while the latter is responsible for actual data transfer. The _home storage_ uses the cs3 api to manage a folder hierarchy, while the _home data provider_ is responsible for moving bytes to and from the storage. -{{< /hint >}} +{{< hint info >}} +The difference between the *home storage* and the *home data provider* are that the former is responsible for metadata changes while the latter is responsible for actual data transfer. The *home storage* uses the cs3 api to manage a folder hierarchy, while the *home data provider* is responsible for moving bytes to and from the storage. +{{< /hint >}} ## Verification Login with `einstein / relativity`, upload a file to einsteins home and verify the file is there using - docker-compose exec ocis eos ls -l /eos/dockertest/reva/users/4/4c510ada-c86b-4815-8820-42cdf82c3d51/ - -rw-r--r-- 1 einstein users 10 Jul 1 15:24 newfile.txt +``` +docker-compose exec ocis eos ls -l /eos/dockertest/reva/users/4/4c510ada-c86b-4815-8820-42cdf82c3d51/ +-rw-r--r-- 1 einstein users 10 Jul 1 15:24 newfile.txt +``` If the problem persists, please check the [troubleshooting section about uploads](#creation-and-upload-of-files-does-not-work). ## Further exploration EOS has a built in shell that you can enter using - - $ docker-compose exec mgm-master eos - # --------------------------------------------------------------------------- - # EOS Copyright (C) 2011-2019 CERN/Switzerland - # This program comes with ABSOLUTELY NO WARRANTY; for details type `license'. - # This is free software, and you are welcome to redistribute it - # under certain conditions; type `license' for details. - # --------------------------------------------------------------------------- - EOS_INSTANCE=eostest - EOS_SERVER_VERSION=4.6.5 EOS_SERVER_RELEASE=1 - EOS_CLIENT_VERSION=4.6.5 EOS_CLIENT_RELEASE=1 - EOS Console [root://localhost] |/> help - access Access Interface - accounting Accounting Interface - acl Acl Interface - archive Archive Interface - attr Attribute Interface - backup Backup Interface - clear Clear the terminal - cd Change directory - chmod Mode Interface - chown Chown Interface - config Configuration System - console Run Error Console - cp Cp command - debug Set debug level - exit Exit from EOS console - file File Handling - fileinfo File Information - find Find files/directories - newfind Find files/directories (new implementation) - fs File System configuration - fsck File System Consistency Checking - fuse Fuse Mounting - fusex Fuse(x) Administration - geosched Geoscheduler Interface - group Group configuration - health Health information about system - help Display this text - info Retrieve file or directory information - inspector Interact with File Inspector - io IO Interface - json Toggle JSON output flag for stdout - license Display Software License - ls List a directory - ln Create a symbolic link - map Path mapping interface - member Check Egroup membership - mkdir Create a directory - motd Message of the day - mv Rename file or directory - node Node configuration - ns Namespace Interface - pwd Print working directory - quit Exit from EOS console - quota Quota System configuration - reconnect Forces a re-authentication of the shell - recycle Recycle Bin Functionality - rmdir Remove a directory - rm Remove a file - role Set the client role - route Routing interface - rtlog Get realtime log output from mgm & fst servers - silent Toggle silent flag for stdout - space Space configuration - stagerrm Remove disk replicas of a file if it has tape replicas - stat Run 'stat' on a file or directory - squash Run 'squashfs' utility function - test Run performance test - timing Toggle timing flag for execution time measurement - touch Touch a file - token Token interface - tracker Interact with File Tracker - transfer Transfer Interface - version Verbose client/server version - vid Virtual ID System Configuration - whoami Determine how we are mapped on server side - who Statistics about connected users - ? Synonym for 'help' - .q Exit from EOS console - EOS Console [root://localhost] |/> +``` +$ docker-compose exec mgm-master eos +# --------------------------------------------------------------------------- +# EOS Copyright (C) 2011-2019 CERN/Switzerland +# This program comes with ABSOLUTELY NO WARRANTY; for details type `license'. +# This is free software, and you are welcome to redistribute it +# under certain conditions; type `license' for details. +# --------------------------------------------------------------------------- +EOS_INSTANCE=eostest +EOS_SERVER_VERSION=4.6.5 EOS_SERVER_RELEASE=1 +EOS_CLIENT_VERSION=4.6.5 EOS_CLIENT_RELEASE=1 +EOS Console [root://localhost] |/> help +access Access Interface +accounting Accounting Interface +acl Acl Interface +archive Archive Interface +attr Attribute Interface +backup Backup Interface +clear Clear the terminal +cd Change directory +chmod Mode Interface +chown Chown Interface +config Configuration System +console Run Error Console +cp Cp command +debug Set debug level +exit Exit from EOS console +file File Handling +fileinfo File Information +find Find files/directories +newfind Find files/directories (new implementation) +fs File System configuration +fsck File System Consistency Checking +fuse Fuse Mounting +fusex Fuse(x) Administration +geosched Geoscheduler Interface +group Group configuration +health Health information about system +help Display this text +info Retrieve file or directory information +inspector Interact with File Inspector +io IO Interface +json Toggle JSON output flag for stdout +license Display Software License +ls List a directory +ln Create a symbolic link +map Path mapping interface +member Check Egroup membership +mkdir Create a directory +motd Message of the day +mv Rename file or directory +node Node configuration +ns Namespace Interface +pwd Print working directory +quit Exit from EOS console +quota Quota System configuration +reconnect Forces a re-authentication of the shell +recycle Recycle Bin Functionality +rmdir Remove a directory +rm Remove a file +role Set the client role +route Routing interface +rtlog Get realtime log output from mgm & fst servers +silent Toggle silent flag for stdout +space Space configuration +stagerrm Remove disk replicas of a file if it has tape replicas +stat Run 'stat' on a file or directory +squash Run 'squashfs' utility function +test Run performance test +timing Toggle timing flag for execution time measurement +touch Touch a file +token Token interface +tracker Interact with File Tracker +transfer Transfer Interface +version Verbose client/server version +vid Virtual ID System Configuration +whoami Determine how we are mapped on server side +who Statistics about connected users +? Synonym for 'help' +.q Exit from EOS console +EOS Console [root://localhost] |/> +``` But this is a different adventure. See the links at the top of this page for other sources of information on eos. @@ -184,10 +196,10 @@ The ocis logs can be accessed using `docker-compose logs ocis`. Add `-f` for fol ### How do I update a service in the ocis container? -1. `docker-compose exec ocis make clean build` to update the binary -2. `docker-compose exec ocis ./bin/ocis kill ` to kill the service -3. `docker-compose exec ocis ./bin/ocis run ` to start the service. Do not forget to set any env vars, eg. - `docker-compose exec -e REVA_STORAGE_EOS_LAYOUT="{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}" -e REVA_STORAGE_HOME_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home` +1. `docker-compose exec ocis make clean build` to update the binary +2. `docker-compose exec ocis ./bin/ocis kill ` to kill the service +3. `docker-compose exec ocis ./bin/ocis run ` to start the service. Do not forget to set any env vars, eg. + `docker-compose exec -e REVA_STORAGE_EOS_LAYOUT="{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}" -e REVA_STORAGE_HOME_DRIVER=eoshome ocis ./bin/ocis run reva-storage-home` ### Creation and upload of files does not work @@ -205,3 +217,4 @@ The EOS dockers are configured with replication, so every file uploaded there wi so make sure there is enough physical space on disk when testing. Also please note that older failed uploads might still be present in the "/tmp" directory of the "ocis" container. + diff --git a/ocis/docs/extensions.md b/ocis/docs/extensions.md index 8dfa6cd8a..4fd9d2bbe 100644 --- a/ocis/docs/extensions.md +++ b/ocis/docs/extensions.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Extension" date: 2020-02-27T20:35:00+01:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: extensions.md +--- -## geekdocFilePath: extensions.md - -{{< toc >}} +{{< toc >}} ## How to build and run ocis-simple @@ -18,7 +17,7 @@ ocis uses build tags to build different flavors of the binary. In order to work mkdir ocis-extension-workshop && ocis-extension-workshop ``` -Following +Following https://github.com/owncloud/ocis ```console git clone https://github.com/owncloud/ocis.git @@ -27,20 +26,20 @@ cd ocis TAGS=simple make generate build ``` -_Q: Can you specify which version of phoenix to use?_ -_A: No, the phoenix that is used is compiled into the [assets of ocis-phoenix](https://github.com/owncloud/ocis-phoenix/blob/master/pkg/assets/embed.go) which is currently not automatically updated. We'll see how to use a custom phoenix later._ +*Q: Can you specify which version of phoenix to use?* +*A: No, the phoenix that is used is compiled into the [assets of ocis-phoenix](https://github.com/owncloud/ocis-phoenix/blob/master/pkg/assets/embed.go) which is currently not automatically updated. We'll see how to use a custom phoenix later.* `bin/ocis server` -Open the browser at http://localhost:9100 +Open the browser at http://localhost:9100 -1. You land on the login screen. click login -2. You are redirected to an idp at http://localhost:9140/oauth2/auth with a login mask. Use `einstein:relativity`to login (one of the three demo users) -3. You are redirected to http://localhost:9100/#/hello the ocis-hello app -4. Replace `World` with something else and submit. You should see `Hello %something else%` +1. You land on the login screen. click login +2. You are redirected to an idp at http://localhost:9140/oauth2/auth with a login mask. Use `einstein:relativity`to login (one of the three demo users) +3. You are redirected to http://localhost:9100/#/hello the ocis-hello app +4. Replace `World` with something else and submit. You should see `Hello %something else%` -_Q: One of the required ports is already in use. Ocis seems to be trying to restart the service over and over. What gives?_ -_A: Using the ocis binary to start the server will case ocis to keep track of the different services and restart them in case they crash._ +*Q: One of the required ports is already in use. Ocis seems to be trying to restart the service over and over. What gives?* +*A: Using the ocis binary to start the server will case ocis to keep track of the different services and restart them in case they crash.* ## Hacking ocis-hello @@ -50,25 +49,25 @@ go back to the ocis-extension-workshop folder cd .. ``` -Following +Following https://github.com/owncloud/ocis-hello - git clone https://github.com/owncloud/ocis-hello.git - cd ocis-hello +``` +git clone https://github.com/owncloud/ocis-hello.git +cd ocis-hello - yarn install - # this actually creates the assets - yarn build +yarn install +# this actually creates the assets +yarn build - # this will compile the assets into the binary - make generate build +# this will compile the assets into the binary +make generate build +``` Two options: - -1. run only the necessery services from ocis and ocis-hello independently -2. compile ocis with the updated ocis-hello +1. run only the necessery services from ocis and ocis-hello independently +2. compile ocis with the updated ocis-hello ### Option 1: - get a list of ocis services: ```console @@ -83,10 +82,12 @@ In order to be able to manage the processes ourselves we need to start them inde `bin/ocis server` starts the same services as: - bin/ocis micro & - bin/ocis phoenix & - bin/ocis hello & - bin/ocis reva & +``` +bin/ocis micro & +bin/ocis phoenix & +bin/ocis hello & +bin/ocis reva & +``` Now we can kill the `ocis hello` and use our custom built ocis-hello binary: @@ -97,13 +98,15 @@ bin/ocis-hello server ## Hacking phoenix (and ocis-phoenix) -Following we are going to build the current phoenix +Following https://github.com/owncloud/phoenix we are going to build the current phoenix - git clone https://github.com/owncloud/phoenix.git - cd phoenix +``` +git clone https://github.com/owncloud/phoenix.git +cd phoenix - yarn install - yarn dist +yarn install +yarn dist +``` We can tell ocis to use the compiled assets: @@ -118,7 +121,7 @@ PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix The owncloud design system contains a set of ownCloud vue components for phoenix or your own ocis extensions. Use it for a consistent look and feel. -Point your browser to and check the available components. Live editing the examples in the browser is supported. +Point your browser to https://owncloud.github.io/owncloud-design-system and check the available components. Live editing the examples in the browser is supported. note: There is a bug with navigation sub items: either click a nav item twice or refresh the page @@ -126,10 +129,10 @@ note: There is a bug with navigation sub items: either click a nav item twice or This is what hello is: copy and extend! -1. Phoenix is configured using the config.json which is served by the phoenix service (either `bin/ocis phoenix` or `bin/ocis-phoenix server`) +1. Phoenix is configured using the config.json which is served by the phoenix service (either `bin/ocis phoenix` or `bin/ocis-phoenix server`) -2. point ocis phoenix to the web config which you extended with an external app: - `PHOENIX_WEB_CONFIG="`pwd`/../phoenix/config.json" PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix` +2. point ocis phoenix to the web config which you extended with an external app: +`PHOENIX_WEB_CONFIG="`pwd`/../phoenix/config.json" PHOENIX_ASSET_PATH="`pwd`/../phoenix/dist" bin/ocis phoenix` ```json { @@ -166,26 +169,23 @@ This is what hello is: copy and extend! ## Phoenix extension points -{{< hint info >}} +{{< hint info >}} For an up to date list check out [the phoenix documentation](https://github.com/owncloud/phoenix/issues/2423). -{{< /hint >}} +{{< /hint >}} Several ones available: ### Phoenix core - -- App switcher (defined in config.json) -- App container (loads UI of your extension) +- App switcher (defined in config.json) +- App container (loads UI of your extension) ### Files app - -- File action -- Create new file action -- Sidebar -- Quick access for sidebar inside of file actions (in the file row) +- File action +- Create new file action +- Sidebar +- Quick access for sidebar inside of file actions (in the file row) Example of a file action in the `app.js`: - ```js const appInfo = { name: 'MarkdownEditor', @@ -221,20 +221,17 @@ Short answer: any way you like Long answer: micro and ocis-hello follow a protocol driven development: -- specify the API using protobuf +- specify the API using protobuf +- generate client and server code +- evolve based on the protocol -- generate client and server code +- CS3 api uses protobuf as well and uses GRPC -- evolve based on the protocol +- ocis uses go-micro, which provides http and grpc gateways +- the gateways and protocols are optional -- CS3 api uses protobuf as well and uses GRPC +- owncloud and kopano are looking into a [MS graph](https://developer.microsoft.com/de-de/graph) like api to handle phoenix requests. + - they might be about user, contacrs, calendars ... which is covered by the graph api + - we want to integrate with eg. kopano and provide a commen api (file sync and share is covered as well) -- ocis uses go-micro, which provides http and grpc gateways - -- the gateways and protocols are optional - -- owncloud and kopano are looking into a [MS graph](https://developer.microsoft.com/de-de/graph) like api to handle phoenix requests. - - they might be about user, contacrs, calendars ... which is covered by the graph api - - we want to integrate with eg. kopano and provide a commen api (file sync and share is covered as well) - -- as an example for protobuf take a look at [ocis-hello](https://github.com/owncloud/ocis-hello/tree/master/pkg/proto/v0) +- as an example for protobuf take a look at [ocis-hello](https://github.com/owncloud/ocis-hello/tree/master/pkg/proto/v0) \ No newline at end of file diff --git a/ocis/docs/getting-started.md b/ocis/docs/getting-started.md index 5cbe00491..5c241aa75 100644 --- a/ocis/docs/getting-started.md +++ b/ocis/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2020-02-27T20:35:00+01:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis are hosted on . +Docker images for ocis are hosted on https://hub.docker.com/r/owncloud/ocis. The `latest` tag always reflects the current master branch. @@ -26,8 +25,8 @@ docker pull owncloud/ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage +- Running ocis currently needs a working Redis caching server +- The default storage location in the container is `/var/tmp/reva/data`. You may want to create a volume to persist the files in the primary storage #### Docker compose @@ -41,7 +40,7 @@ docker-compose -f ocis.yml -f ../cache/redis-ocis.yml up ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis/testing/ ```console curl https://download.owncloud.com/ocis/ocis/1.0.0-beta1/ocis-1.0.0-beta1-darwin-amd64 --output ocis @@ -51,8 +50,8 @@ chmod +x ocis #### Dependencies -- Running ocis currently needs a working Redis caching server -- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. +- Running ocis currently needs a working Redis caching server +- The default promary storage location is `/var/tmp/reva/data`. You can change that value by configuration. ## Usage @@ -62,21 +61,21 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis health --help -{{< / highlight >}} +{{< / highlight >}} ## Quickstart for Developers -Following +Following https://github.com/owncloud/ocis#development ```console git clone https://github.com/owncloud/ocis.git @@ -84,7 +83,7 @@ cd ocis make generate build ``` -Open https://localhost:9200 and login using one of the demo accounts: +Open https://localhost:9200 and login using one of the demo accounts: ```console einstein:relativity @@ -226,4 +225,4 @@ promhttp_metric_handler_requests_in_flight : Current number of scrapes being served promhttp_metric_handler_requests_total -: Total number of scrapes by HTTP status code +: Total number of scrapes by HTTP status code \ No newline at end of file diff --git a/ocis/docs/license.md b/ocis/docs/license.md index 172daef3f..64460ec7e 100644 --- a/ocis/docs/license.md +++ b/ocis/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2020-02-27T20:35:00+01:00 weight: 100 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/ocis/docs/login-flow.md b/ocis/docs/login-flow.md index 12ef9e7ff..ab450d901 100644 --- a/ocis/docs/login-flow.md +++ b/ocis/docs/login-flow.md @@ -1,23 +1,23 @@ -* * * - +--- title: "Login Flow" date: 2020-05-04T20:47:00+01:00 weight: 43 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: login-flow.md +--- -## geekdocFilePath: login-flow.md ## Login Flow The following sequence diagram describes the [openid connect auth code flow](https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth). The eight numbered steps and notes correspond to the [openid connect auth code flow steps](https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowSteps). Example requests are based on the spec as well.: -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} sequenceDiagram - %% we have comments!! \\o/ + %% we have comments!! \o/ %% this documents the login workflow - %% examples taken from the oidc spec - %% TODO add PKCE, see + %% examples taken from the oidc spec https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth + %% TODO add PKCE, see https://developer.okta.com/blog/2019/08/22/okta-authjs-pkce#use-pkce-to-make-your-apps-more-secure participant user as User participant client as Client participant proxy as ocis-proxy @@ -82,5 +82,4 @@ sequenceDiagram client->>+proxy: PROPFIND
With access token proxy-->>-client: 207 Multi-Status client-->>-user: List of Files X, Y, Z ... - -{{< /mermaid >}} +{{< /mermaid >}} \ No newline at end of file diff --git a/ocis/docs/public-upload-flow.md b/ocis/docs/public-upload-flow.md index c0d372001..7716175ff 100644 --- a/ocis/docs/public-upload-flow.md +++ b/ocis/docs/public-upload-flow.md @@ -1,15 +1,15 @@ -* * * - +--- title: "Public upload Flow" date: 2020-07-27T14:16:00+01:00 weight: 47 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: public-upload-flow.md +--- -## geekdocFilePath: public-upload-flow.md ## Public Upload flow The following diagram describes the flow of requests: -{{< svg src="static/ocis/tus-public-upload.svg" >}} +{{< svg src="static/ocis/tus-public-upload.svg" >}} \ No newline at end of file diff --git a/ocis/docs/request-flow.md b/ocis/docs/request-flow.md index aab3f1c75..268aaa2a7 100644 --- a/ocis/docs/request-flow.md +++ b/ocis/docs/request-flow.md @@ -1,20 +1,20 @@ -* * * - +--- title: "Request Flow" date: 2020-04-27T16:07:00+01:00 weight: 45 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: request-flow.md +--- -## geekdocFilePath: request-flow.md ## Request Flow The following sequence diagram describes the general request flow. It shows where account provisioning and token minting are happening: -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} sequenceDiagram - %% we have comments!! \\o/ + %% we have comments!! \o/ participant user as User participant client as Client participant proxy as ocis-proxy @@ -93,5 +93,4 @@ sequenceDiagram proxy-->>-client: Multistatus response client-->>-user: List of Files X, Y, Z ... - -{{< /mermaid >}} +{{< /mermaid >}} diff --git a/ocis/docs/testing.md b/ocis/docs/testing.md index 82f201c6a..c19dacc69 100644 --- a/ocis/docs/testing.md +++ b/ocis/docs/testing.md @@ -1,12 +1,12 @@ -* * * - +--- title: "Testing" date: 2018-05-02T00:00:00+00:00 weight: 37 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs +geekdocFilePath: testing.md +--- -## geekdocFilePath: testing.md ## Acceptance tests @@ -15,8 +15,9 @@ We are using the ownCloud 10 acceptance testsuite against ocis. To set this up y ### Getting the tests All you need to do to get the acceptance tests is check out the core repo: - - git clone https://github.com/owncloud/core.git +``` +git clone https://github.com/owncloud/core.git +``` ### Run a redis server in a docker container @@ -27,24 +28,27 @@ File versions need a redis server. Start one with docker by using: ### Run ocis To start ocis: - - bin/ocis server +``` +bin/ocis server +``` ### Run the acceptance tests - First we will need to clone the testing app in owncloud which contains the skeleton files required for running the tests. In the ownCloud 10 core clone the testing app with the following command: - git clone https://github.com/owncloud/testing apps/testing +``` +git clone https://github.com/owncloud/testing apps/testing +``` Then run the api acceptance tests with the following command: - - make test-acceptance-api \ - TEST_SERVER_URL=https://localhost:9200 \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - SKELETON_DIR=apps/testing/data/apiSkeleton \ - BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS' +``` +make test-acceptance-api \ +TEST_SERVER_URL=https://localhost:9200 \ +TEST_OCIS=true \ +OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ +SKELETON_DIR=apps/testing/data/apiSkeleton \ +BEHAT_FILTER_TAGS='~@notToImplementOnOCIS&&~@toImplementOnOCIS' +``` Make sure to adjust the settings `TEST_SERVER_URL` and `OCIS_REVA_DATA_ROOT` according to your environment. @@ -80,30 +84,24 @@ If you want to work on a specific issue 2. locally run each of the tests marked with that issue in the expected failures file E.g.: - - make test-acceptance-api \ - TEST_SERVER_URL=https://localhost:9200 \ - TEST_OCIS=true \ - OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ - BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` + make test-acceptance-api \ + TEST_SERVER_URL=https://localhost:9200 \ + TEST_OCIS=true \ + OCIS_REVA_DATA_ROOT=/var/tmp/reva/ \ + BEHAT_FEATURE='tests/acceptance/features/apiComments/comments.feature:123' + ``` 3. the tests will fail, try to understand how and why they are failing - 4. fix the code - 5. go back to 2. and repeat till the tests are passing. - 6. remove those tests from the expected failures file - 7. run each of the local tests that were demonstrating the **buggy** behavior. They should fail. - 8. delete each of the local tests that were demonstrating the **buggy** behavior. - 9. make a PR that has the fixed code, relevant lines removed from the expected failures file and bug demonstration tests deleted. If the changes also affect the `ocis-reva` repository make sure the changes get ported over there. ### Notes - -- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. -- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. +- in a normal case the test-code cleans up users after the test-run, but if a test-run is interrupted (e.g. by CTRL+C) users might have been left on the LDAP server. In that case rerunning the tests requires wiping the users in the ldap server, otherwise the tests will fail when trying to populate the users. +- the tests usually create users in the OU `TestUsers` with usernames specified in the feature file. If not defined in the feature file, most users have the password `123456`, defined by `regularUserPassword` in `behat.yml`, but other passwords are also used, see [`\FeatureContext::getPasswordForUser()`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L386) for mapping and [`\FeatureContext::__construct`](https://github.com/owncloud/core/blob/master/tests/acceptance/features/bootstrap/FeatureContext.php#L1668) for the password definitions. diff --git a/ocis/docs/tracing.md b/ocis/docs/tracing.md index 731ff9b55..80b037d26 100644 --- a/ocis/docs/tracing.md +++ b/ocis/docs/tracing.md @@ -1,17 +1,16 @@ -* * * - +--- title: "Tracing" date: 2020-05-13T12:09:00+01:00 weight: 55 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis geekdocEditPath: edit/master/docs - -## geekdocFilePath: tracing.md +geekdocFilePath: tracing.md +--- By default, we use [Jaeger](https://www.jaegertracing.io) for request tracing within oCIS. You can follow these steps to get started: -1. Start Jaeger by using the all-in-one docker image: +1. Start Jaeger by using the all-in-one docker image: ```console docker run -d --name jaeger \ -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 \ @@ -25,8 +24,8 @@ to get started: -p 9411:9411 \ jaegertracing/all-in-one:1.17 ``` -2. Every single oCIS service has its own environment variables for enabling and configuring tracing. - 1. You can enable and configure tracing on each service individually. For example, enable tracing +2. Every single oCIS service has its own environment variables for enabling and configuring tracing. + 1. You can enable and configure tracing on each service individually. For example, enable tracing in Reva when starting the oCIS single binary like this: ```console REVA_TRACING_ENABLED=true \ @@ -34,16 +33,16 @@ to get started: REVA_TRACING_COLLECTOR=http://localhost:14268/api/traces \ ./bin/ocis server ``` - 2. Enabling and configuring tracing on oCIS itself will forward the configuration to all services: + 2. Enabling and configuring tracing on oCIS itself will forward the configuration to all services: ```console OCIS_TRACING_ENABLED=true \ OCIS_TRACING_ENDPOINT=localhost:6831 \ OCIS_TRACING_COLLECTOR=http://localhost:14268/api/traces \ ./bin/ocis server ``` - If you want to set individual tracing configuration for each service, make sure to set - `OCIS_TRACING_ENABLED=false`. -3. Make the actual request that you want to trace. -4. Open up the [Jaeger UI](http://localhost:16686) to analyze request traces. + If you want to set individual tracing configuration for each service, make sure to set + `OCIS_TRACING_ENABLED=false`. +3. Make the actual request that you want to trace. +4. Open up the [Jaeger UI](http://localhost:16686) to analyze request traces. For more information on Jaeger, please refer to their [Documentation](https://www.jaegertracing.io/docs/1.17/). diff --git a/ocs/CHANGELOG.md b/ocs/CHANGELOG.md index 9d0ce185f..72a9bf8e3 100644 --- a/ocs/CHANGELOG.md +++ b/ocs/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-ocs unreleased. @@ -6,20 +6,20 @@ The following sections list the changes in ocis-ocs unreleased. ## Summary -- Bugfix - Match the user response to the OC10 format: [#181](https://github.com/owncloud/product/issues/181) +* Bugfix - Match the user response to the OC10 format: [#181](https://github.com/owncloud/product/issues/181) ## Details -- Bugfix - Match the user response to the OC10 format: [#181](https://github.com/owncloud/product/issues/181) +* Bugfix - Match the user response to the OC10 format: [#181](https://github.com/owncloud/product/issues/181) - The user response contained the field `displayname` but for certain responses the field - `display-name` is expected. The field `display-name` was added and now both fields are - returned to the client. + The user response contained the field `displayname` but for certain responses the field + `display-name` is expected. The field `display-name` was added and now both fields are + returned to the client. - - + https://github.com/owncloud/product/issues/181 + https://github.com/owncloud/ocis/ocs/pull/61 -# Changelog for [0.3.1] \(2020-09-02) +# Changelog for [0.3.1] (2020-09-02) The following sections list the changes in ocis-ocs 0.3.1. @@ -27,28 +27,28 @@ The following sections list the changes in ocis-ocs 0.3.1. ## Summary -- Bugfix - Add the top level response structure to json responses: [#181](https://github.com/owncloud/product/issues/181) -- Enhancement - Update ocis-accounts: [#42](https://github.com/owncloud/ocis/ocs/pull/42) +* Bugfix - Add the top level response structure to json responses: [#181](https://github.com/owncloud/product/issues/181) +* Enhancement - Update ocis-accounts: [#42](https://github.com/owncloud/ocis/ocs/pull/42) ## Details -- Bugfix - Add the top level response structure to json responses: [#181](https://github.com/owncloud/product/issues/181) +* Bugfix - Add the top level response structure to json responses: [#181](https://github.com/owncloud/product/issues/181) - Probably during moving the ocs code into the ocis-ocs repo the response format was changed. - This change adds the top level response to json responses. Doing that the reponse should be - compatible to the responses from OC10. + Probably during moving the ocs code into the ocis-ocs repo the response format was changed. + This change adds the top level response to json responses. Doing that the reponse should be + compatible to the responses from OC10. - - + https://github.com/owncloud/product/issues/181 + https://github.com/owncloud/product/issues/181#issuecomment-683604168 -- Enhancement - Update ocis-accounts: [#42](https://github.com/owncloud/ocis/ocs/pull/42) +* Enhancement - Update ocis-accounts: [#42](https://github.com/owncloud/ocis/ocs/pull/42) - Update ocis-accounts to v0.4.2-0.20200828150703-2ca83cf4ac20 + Update ocis-accounts to v0.4.2-0.20200828150703-2ca83cf4ac20 - + https://github.com/owncloud/ocis/ocs/pull/42 -# Changelog for [0.3.0] \(2020-08-27) +# Changelog for [0.3.0] (2020-08-27) The following sections list the changes in ocis-ocs 0.3.0. @@ -56,35 +56,35 @@ The following sections list the changes in ocis-ocs 0.3.0. ## Summary -- Bugfix - Mimic oc10 user enabled as string in provisioning api: [#39](https://github.com/owncloud/ocis/ocs/pull/39) -- Bugfix - Use opaque ID of a user for signing keys: [#436](https://github.com/owncloud/ocis/issues/436) -- Enhancement - Add option to create user with uidnumber and gidnumber: [#34](https://github.com/owncloud/ocis/ocs/pull/34) +* Bugfix - Mimic oc10 user enabled as string in provisioning api: [#39](https://github.com/owncloud/ocis/ocs/pull/39) +* Bugfix - Use opaque ID of a user for signing keys: [#436](https://github.com/owncloud/ocis/issues/436) +* Enhancement - Add option to create user with uidnumber and gidnumber: [#34](https://github.com/owncloud/ocis/ocs/pull/34) ## Details -- Bugfix - Mimic oc10 user enabled as string in provisioning api: [#39](https://github.com/owncloud/ocis/ocs/pull/39) +* Bugfix - Mimic oc10 user enabled as string in provisioning api: [#39](https://github.com/owncloud/ocis/ocs/pull/39) - The oc10 user provisioning API uses a string for the boolean `enabled` flag. 😭 + The oc10 user provisioning API uses a string for the boolean `enabled` flag. 😭 - + https://github.com/owncloud/ocis/ocs/pull/39 -- Bugfix - Use opaque ID of a user for signing keys: [#436](https://github.com/owncloud/ocis/issues/436) +* Bugfix - Use opaque ID of a user for signing keys: [#436](https://github.com/owncloud/ocis/issues/436) - OCIS switched from user the user's opaque ID (UUID) everywhere, so to keep compatible we have - adjusted the signing keys endpoint to also use the UUID when storing and generating the keys. + OCIS switched from user the user's opaque ID (UUID) everywhere, so to keep compatible we have + adjusted the signing keys endpoint to also use the UUID when storing and generating the keys. - - + https://github.com/owncloud/ocis/issues/436 + https://github.com/owncloud/ocis/ocs/pull/32 -- Enhancement - Add option to create user with uidnumber and gidnumber: [#34](https://github.com/owncloud/ocis/ocs/pull/34) +* Enhancement - Add option to create user with uidnumber and gidnumber: [#34](https://github.com/owncloud/ocis/ocs/pull/34) - We have added an option to pass uidnumber and gidnumber to the ocis api while creating a new user + We have added an option to pass uidnumber and gidnumber to the ocis api while creating a new user - + https://github.com/owncloud/ocis/ocs/pull/34 -# Changelog for [0.2.0] \(2020-08-17) +# Changelog for [0.2.0] (2020-08-17) The following sections list the changes in ocis-ocs 0.2.0. @@ -92,37 +92,37 @@ The following sections list the changes in ocis-ocs 0.2.0. ## Summary -- Bugfix - Fix file descriptor leak: [#79](https://github.com/owncloud/ocis/accounts/issues/79) -- Enhancement - Add Group management for OCS Povisioning API: [#25](https://github.com/owncloud/ocis/ocs/pull/25) -- Enhancement - Basic Support for the User Provisioning API: [#23](https://github.com/owncloud/ocis/ocs/pull/23) +* Bugfix - Fix file descriptor leak: [#79](https://github.com/owncloud/ocis/accounts/issues/79) +* Enhancement - Add Group management for OCS Povisioning API: [#25](https://github.com/owncloud/ocis/ocs/pull/25) +* Enhancement - Basic Support for the User Provisioning API: [#23](https://github.com/owncloud/ocis/ocs/pull/23) ## Details -- Bugfix - Fix file descriptor leak: [#79](https://github.com/owncloud/ocis/accounts/issues/79) +* Bugfix - Fix file descriptor leak: [#79](https://github.com/owncloud/ocis/accounts/issues/79) - Only use a single instance of go-micro's GRPC client as it already does connection pooling. - This prevents connection and file descriptor leaks. + Only use a single instance of go-micro's GRPC client as it already does connection pooling. + This prevents connection and file descriptor leaks. - - + https://github.com/owncloud/ocis/accounts/issues/79 + https://github.com/owncloud/ocis/ocs/pull/29 -- Enhancement - Add Group management for OCS Povisioning API: [#25](https://github.com/owncloud/ocis/ocs/pull/25) +* Enhancement - Add Group management for OCS Povisioning API: [#25](https://github.com/owncloud/ocis/ocs/pull/25) - We added support for the group management related set of API calls of the provisioning API. - [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) + We added support for the group management related set of API calls of the provisioning API. + [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) - + https://github.com/owncloud/ocis/ocs/pull/25 -- Enhancement - Basic Support for the User Provisioning API: [#23](https://github.com/owncloud/ocis/ocs/pull/23) +* Enhancement - Basic Support for the User Provisioning API: [#23](https://github.com/owncloud/ocis/ocs/pull/23) - We added support for a basic set of API calls for the user provisioning API. - [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) + We added support for a basic set of API calls for the user provisioning API. + [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) - + https://github.com/owncloud/ocis/ocs/pull/23 -# Changelog for [0.1.0] \(2020-07-23) +# Changelog for [0.1.0] (2020-07-23) The following sections list the changes in ocis-ocs 0.1.0. @@ -130,50 +130,51 @@ The following sections list the changes in ocis-ocs 0.1.0. ## Summary -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#20](https://github.com/owncloud/ocis/ocs/pull/20) -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocs/issues/1) -- Change - Upgrade micro libraries: [#11](https://github.com/owncloud/ocis/ocs/issues/11) -- Enhancement - Configuration: [#14](https://github.com/owncloud/ocis/ocs/pull/14) -- Enhancement - Support signing key: [#18](https://github.com/owncloud/ocis/ocs/pull/18) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#20](https://github.com/owncloud/ocis/ocs/pull/20) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocs/issues/1) +* Change - Upgrade micro libraries: [#11](https://github.com/owncloud/ocis/ocs/issues/11) +* Enhancement - Configuration: [#14](https://github.com/owncloud/ocis/ocs/pull/14) +* Enhancement - Support signing key: [#18](https://github.com/owncloud/ocis/ocs/pull/18) ## Details -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#20](https://github.com/owncloud/ocis/ocs/pull/20) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#20](https://github.com/owncloud/ocis/ocs/pull/20) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/ocs/pull/20 -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocs/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/ocs/issues/1) - Just prepared an initial basic version to serve OCS for the ownCloud Infinite Scale project. It - just provides a minimal viable product to demonstrate the microservice pattern. + Just prepared an initial basic version to serve OCS for the ownCloud Infinite Scale project. It + just provides a minimal viable product to demonstrate the microservice pattern. - + https://github.com/owncloud/ocis/ocs/issues/1 -- Change - Upgrade micro libraries: [#11](https://github.com/owncloud/ocis/ocs/issues/11) +* Change - Upgrade micro libraries: [#11](https://github.com/owncloud/ocis/ocs/issues/11) - Updated the micro and ocis-pkg libraries to version 2. + Updated the micro and ocis-pkg libraries to version 2. - + https://github.com/owncloud/ocis/ocs/issues/11 -- Enhancement - Configuration: [#14](https://github.com/owncloud/ocis/ocs/pull/14) +* Enhancement - Configuration: [#14](https://github.com/owncloud/ocis/ocs/pull/14) - Extensions should be responsible of configuring themselves. We use Viper for config loading - from default paths. Environment variables **WILL** take precedence over config files. + Extensions should be responsible of configuring themselves. We use Viper for config loading + from default paths. Environment variables **WILL** take precedence over config files. - + https://github.com/owncloud/ocis/ocs/pull/14 -- Enhancement - Support signing key: [#18](https://github.com/owncloud/ocis/ocs/pull/18) +* Enhancement - Support signing key: [#18](https://github.com/owncloud/ocis/ocs/pull/18) - We added support for the `/v[12].php/cloud/user/signing-key` endpoint that is used by the - owncloud-sdk to generate signed URLs. This allows directly downloading large files with - browsers instead of using `blob://` urls, which eats memory ... + We added support for the `/v[12].php/cloud/user/signing-key` endpoint that is used by the + owncloud-sdk to generate signed URLs. This allows directly downloading large files with + browsers instead of using `blob://` urls, which eats memory ... + + https://github.com/owncloud/ocis/ocs/pull/18 + https://github.com/owncloud/ocis-proxy/pull/75 + https://github.com/owncloud/owncloud-sdk/pull/504 - - - diff --git a/ocs/README.md b/ocs/README.md index 99de64f79..ceb8920b2 100644 --- a/ocs/README.md +++ b/ocs/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-ocs/status.svg)](https://cloud.drone.io/owncloud/ocis-ocs) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/80a22dcfa3cb4f09ba8f63b386683d16)](https://www.codacy.com/app/owncloud/ocis-ocs?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-ocs&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/80a22dcfa3cb4f09ba8f63b386683d16)](https://www.codacy.com/app/owncloud/ocis-ocs?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-ocs&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-ocs?status.svg)](http://godoc.org/github.com/owncloud/ocis-ocs) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-ocs)](http://goreportcard.com/report/github.com/owncloud/ocis-ocs) [![](https://images.microbadger.com/badges/image/owncloud/ocis-ocs.svg)](http://microbadger.com/images/owncloud/ocis-ocs "Get your own image badge on microbadger.com") @@ -28,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/ocs/changelog/0.1.0_2020-07-23/config-management.md b/ocs/changelog/0.1.0_2020-07-23/config-management.md index 038ccc69e..8911a368a 100644 --- a/ocs/changelog/0.1.0_2020-07-23/config-management.md +++ b/ocs/changelog/0.1.0_2020-07-23/config-management.md @@ -2,4 +2,4 @@ Enhancement: Configuration Extensions should be responsible of configuring themselves. We use Viper for config loading from default paths. Environment variables **WILL** take precedence over config files. - +https://github.com/owncloud/ocis/ocs/pull/14 diff --git a/ocs/changelog/0.1.0_2020-07-23/initial-release.md b/ocs/changelog/0.1.0_2020-07-23/initial-release.md index 96eae2d1d..43d282375 100644 --- a/ocs/changelog/0.1.0_2020-07-23/initial-release.md +++ b/ocs/changelog/0.1.0_2020-07-23/initial-release.md @@ -4,4 +4,4 @@ Just prepared an initial basic version to serve OCS for the ownCloud Infinite Scale project. It just provides a minimal viable product to demonstrate the microservice pattern. - +https://github.com/owncloud/ocis/ocs/issues/1 diff --git a/ocs/changelog/0.1.0_2020-07-23/support-signing-key.md b/ocs/changelog/0.1.0_2020-07-23/support-signing-key.md index 310a82eba..e4cf54e34 100644 --- a/ocs/changelog/0.1.0_2020-07-23/support-signing-key.md +++ b/ocs/changelog/0.1.0_2020-07-23/support-signing-key.md @@ -2,6 +2,6 @@ Enhancement: Support signing key We added support for the `/v[12].php/cloud/user/signing-key` endpoint that is used by the owncloud-sdk to generate signed URLs. This allows directly downloading large files with browsers instead of using `blob://` urls, which eats memory ... - - - +https://github.com/owncloud/ocis/ocs/pull/18 +https://github.com/owncloud/ocis-proxy/pull/75 +https://github.com/owncloud/owncloud-sdk/pull/504 diff --git a/ocs/changelog/0.1.0_2020-07-23/upgrade-micro.md b/ocs/changelog/0.1.0_2020-07-23/upgrade-micro.md index eadc08442..44c79bb1d 100644 --- a/ocs/changelog/0.1.0_2020-07-23/upgrade-micro.md +++ b/ocs/changelog/0.1.0_2020-07-23/upgrade-micro.md @@ -2,4 +2,4 @@ Change: upgrade micro libraries Updated the micro and ocis-pkg libraries to version 2. - +https://github.com/owncloud/ocis/ocs/issues/11 diff --git a/ocs/changelog/0.1.0_2020-07-23/use-alpine-latest.md b/ocs/changelog/0.1.0_2020-07-23/use-alpine-latest.md index eb6b4e73f..a5b15d18e 100644 --- a/ocs/changelog/0.1.0_2020-07-23/use-alpine-latest.md +++ b/ocs/changelog/0.1.0_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/ocs/pull/20 diff --git a/ocs/changelog/0.2.0_2020-08-17/fix-file-descriptor-leak.md b/ocs/changelog/0.2.0_2020-08-17/fix-file-descriptor-leak.md index c96b6df16..82fba899a 100644 --- a/ocs/changelog/0.2.0_2020-08-17/fix-file-descriptor-leak.md +++ b/ocs/changelog/0.2.0_2020-08-17/fix-file-descriptor-leak.md @@ -3,5 +3,5 @@ Bugfix: Fix file descriptor leak Only use a single instance of go-micro's GRPC client as it already does connection pooling. This prevents connection and file descriptor leaks. - - +https://github.com/owncloud/ocis/accounts/issues/79 +https://github.com/owncloud/ocis/ocs/pull/29 diff --git a/ocs/changelog/0.2.0_2020-08-17/groups-provisioning.md b/ocs/changelog/0.2.0_2020-08-17/groups-provisioning.md index a6ac4c38f..d9d71725b 100644 --- a/ocs/changelog/0.2.0_2020-08-17/groups-provisioning.md +++ b/ocs/changelog/0.2.0_2020-08-17/groups-provisioning.md @@ -2,4 +2,4 @@ Enhancement: Add Group management for OCS Povisioning API We added support for the group management related set of API calls of the provisioning API. [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) - +https://github.com/owncloud/ocis/ocs/pull/25 diff --git a/ocs/changelog/0.2.0_2020-08-17/user-provisioning.md b/ocs/changelog/0.2.0_2020-08-17/user-provisioning.md index b8c209d96..2aac3ea65 100644 --- a/ocs/changelog/0.2.0_2020-08-17/user-provisioning.md +++ b/ocs/changelog/0.2.0_2020-08-17/user-provisioning.md @@ -2,4 +2,4 @@ Enhancement: Basic Support for the User Provisioning API We added support for a basic set of API calls for the user provisioning API. [Reference](https://doc.owncloud.com/server/admin_manual/configuration/user/user_provisioning_api.html) - +https://github.com/owncloud/ocis/ocs/pull/23 diff --git a/ocs/changelog/0.3.0_2020-08-27/add-uid-gid.md b/ocs/changelog/0.3.0_2020-08-27/add-uid-gid.md index 4a6f5537b..63615690b 100644 --- a/ocs/changelog/0.3.0_2020-08-27/add-uid-gid.md +++ b/ocs/changelog/0.3.0_2020-08-27/add-uid-gid.md @@ -2,4 +2,4 @@ Enhancement: Add option to create user with uidnumber and gidnumber We have added an option to pass uidnumber and gidnumber to the ocis api while creating a new user - +https://github.com/owncloud/ocis/ocs/pull/34 diff --git a/ocs/changelog/0.3.0_2020-08-27/mimic-user-enabled-string.md b/ocs/changelog/0.3.0_2020-08-27/mimic-user-enabled-string.md index 62ba79db8..8d67da724 100644 --- a/ocs/changelog/0.3.0_2020-08-27/mimic-user-enabled-string.md +++ b/ocs/changelog/0.3.0_2020-08-27/mimic-user-enabled-string.md @@ -2,4 +2,4 @@ Bugfix: Mimic oc10 user enabled as string in provisioning api The oc10 user provisioning API uses a string for the boolean `enabled` flag. 😭 - +https://github.com/owncloud/ocis/ocs/pull/39 diff --git a/ocs/changelog/0.3.1_2020-09-02/ocs-response-format.md b/ocs/changelog/0.3.1_2020-09-02/ocs-response-format.md index 3b28bdf88..d49a8ac7b 100644 --- a/ocs/changelog/0.3.1_2020-09-02/ocs-response-format.md +++ b/ocs/changelog/0.3.1_2020-09-02/ocs-response-format.md @@ -3,5 +3,6 @@ Bugfix: Add the top level response structure to json responses Probably during moving the ocs code into the ocis-ocs repo the response format was changed. This change adds the top level response to json responses. Doing that the reponse should be compatible to the responses from OC10. - - +https://github.com/owncloud/product/issues/181 +https://github.com/owncloud/product/issues/181#issuecomment-683604168 + diff --git a/ocs/changelog/0.3.1_2020-09-02/update-ocis-accounts.md b/ocs/changelog/0.3.1_2020-09-02/update-ocis-accounts.md index ff9e35bf1..0fcea2f04 100644 --- a/ocs/changelog/0.3.1_2020-09-02/update-ocis-accounts.md +++ b/ocs/changelog/0.3.1_2020-09-02/update-ocis-accounts.md @@ -2,4 +2,4 @@ Enhancement: Update ocis-accounts update ocis-accounts to v0.4.2-0.20200828150703-2ca83cf4ac20 - +https://github.com/owncloud/ocis/ocs/pull/42 diff --git a/ocs/changelog/unreleased/fix-users-format.md b/ocs/changelog/unreleased/fix-users-format.md index 2235ad2f1..a9ffd97e5 100644 --- a/ocs/changelog/unreleased/fix-users-format.md +++ b/ocs/changelog/unreleased/fix-users-format.md @@ -4,5 +4,5 @@ The user response contained the field `displayname` but for certain responses the field `display-name` is expected. The field `display-name` was added and now both fields are returned to the client. - - +https://github.com/owncloud/product/issues/181 +https://github.com/owncloud/ocis/ocs/pull/61 diff --git a/ocs/docs/_index.md b/ocs/docs/_index.md index eb4a57168..4f0c15126 100644 --- a/ocs/docs/_index.md +++ b/ocs/docs/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Ocs" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides the OCS API which is required by some ownCloud clients. diff --git a/ocs/docs/building.md b/ocs/docs/building.md index ca2b931d9..e01237a50 100644 --- a/ocs/docs/building.md +++ b/ocs/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-ocs.git cd ocis-ocs -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-ocs -h` to see all available options. diff --git a/ocs/docs/getting-started.md b/ocs/docs/getting-started.md index c64e8d736..a082d53da 100644 --- a/ocs/docs/getting-started.md +++ b/ocs/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-ocs are hosted on . +Docker images for ocis-ocs are hosted on https://hub.docker.com/r/owncloud/ocis-ocs. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-ocs ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocs/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocs/testing/ ```console curl https://download.owncloud.com/ocis/ocis-ocs/1.0.0-beta1/ocis-ocs-1.0.0-beta1-darwin-amd64 --output ocis-ocs @@ -42,17 +41,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-ocs server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-ocs health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/ocs/docs/license.md b/ocs/docs/license.md index ca0c6bfaf..ff55edfc6 100644 --- a/ocs/docs/license.md +++ b/ocs/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-ocs geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/ocs/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/proxy/CHANGELOG.md b/proxy/CHANGELOG.md index 7c23e5dc2..ab595b460 100644 --- a/proxy/CHANGELOG.md +++ b/proxy/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes for ocis-proxy unreleased. @@ -6,52 +6,52 @@ The following sections list the changes for ocis-proxy unreleased. ## Summary -- Bugfix - Fix director selection: [#99](https://github.com/owncloud/ocis/proxy/pull/99) -- Bugfix - Add settings API and app endpoints to example config: [#93](https://github.com/owncloud/ocis/proxy/pull/93) -- Change - Remove accounts caching: [#100](https://github.com/owncloud/ocis/proxy/pull/100) -- Enhancement - Add hello API and app endpoints to example config and builtin config: [#96](https://github.com/owncloud/ocis/proxy/pull/96) -- Enhancement - Add roleIDs to the access token: [#95](https://github.com/owncloud/ocis/proxy/pull/95) +* Bugfix - Fix director selection: [#99](https://github.com/owncloud/ocis/proxy/pull/99) +* Bugfix - Add settings API and app endpoints to example config: [#93](https://github.com/owncloud/ocis/proxy/pull/93) +* Change - Remove accounts caching: [#100](https://github.com/owncloud/ocis/proxy/pull/100) +* Enhancement - Add hello API and app endpoints to example config and builtin config: [#96](https://github.com/owncloud/ocis/proxy/pull/96) +* Enhancement - Add roleIDs to the access token: [#95](https://github.com/owncloud/ocis/proxy/pull/95) ## Details -- Bugfix - Fix director selection: [#99](https://github.com/owncloud/ocis/proxy/pull/99) +* Bugfix - Fix director selection: [#99](https://github.com/owncloud/ocis/proxy/pull/99) - We fixed a bug where simultaneous requests could be executed on the wrong backend. + We fixed a bug where simultaneous requests could be executed on the wrong backend. - + https://github.com/owncloud/ocis/proxy/pull/99 -- Bugfix - Add settings API and app endpoints to example config: [#93](https://github.com/owncloud/ocis/proxy/pull/93) +* Bugfix - Add settings API and app endpoints to example config: [#93](https://github.com/owncloud/ocis/proxy/pull/93) - We had the ocis-settings API and app endpoints in the builtin config already, but they were - missing in the example config. Added them for consistency. + We had the ocis-settings API and app endpoints in the builtin config already, but they were + missing in the example config. Added them for consistency. - + https://github.com/owncloud/ocis/proxy/pull/93 -- Change - Remove accounts caching: [#100](https://github.com/owncloud/ocis/proxy/pull/100) +* Change - Remove accounts caching: [#100](https://github.com/owncloud/ocis/proxy/pull/100) - We removed the accounts cache in order to avoid problems with accounts that have been updated in - the accounts service. + We removed the accounts cache in order to avoid problems with accounts that have been updated in + the accounts service. - + https://github.com/owncloud/ocis/proxy/pull/100 -- Enhancement - Add hello API and app endpoints to example config and builtin config: [#96](https://github.com/owncloud/ocis/proxy/pull/96) +* Enhancement - Add hello API and app endpoints to example config and builtin config: [#96](https://github.com/owncloud/ocis/proxy/pull/96) - We added the ocis-hello API and app endpoints to both the example config and the builtin config. + We added the ocis-hello API and app endpoints to both the example config and the builtin config. - + https://github.com/owncloud/ocis/proxy/pull/96 -- Enhancement - Add roleIDs to the access token: [#95](https://github.com/owncloud/ocis/proxy/pull/95) +* Enhancement - Add roleIDs to the access token: [#95](https://github.com/owncloud/ocis/proxy/pull/95) - We are using the roleIDs of the authenticated user for permission checks against - ocis-settings. We added the roleIDs to the access token to have them available quickly. + We are using the roleIDs of the authenticated user for permission checks against + ocis-settings. We added the roleIDs to the access token to have them available quickly. - + https://github.com/owncloud/ocis/proxy/pull/95 -# Changelog for [0.7.0] \(2020-08-21) +# Changelog for [0.7.0] (2020-08-21) The following sections list the changes for ocis-proxy 0.7.0. @@ -59,28 +59,28 @@ The following sections list the changes for ocis-proxy 0.7.0. ## Summary -- Enhancement - Add numeric uid and gid to the access token: [#89](https://github.com/owncloud/ocis/proxy/pull/89) -- Enhancement - Add configuration options for the pre-signed url middleware: [#91](https://github.com/owncloud/ocis/proxy/issues/91) +* Enhancement - Add numeric uid and gid to the access token: [#89](https://github.com/owncloud/ocis/proxy/pull/89) +* Enhancement - Add configuration options for the pre-signed url middleware: [#91](https://github.com/owncloud/ocis/proxy/issues/91) ## Details -- Enhancement - Add numeric uid and gid to the access token: [#89](https://github.com/owncloud/ocis/proxy/pull/89) +* Enhancement - Add numeric uid and gid to the access token: [#89](https://github.com/owncloud/ocis/proxy/pull/89) - The eos storage driver is fetching the uid and gid of a user from the access token. This PR is using - the response of the accounts service to mint them in the token. + The eos storage driver is fetching the uid and gid of a user from the access token. This PR is using + the response of the accounts service to mint them in the token. - + https://github.com/owncloud/ocis/proxy/pull/89 -- Enhancement - Add configuration options for the pre-signed url middleware: [#91](https://github.com/owncloud/ocis/proxy/issues/91) +* Enhancement - Add configuration options for the pre-signed url middleware: [#91](https://github.com/owncloud/ocis/proxy/issues/91) - Added an option to define allowed http methods for pre-signed url requests. This is useful - since we only want clients to GET resources and don't upload anything with presigned requests. + Added an option to define allowed http methods for pre-signed url requests. This is useful + since we only want clients to GET resources and don't upload anything with presigned requests. - - + https://github.com/owncloud/ocis/proxy/issues/91 + https://github.com/owncloud/product/issues/150 -# Changelog for [0.6.0] \(2020-08-17) +# Changelog for [0.6.0] (2020-08-17) The following sections list the changes for ocis-proxy 0.6.0. @@ -88,53 +88,53 @@ The following sections list the changes for ocis-proxy 0.6.0. ## Summary -- Bugfix - Enable new accounts by default: [#79](https://github.com/owncloud/ocis/proxy/pull/79) -- Bugfix - Lookup user by id for presigned URLs: [#85](https://github.com/owncloud/ocis/proxy/pull/85) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#78](https://github.com/owncloud/ocis/proxy/pull/78) -- Change - Add settings and ocs group routes: [#81](https://github.com/owncloud/ocis/proxy/pull/81) -- Change - Add route for user provisioning API in ocis-ocs: [#80](https://github.com/owncloud/ocis/proxy/pull/80) +* Bugfix - Enable new accounts by default: [#79](https://github.com/owncloud/ocis/proxy/pull/79) +* Bugfix - Lookup user by id for presigned URLs: [#85](https://github.com/owncloud/ocis/proxy/pull/85) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#78](https://github.com/owncloud/ocis/proxy/pull/78) +* Change - Add settings and ocs group routes: [#81](https://github.com/owncloud/ocis/proxy/pull/81) +* Change - Add route for user provisioning API in ocis-ocs: [#80](https://github.com/owncloud/ocis/proxy/pull/80) ## Details -- Bugfix - Enable new accounts by default: [#79](https://github.com/owncloud/ocis/proxy/pull/79) +* Bugfix - Enable new accounts by default: [#79](https://github.com/owncloud/ocis/proxy/pull/79) - When new accounts are created, they also need to be enabled to be useable. + When new accounts are created, they also need to be enabled to be useable. - + https://github.com/owncloud/ocis/proxy/pull/79 -- Bugfix - Lookup user by id for presigned URLs: [#85](https://github.com/owncloud/ocis/proxy/pull/85) +* Bugfix - Lookup user by id for presigned URLs: [#85](https://github.com/owncloud/ocis/proxy/pull/85) - Phoenix will send the `userid`, not the `username` as the `OC-Credential` for presigned URLs. - This PR uses the new `ocisid` claim in the OIDC userinfo to pass the userid to the account - middleware. + Phoenix will send the `userid`, not the `username` as the `OC-Credential` for presigned URLs. + This PR uses the new `ocisid` claim in the OIDC userinfo to pass the userid to the account + middleware. - - - + https://github.com/owncloud/ocis/issues/436 + https://github.com/owncloud/ocis/proxy/pull/85 + https://github.com/owncloud/ocis-pkg/pull/50 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#78](https://github.com/owncloud/ocis/proxy/pull/78) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#78](https://github.com/owncloud/ocis/proxy/pull/78) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/proxy/pull/78 -- Change - Add settings and ocs group routes: [#81](https://github.com/owncloud/ocis/proxy/pull/81) +* Change - Add settings and ocs group routes: [#81](https://github.com/owncloud/ocis/proxy/pull/81) - Route settings requests and ocs group related requests to new services + Route settings requests and ocs group related requests to new services - + https://github.com/owncloud/ocis/proxy/pull/81 -- Change - Add route for user provisioning API in ocis-ocs: [#80](https://github.com/owncloud/ocis/proxy/pull/80) +* Change - Add route for user provisioning API in ocis-ocs: [#80](https://github.com/owncloud/ocis/proxy/pull/80) - We added a route to send requests on the user provisioning API endpoints to ocis-ocs. + We added a route to send requests on the user provisioning API endpoints to ocis-ocs. - + https://github.com/owncloud/ocis/proxy/pull/80 -# Changelog for [0.5.0] \(2020-07-23) +# Changelog for [0.5.0] (2020-07-23) The following sections list the changes for ocis-proxy 0.5.0. @@ -142,104 +142,104 @@ The following sections list the changes for ocis-proxy 0.5.0. ## Summary -- Bugfix - Provide token configuration from config: [#69](https://github.com/owncloud/ocis/proxy/pull/69) -- Bugfix - Provide token configuration from config: [#76](https://github.com/owncloud/ocis/proxy/pull/76) -- Change - Add OIDC config flags: [#66](https://github.com/owncloud/ocis/proxy/pull/66) -- Change - Mint new username property in the reva token: [#62](https://github.com/owncloud/ocis/proxy/pull/62) -- Enhancement - Add Accounts UI routes: [#65](https://github.com/owncloud/ocis/proxy/pull/65) -- Enhancement - Add option to disable TLS: [#71](https://github.com/owncloud/ocis/proxy/issues/71) -- Enhancement - Only send create home request if an account has been migrated: [#52](https://github.com/owncloud/ocis/proxy/issues/52) -- Enhancement - Create a root span on proxy that propagates down to consumers: [#64](https://github.com/owncloud/ocis/proxy/pull/64) -- Enhancement - Support signed URLs: [#73](https://github.com/owncloud/ocis/proxy/issues/73) +* Bugfix - Provide token configuration from config: [#69](https://github.com/owncloud/ocis/proxy/pull/69) +* Bugfix - Provide token configuration from config: [#76](https://github.com/owncloud/ocis/proxy/pull/76) +* Change - Add OIDC config flags: [#66](https://github.com/owncloud/ocis/proxy/pull/66) +* Change - Mint new username property in the reva token: [#62](https://github.com/owncloud/ocis/proxy/pull/62) +* Enhancement - Add Accounts UI routes: [#65](https://github.com/owncloud/ocis/proxy/pull/65) +* Enhancement - Add option to disable TLS: [#71](https://github.com/owncloud/ocis/proxy/issues/71) +* Enhancement - Only send create home request if an account has been migrated: [#52](https://github.com/owncloud/ocis/proxy/issues/52) +* Enhancement - Create a root span on proxy that propagates down to consumers: [#64](https://github.com/owncloud/ocis/proxy/pull/64) +* Enhancement - Support signed URLs: [#73](https://github.com/owncloud/ocis/proxy/issues/73) ## Details -- Bugfix - Provide token configuration from config: [#69](https://github.com/owncloud/ocis/proxy/pull/69) +* Bugfix - Provide token configuration from config: [#69](https://github.com/owncloud/ocis/proxy/pull/69) - Fixed a bug that causes the createHome middleware to crash if no configuration for the - TokenManager is propagated. + Fixed a bug that causes the createHome middleware to crash if no configuration for the + TokenManager is propagated. - + https://github.com/owncloud/ocis/proxy/pull/69 -- Bugfix - Provide token configuration from config: [#76](https://github.com/owncloud/ocis/proxy/pull/76) +* Bugfix - Provide token configuration from config: [#76](https://github.com/owncloud/ocis/proxy/pull/76) - Fixed a bug that causes the createHome middleware to crash if the createHome response has no - Status set + Fixed a bug that causes the createHome middleware to crash if the createHome response has no + Status set - + https://github.com/owncloud/ocis/proxy/pull/76 -- Change - Add OIDC config flags: [#66](https://github.com/owncloud/ocis/proxy/pull/66) +* Change - Add OIDC config flags: [#66](https://github.com/owncloud/ocis/proxy/pull/66) - To authenticate requests with an oidc provider we added two environment variables: - - `PROXY_OIDC_ISSUER="https://localhost:9200"` and - `PROXY_OIDC_INSECURE=true` + To authenticate requests with an oidc provider we added two environment variables: - + `PROXY_OIDC_ISSUER="https://localhost:9200"` and - `PROXY_OIDC_INSECURE=true` - This changes ocis-proxy to now load the oidc-middleware by default, requiring a bearer token - and exchanging the email in the OIDC claims for an account id at the ocis-accounts service. + This changes ocis-proxy to now load the oidc-middleware by default, requiring a bearer token + and exchanging the email in the OIDC claims for an account id at the ocis-accounts service. - Setting `PROXY_OIDC_ISSUER=""` will disable the OIDC middleware. + Setting `PROXY_OIDC_ISSUER=""` will disable the OIDC middleware. - + https://github.com/owncloud/ocis/proxy/pull/66 -- Change - Mint new username property in the reva token: [#62](https://github.com/owncloud/ocis/proxy/pull/62) +* Change - Mint new username property in the reva token: [#62](https://github.com/owncloud/ocis/proxy/pull/62) - An accounts username is now taken from the on_premises_sam_account_name property instead of - the preferred_name. Furthermore the group name (also from on_premises_sam_account_name - property) is now minted into the token as well. + An accounts username is now taken from the on_premises_sam_account_name property instead of + the preferred_name. Furthermore the group name (also from on_premises_sam_account_name + property) is now minted into the token as well. - + https://github.com/owncloud/ocis/proxy/pull/62 -- Enhancement - Add Accounts UI routes: [#65](https://github.com/owncloud/ocis/proxy/pull/65) +* Enhancement - Add Accounts UI routes: [#65](https://github.com/owncloud/ocis/proxy/pull/65) - The accounts service has a ui that requires routing - `/api/v0/accounts` and - `/accounts.js` + The accounts service has a ui that requires routing - `/api/v0/accounts` and - `/accounts.js` - To http://localhost:9181 + To http://localhost:9181 - + https://github.com/owncloud/ocis/proxy/pull/65 -- Enhancement - Add option to disable TLS: [#71](https://github.com/owncloud/ocis/proxy/issues/71) +* Enhancement - Add option to disable TLS: [#71](https://github.com/owncloud/ocis/proxy/issues/71) - Can be used to disable TLS when the ocis-proxy is behind an TLS-Terminating reverse proxy. + Can be used to disable TLS when the ocis-proxy is behind an TLS-Terminating reverse proxy. - Env PROXY_TLS=false or --tls=false + Env PROXY_TLS=false or --tls=false - - + https://github.com/owncloud/ocis/proxy/issues/71 + https://github.com/owncloud/ocis/proxy/pull/72 -- Enhancement - Only send create home request if an account has been migrated: [#52](https://github.com/owncloud/ocis/proxy/issues/52) +* Enhancement - Only send create home request if an account has been migrated: [#52](https://github.com/owncloud/ocis/proxy/issues/52) - This change adds a check if an account has been migrated by getting it from the ocis-accounts - service. If no account is returned it means it hasn't been migrated. + This change adds a check if an account has been migrated by getting it from the ocis-accounts + service. If no account is returned it means it hasn't been migrated. - - + https://github.com/owncloud/ocis/proxy/issues/52 + https://github.com/owncloud/ocis/proxy/pull/63 -- Enhancement - Create a root span on proxy that propagates down to consumers: [#64](https://github.com/owncloud/ocis/proxy/pull/64) +* Enhancement - Create a root span on proxy that propagates down to consumers: [#64](https://github.com/owncloud/ocis/proxy/pull/64) - In order to propagate and correctly associate a span with a request we need a root span that gets - sent to other services. + In order to propagate and correctly associate a span with a request we need a root span that gets + sent to other services. - + https://github.com/owncloud/ocis/proxy/pull/64 -- Enhancement - Support signed URLs: [#73](https://github.com/owncloud/ocis/proxy/issues/73) +* Enhancement - Support signed URLs: [#73](https://github.com/owncloud/ocis/proxy/issues/73) - We added a middleware that verifies signed urls as generated by the owncloud-sdk. This allows - directly downloading large files with browsers instead of using `blob://` urls, which eats - memory ... + We added a middleware that verifies signed urls as generated by the owncloud-sdk. This allows + directly downloading large files with browsers instead of using `blob://` urls, which eats + memory ... - - - - + https://github.com/owncloud/ocis/proxy/issues/73 + https://github.com/owncloud/ocis/proxy/pull/75 + https://github.com/owncloud/ocis-ocs/pull/18 + https://github.com/owncloud/owncloud-sdk/pull/504 -# Changelog for [0.4.0] \(2020-06-25) +# Changelog for [0.4.0] (2020-06-25) The following sections list the changes for ocis-proxy 0.4.0. @@ -247,100 +247,100 @@ The following sections list the changes for ocis-proxy 0.4.0. ## Summary -- Bugfix - Accounts service response was ignored: [#43](https://github.com/owncloud/ocis/proxy/pull/43) -- Bugfix - Fix x-access-token in header: [#41](https://github.com/owncloud/ocis/proxy/pull/41) -- Change - Point /data endpoint to reva frontend: [#45](https://github.com/owncloud/ocis/proxy/pull/45) -- Change - Send autocreate home request to reva gateway: [#51](https://github.com/owncloud/ocis/proxy/pull/51) -- Change - Update to new accounts API: [#39](https://github.com/owncloud/ocis/proxy/issues/39) -- Enhancement - Retrieve Account UUID From User Claims: [#36](https://github.com/owncloud/ocis/proxy/pull/36) -- Enhancement - Create account if it doesn't exist in ocis-accounts: [#55](https://github.com/owncloud/ocis/proxy/issues/55) -- Enhancement - Disable keep-alive on server-side OIDC requests: [#268](https://github.com/owncloud/ocis/issues/268) -- Enhancement - Make jwt secret configurable: [#41](https://github.com/owncloud/ocis/proxy/pull/41) -- Enhancement - Respect account_enabled flag: [#53](https://github.com/owncloud/ocis/proxy/issues/53) +* Bugfix - Accounts service response was ignored: [#43](https://github.com/owncloud/ocis/proxy/pull/43) +* Bugfix - Fix x-access-token in header: [#41](https://github.com/owncloud/ocis/proxy/pull/41) +* Change - Point /data endpoint to reva frontend: [#45](https://github.com/owncloud/ocis/proxy/pull/45) +* Change - Send autocreate home request to reva gateway: [#51](https://github.com/owncloud/ocis/proxy/pull/51) +* Change - Update to new accounts API: [#39](https://github.com/owncloud/ocis/proxy/issues/39) +* Enhancement - Retrieve Account UUID From User Claims: [#36](https://github.com/owncloud/ocis/proxy/pull/36) +* Enhancement - Create account if it doesn't exist in ocis-accounts: [#55](https://github.com/owncloud/ocis/proxy/issues/55) +* Enhancement - Disable keep-alive on server-side OIDC requests: [#268](https://github.com/owncloud/ocis/issues/268) +* Enhancement - Make jwt secret configurable: [#41](https://github.com/owncloud/ocis/proxy/pull/41) +* Enhancement - Respect account_enabled flag: [#53](https://github.com/owncloud/ocis/proxy/issues/53) ## Details -- Bugfix - Accounts service response was ignored: [#43](https://github.com/owncloud/ocis/proxy/pull/43) +* Bugfix - Accounts service response was ignored: [#43](https://github.com/owncloud/ocis/proxy/pull/43) - We fixed an error in the AccountUUID middleware that was responsible for ignoring an account - uuid provided by the accounts service. + We fixed an error in the AccountUUID middleware that was responsible for ignoring an account + uuid provided by the accounts service. - + https://github.com/owncloud/ocis/proxy/pull/43 -- Bugfix - Fix x-access-token in header: [#41](https://github.com/owncloud/ocis/proxy/pull/41) +* Bugfix - Fix x-access-token in header: [#41](https://github.com/owncloud/ocis/proxy/pull/41) - We fixed setting the x-access-token in the request header, which was broken before. + We fixed setting the x-access-token in the request header, which was broken before. - - + https://github.com/owncloud/ocis/proxy/pull/41 + https://github.com/owncloud/ocis/proxy/pull/46 -- Change - Point /data endpoint to reva frontend: [#45](https://github.com/owncloud/ocis/proxy/pull/45) +* Change - Point /data endpoint to reva frontend: [#45](https://github.com/owncloud/ocis/proxy/pull/45) - Adjusted example config files to point /data to the reva frontend. + Adjusted example config files to point /data to the reva frontend. - + https://github.com/owncloud/ocis/proxy/pull/45 -- Change - Send autocreate home request to reva gateway: [#51](https://github.com/owncloud/ocis/proxy/pull/51) +* Change - Send autocreate home request to reva gateway: [#51](https://github.com/owncloud/ocis/proxy/pull/51) - Send autocreate home request to reva gateway + Send autocreate home request to reva gateway - + https://github.com/owncloud/ocis/proxy/pull/51 -- Change - Update to new accounts API: [#39](https://github.com/owncloud/ocis/proxy/issues/39) +* Change - Update to new accounts API: [#39](https://github.com/owncloud/ocis/proxy/issues/39) - Update to new accounts API + Update to new accounts API - + https://github.com/owncloud/ocis/proxy/issues/39 -- Enhancement - Retrieve Account UUID From User Claims: [#36](https://github.com/owncloud/ocis/proxy/pull/36) +* Enhancement - Retrieve Account UUID From User Claims: [#36](https://github.com/owncloud/ocis/proxy/pull/36) - OIDC Middleware can make use of uuidFromClaims to trade claims.Email for an account's UUID. - For this, a general purpose cache was added that caches on a per-request basis, meaning - whenever the request parameters match a set of keys, the cached value is returned, saving a - round trip to the accounts service that otherwise would happen in every single request. + OIDC Middleware can make use of uuidFromClaims to trade claims.Email for an account's UUID. + For this, a general purpose cache was added that caches on a per-request basis, meaning + whenever the request parameters match a set of keys, the cached value is returned, saving a + round trip to the accounts service that otherwise would happen in every single request. - + https://github.com/owncloud/ocis/proxy/pull/36 -- Enhancement - Create account if it doesn't exist in ocis-accounts: [#55](https://github.com/owncloud/ocis/proxy/issues/55) +* Enhancement - Create account if it doesn't exist in ocis-accounts: [#55](https://github.com/owncloud/ocis/proxy/issues/55) - The accounts_uuid middleware tries to get the account from ocis-accounts. If it doens't exist - there yet the proxy creates the account using the ocis-account api. + The accounts_uuid middleware tries to get the account from ocis-accounts. If it doens't exist + there yet the proxy creates the account using the ocis-account api. - - + https://github.com/owncloud/ocis/proxy/issues/55 + https://github.com/owncloud/ocis/proxy/issues/58 -- Enhancement - Disable keep-alive on server-side OIDC requests: [#268](https://github.com/owncloud/ocis/issues/268) +* Enhancement - Disable keep-alive on server-side OIDC requests: [#268](https://github.com/owncloud/ocis/issues/268) - This should reduce file-descriptor counts + This should reduce file-descriptor counts - - - + https://github.com/owncloud/ocis/issues/268 + https://github.com/owncloud/ocis/proxy/pull/42 + https://github.com/cs3org/reva/pull/787 -- Enhancement - Make jwt secret configurable: [#41](https://github.com/owncloud/ocis/proxy/pull/41) +* Enhancement - Make jwt secret configurable: [#41](https://github.com/owncloud/ocis/proxy/pull/41) - We added a config option for the reva token manager JWTSecret. It was hardcoded before and is now - configurable. + We added a config option for the reva token manager JWTSecret. It was hardcoded before and is now + configurable. - + https://github.com/owncloud/ocis/proxy/pull/41 -- Enhancement - Respect account_enabled flag: [#53](https://github.com/owncloud/ocis/proxy/issues/53) +* Enhancement - Respect account_enabled flag: [#53](https://github.com/owncloud/ocis/proxy/issues/53) - If the account returned by the accounts service has the account_enabled flag set to false, the - proxy will return immediately with the status code unauthorized. + If the account returned by the accounts service has the account_enabled flag set to false, the + proxy will return immediately with the status code unauthorized. - + https://github.com/owncloud/ocis/proxy/issues/53 -# Changelog for [0.3.1] \(2020-03-31) +# Changelog for [0.3.1] (2020-03-31) The following sections list the changes for ocis-proxy 0.3.1. @@ -348,17 +348,17 @@ The following sections list the changes for ocis-proxy 0.3.1. ## Summary -- Change - Update ocis-pkg: [#30](https://github.com/owncloud/ocis/proxy/pull/30) +* Change - Update ocis-pkg: [#30](https://github.com/owncloud/ocis/proxy/pull/30) ## Details -- Change - Update ocis-pkg: [#30](https://github.com/owncloud/ocis/proxy/pull/30) +* Change - Update ocis-pkg: [#30](https://github.com/owncloud/ocis/proxy/pull/30) - We updated ocis-pkg from 2.0.2 to 2.2.0. + We updated ocis-pkg from 2.0.2 to 2.2.0. - + https://github.com/owncloud/ocis/proxy/pull/30 -# Changelog for [0.3.0] \(2020-03-30) +# Changelog for [0.3.0] (2020-03-30) The following sections list the changes for ocis-proxy 0.3.0. @@ -366,37 +366,37 @@ The following sections list the changes for ocis-proxy 0.3.0. ## Summary -- Change - Insecure http-requests are now redirected to https: [#29](https://github.com/owncloud/ocis/proxy/pull/29) -- Enhancement - Configurable OpenID Connect client: [#27](https://github.com/owncloud/ocis/proxy/pull/27) -- Enhancement - Add policy selectors: [#4](https://github.com/owncloud/ocis/proxy/issues/4) +* Change - Insecure http-requests are now redirected to https: [#29](https://github.com/owncloud/ocis/proxy/pull/29) +* Enhancement - Configurable OpenID Connect client: [#27](https://github.com/owncloud/ocis/proxy/pull/27) +* Enhancement - Add policy selectors: [#4](https://github.com/owncloud/ocis/proxy/issues/4) ## Details -- Change - Insecure http-requests are now redirected to https: [#29](https://github.com/owncloud/ocis/proxy/pull/29) +* Change - Insecure http-requests are now redirected to https: [#29](https://github.com/owncloud/ocis/proxy/pull/29) - + https://github.com/owncloud/ocis/proxy/pull/29 -- Enhancement - Configurable OpenID Connect client: [#27](https://github.com/owncloud/ocis/proxy/pull/27) +* Enhancement - Configurable OpenID Connect client: [#27](https://github.com/owncloud/ocis/proxy/pull/27) - The proxy will try to authenticate every request with the configured OIDC provider. + The proxy will try to authenticate every request with the configured OIDC provider. - See configs/proxy-example.oidc.json for an example-configuration. + See configs/proxy-example.oidc.json for an example-configuration. - + https://github.com/owncloud/ocis/proxy/pull/27 -- Enhancement - Add policy selectors: [#4](https://github.com/owncloud/ocis/proxy/issues/4) +* Enhancement - Add policy selectors: [#4](https://github.com/owncloud/ocis/proxy/issues/4) - "Static-Policy" can be configured to always select a specific policy. See: - config/proxy-example.json. + "Static-Policy" can be configured to always select a specific policy. See: + config/proxy-example.json. - "Migration-Policy" selects policy depending on existence of the uid in the ocis-accounts - service. See: config/proxy-example-migration.json + "Migration-Policy" selects policy depending on existence of the uid in the ocis-accounts + service. See: config/proxy-example-migration.json - + https://github.com/owncloud/ocis/proxy/issues/4 -# Changelog for [0.2.1] \(2020-03-25) +# Changelog for [0.2.1] (2020-03-25) The following sections list the changes for ocis-proxy 0.2.1. @@ -404,15 +404,15 @@ The following sections list the changes for ocis-proxy 0.2.1. ## Summary -- Bugfix - Set TLS-Certificate correctly: [#25](https://github.com/owncloud/ocis/proxy/pull/25) +* Bugfix - Set TLS-Certificate correctly: [#25](https://github.com/owncloud/ocis/proxy/pull/25) ## Details -- Bugfix - Set TLS-Certificate correctly: [#25](https://github.com/owncloud/ocis/proxy/pull/25) +* Bugfix - Set TLS-Certificate correctly: [#25](https://github.com/owncloud/ocis/proxy/pull/25) - + https://github.com/owncloud/ocis/proxy/pull/25 -# Changelog for [0.2.0] \(2020-03-25) +# Changelog for [0.2.0] (2020-03-25) The following sections list the changes for ocis-proxy 0.2.0. @@ -420,34 +420,34 @@ The following sections list the changes for ocis-proxy 0.2.0. ## Summary -- Change - Route requests based on regex or query parameters: [#21](https://github.com/owncloud/ocis/proxy/issues/21) -- Enhancement - Proxy client urls in default configuration: [#19](https://github.com/owncloud/ocis/proxy/issues/19) -- Enhancement - Make TLS-Cert configurable: [#14](https://github.com/owncloud/ocis/proxy/pull/14) +* Change - Route requests based on regex or query parameters: [#21](https://github.com/owncloud/ocis/proxy/issues/21) +* Enhancement - Proxy client urls in default configuration: [#19](https://github.com/owncloud/ocis/proxy/issues/19) +* Enhancement - Make TLS-Cert configurable: [#14](https://github.com/owncloud/ocis/proxy/pull/14) ## Details -- Change - Route requests based on regex or query parameters: [#21](https://github.com/owncloud/ocis/proxy/issues/21) +* Change - Route requests based on regex or query parameters: [#21](https://github.com/owncloud/ocis/proxy/issues/21) - Some requests needed to be distinguished based on a pattern or a query parameter. We've - implemented the functionality to route requests based on different conditions. + Some requests needed to be distinguished based on a pattern or a query parameter. We've + implemented the functionality to route requests based on different conditions. - + https://github.com/owncloud/ocis/proxy/issues/21 -- Enhancement - Proxy client urls in default configuration: [#19](https://github.com/owncloud/ocis/proxy/issues/19) +* Enhancement - Proxy client urls in default configuration: [#19](https://github.com/owncloud/ocis/proxy/issues/19) - Proxy /status.php and index.php/\* + Proxy /status.php and index.php/* - + https://github.com/owncloud/ocis/proxy/issues/19 -- Enhancement - Make TLS-Cert configurable: [#14](https://github.com/owncloud/ocis/proxy/pull/14) +* Enhancement - Make TLS-Cert configurable: [#14](https://github.com/owncloud/ocis/proxy/pull/14) - Before a generates certificates on every start was used for dev purposes. + Before a generates certificates on every start was used for dev purposes. - + https://github.com/owncloud/ocis/proxy/pull/14 -# Changelog for [0.1.0] \(2020-03-18) +# Changelog for [0.1.0] (2020-03-18) The following sections list the changes for ocis-proxy 0.1.0. @@ -455,23 +455,24 @@ The following sections list the changes for ocis-proxy 0.1.0. ## Summary -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/proxy/issues/1) -- Enhancement - Load Proxy Policies at Runtime: [#17](https://github.com/owncloud/ocis/proxy/issues/17) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/proxy/issues/1) +* Enhancement - Load Proxy Policies at Runtime: [#17](https://github.com/owncloud/ocis/proxy/issues/17) ## Details -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/proxy/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/proxy/issues/1) - Just prepared an initial basic version. + Just prepared an initial basic version. - + https://github.com/owncloud/ocis/proxy/issues/1 -- Enhancement - Load Proxy Policies at Runtime: [#17](https://github.com/owncloud/ocis/proxy/issues/17) +* Enhancement - Load Proxy Policies at Runtime: [#17](https://github.com/owncloud/ocis/proxy/issues/17) - While a proxy without policies is of no use, the current state of ocis-proxy expects a config - file either at an expected Viper location or specified via -- config-file flag. To ease - deployments and ensure a working set of policies out of the box we need a series of defaults. + While a proxy without policies is of no use, the current state of ocis-proxy expects a config + file either at an expected Viper location or specified via -- config-file flag. To ease + deployments and ensure a working set of policies out of the box we need a series of defaults. + + https://github.com/owncloud/ocis/proxy/issues/17 + https://github.com/owncloud/ocis/proxy/pull/16 - - diff --git a/proxy/README.md b/proxy/README.md index 24d5f267e..110a9bd5e 100644 --- a/proxy/README.md +++ b/proxy/README.md @@ -1,7 +1,7 @@ # ownCloud Infinite Scale: Proxy [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-proxy/status.svg)](https://cloud.drone.io/owncloud/ocis-proxy) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/636af6e2270e4c7ca0f3eb2efc814c21)](https://www.codacy.com/gh/owncloud/ocis-proxy?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-bridge&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/636af6e2270e4c7ca0f3eb2efc814c21)](https://www.codacy.com/gh/owncloud/ocis-proxy?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-bridge&utm_campaign=Badge_Grade) [![Codacy Badge](https://api.codacy.com/project/badge/Coverage/636af6e2270e4c7ca0f3eb2efc814c21)](https://www.codacy.com/gh/owncloud/ocis-proxy?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-bridge&utm_campaign=Badge_Coverage) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-proxy?status.svg)](http://godoc.org/github.com/owncloud/ocis-proxy) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-proxy)](http://goreportcard.com/report/github.com/owncloud/ocis-proxy) @@ -12,9 +12,7 @@ ## Install You can download prebuilt binaries from the GitHub releases or from our [download mirrors](http://download.owncloud.com/ocis/proxy/). For instructions how to install this on your platform you should take a look at our [documentation](https://owncloud.github.io/ocis-proxy/) - -* * * - +**** ## Development Make sure you have a working Go environment, for further reference or a guide take a look at the [install instructions](http://golang.org/doc/install.html). This project requires Go >= v1.13. @@ -30,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/proxy/changelog/0.1.0_2020-03-18/runtime-policies.md b/proxy/changelog/0.1.0_2020-03-18/runtime-policies.md index 4c5a8dc0f..592e74240 100644 --- a/proxy/changelog/0.1.0_2020-03-18/runtime-policies.md +++ b/proxy/changelog/0.1.0_2020-03-18/runtime-policies.md @@ -3,5 +3,5 @@ Enhancement: Load Proxy Policies at Runtime While a proxy without policies is of no use, the current state of ocis-proxy expects a config file either at an expected Viper location or specified via -- config-file flag. To ease deployments and ensure a working set of policies out of the box we need a series of defaults. - - +https://github.com/owncloud/ocis/proxy/issues/17 +https://github.com/owncloud/ocis/proxy/pull/16 diff --git a/proxy/changelog/0.2.0_2020-03-25/advanced-route-matching.md b/proxy/changelog/0.2.0_2020-03-25/advanced-route-matching.md index ed6bb88be..3b7080c3f 100644 --- a/proxy/changelog/0.2.0_2020-03-25/advanced-route-matching.md +++ b/proxy/changelog/0.2.0_2020-03-25/advanced-route-matching.md @@ -3,4 +3,4 @@ Change: Route requests based on regex or query parameters Some requests needed to be distinguished based on a pattern or a query parameter. We've implemented the functionality to route requests based on different conditions. - +https://github.com/owncloud/ocis/proxy/issues/21 diff --git a/proxy/changelog/0.2.0_2020-03-25/client-urls.md b/proxy/changelog/0.2.0_2020-03-25/client-urls.md index 4cf8eac58..922002ade 100644 --- a/proxy/changelog/0.2.0_2020-03-25/client-urls.md +++ b/proxy/changelog/0.2.0_2020-03-25/client-urls.md @@ -1,5 +1,5 @@ Enhancement: Proxy client urls in default configuration -Proxy /status.php and index.php/\* +Proxy /status.php and index.php/* - +https://github.com/owncloud/ocis/proxy/issues/19 diff --git a/proxy/changelog/0.2.0_2020-03-25/tls-cert-configurable.md b/proxy/changelog/0.2.0_2020-03-25/tls-cert-configurable.md index 2831de005..070bbbb0d 100644 --- a/proxy/changelog/0.2.0_2020-03-25/tls-cert-configurable.md +++ b/proxy/changelog/0.2.0_2020-03-25/tls-cert-configurable.md @@ -2,4 +2,4 @@ Enhancement: Make TLS-Cert configurable Before a generates certificates on every start was used for dev purposes. - +https://github.com/owncloud/ocis/proxy/pull/14 diff --git a/proxy/changelog/0.2.1_2020-03-25/fix-set-tls-cert-correctly.md b/proxy/changelog/0.2.1_2020-03-25/fix-set-tls-cert-correctly.md index 9b024a089..e6734910b 100644 --- a/proxy/changelog/0.2.1_2020-03-25/fix-set-tls-cert-correctly.md +++ b/proxy/changelog/0.2.1_2020-03-25/fix-set-tls-cert-correctly.md @@ -1,3 +1,3 @@ Bugfix: Set TLS-Certificate correctly - +https://github.com/owncloud/ocis/proxy/pull/25 diff --git a/proxy/changelog/0.3.0_2020-03-30/add-oidc.md b/proxy/changelog/0.3.0_2020-03-30/add-oidc.md index 903b007a7..adcbf1671 100644 --- a/proxy/changelog/0.3.0_2020-03-30/add-oidc.md +++ b/proxy/changelog/0.3.0_2020-03-30/add-oidc.md @@ -4,4 +4,5 @@ The proxy will try to authenticate every request with the configured OIDC provid See configs/proxy-example.oidc.json for an example-configuration. - +https://github.com/owncloud/ocis/proxy/pull/27 + diff --git a/proxy/changelog/0.3.0_2020-03-30/policy_selectors.md b/proxy/changelog/0.3.0_2020-03-30/policy_selectors.md index c4f92591b..09255fc2d 100644 --- a/proxy/changelog/0.3.0_2020-03-30/policy_selectors.md +++ b/proxy/changelog/0.3.0_2020-03-30/policy_selectors.md @@ -6,4 +6,5 @@ See: config/proxy-example.json. "Migration-Policy" selects policy depending on existence of the uid in the ocis-accounts service. See: config/proxy-example-migration.json - +https://github.com/owncloud/ocis/proxy/issues/4 + diff --git a/proxy/changelog/0.3.0_2020-03-30/redirect_to_https.md b/proxy/changelog/0.3.0_2020-03-30/redirect_to_https.md index a2a33ea87..1558d3eaf 100644 --- a/proxy/changelog/0.3.0_2020-03-30/redirect_to_https.md +++ b/proxy/changelog/0.3.0_2020-03-30/redirect_to_https.md @@ -1,3 +1,4 @@ Change: Insecure http-requests are now redirected to https - +https://github.com/owncloud/ocis/proxy/pull/29 + diff --git a/proxy/changelog/0.4.0_2020-06-25/auto_provision_accounts.md b/proxy/changelog/0.4.0_2020-06-25/auto_provision_accounts.md index 00e846d48..eb53f7ba5 100644 --- a/proxy/changelog/0.4.0_2020-06-25/auto_provision_accounts.md +++ b/proxy/changelog/0.4.0_2020-06-25/auto_provision_accounts.md @@ -3,5 +3,5 @@ Enhancement: create account if it doesn't exist in ocis-accounts The accounts_uuid middleware tries to get the account from ocis-accounts. If it doens't exist there yet the proxy creates the account using the ocis-account api. - - +https://github.com/owncloud/ocis/proxy/issues/55 +https://github.com/owncloud/ocis/proxy/issues/58 diff --git a/proxy/changelog/0.4.0_2020-06-25/respect_account_enabled_flag.md b/proxy/changelog/0.4.0_2020-06-25/respect_account_enabled_flag.md index 080c06546..1fc5eb311 100644 --- a/proxy/changelog/0.4.0_2020-06-25/respect_account_enabled_flag.md +++ b/proxy/changelog/0.4.0_2020-06-25/respect_account_enabled_flag.md @@ -3,4 +3,4 @@ Enhancement: respect account_enabled flag If the account returned by the accounts service has the account_enabled flag set to false, the proxy will return immediately with the status code unauthorized. - +https://github.com/owncloud/ocis/proxy/issues/53 diff --git a/proxy/changelog/0.5.0_2020-07-23/add-accounts-ui-routes.md b/proxy/changelog/0.5.0_2020-07-23/add-accounts-ui-routes.md index 354acfd08..76ea57134 100644 --- a/proxy/changelog/0.5.0_2020-07-23/add-accounts-ui-routes.md +++ b/proxy/changelog/0.5.0_2020-07-23/add-accounts-ui-routes.md @@ -1,10 +1,9 @@ Enhancement: Add Accounts UI routes The accounts service has a ui that requires routing +- `/api/v0/accounts` and +- `/accounts.js` -- `/api/v0/accounts` and -- `/accounts.js` +to http://localhost:9181 -to http://localhost:9181 - - +https://github.com/owncloud/ocis/proxy/pull/65 diff --git a/proxy/changelog/0.5.0_2020-07-23/add-disable-tls.md b/proxy/changelog/0.5.0_2020-07-23/add-disable-tls.md index 3f28ea2de..417549bd8 100644 --- a/proxy/changelog/0.5.0_2020-07-23/add-disable-tls.md +++ b/proxy/changelog/0.5.0_2020-07-23/add-disable-tls.md @@ -5,5 +5,5 @@ TLS-Terminating reverse proxy. env PROXY_TLS=false or --tls=false - - +https://github.com/owncloud/ocis/proxy/issues/71 +https://github.com/owncloud/ocis/proxy/pull/72 diff --git a/proxy/changelog/0.5.0_2020-07-23/add-oidc-config-flags.md b/proxy/changelog/0.5.0_2020-07-23/add-oidc-config-flags.md index 6aac1a82e..5bf308eb3 100644 --- a/proxy/changelog/0.5.0_2020-07-23/add-oidc-config-flags.md +++ b/proxy/changelog/0.5.0_2020-07-23/add-oidc-config-flags.md @@ -1,12 +1,11 @@ Change: Add OIDC config flags To authenticate requests with an oidc provider we added two environment variables: - -- `PROXY_OIDC_ISSUER="https://localhost:9200"` and -- `PROXY_OIDC_INSECURE=true` +- `PROXY_OIDC_ISSUER="https://localhost:9200"` and +- `PROXY_OIDC_INSECURE=true` This changes ocis-proxy to now load the oidc-middleware by default, requiring a bearer token and exchanging the email in the OIDC claims for an account id at the ocis-accounts service. Setting `PROXY_OIDC_ISSUER=""` will disable the OIDC middleware. - +https://github.com/owncloud/ocis/proxy/pull/66 diff --git a/proxy/changelog/0.5.0_2020-07-23/create-home-if-migrated.md b/proxy/changelog/0.5.0_2020-07-23/create-home-if-migrated.md index 014116874..b8434f9a3 100644 --- a/proxy/changelog/0.5.0_2020-07-23/create-home-if-migrated.md +++ b/proxy/changelog/0.5.0_2020-07-23/create-home-if-migrated.md @@ -3,5 +3,5 @@ Enhancement: only send create home request if an account has been migrated This change adds a check if an account has been migrated by getting it from the ocis-accounts service. If no account is returned it means it hasn't been migrated. - - +https://github.com/owncloud/ocis/proxy/issues/52 +https://github.com/owncloud/ocis/proxy/pull/63 diff --git a/proxy/changelog/0.5.0_2020-07-23/fix-createhome-middleware.md b/proxy/changelog/0.5.0_2020-07-23/fix-createhome-middleware.md index f684e8345..0eb2b82e5 100644 --- a/proxy/changelog/0.5.0_2020-07-23/fix-createhome-middleware.md +++ b/proxy/changelog/0.5.0_2020-07-23/fix-createhome-middleware.md @@ -2,4 +2,4 @@ Bugfix: Provide token configuration from config Fixed a bug that causes the createHome middleware to crash if no configuration for the TokenManager is propagated. - +https://github.com/owncloud/ocis/proxy/pull/69 diff --git a/proxy/changelog/0.5.0_2020-07-23/fix-createhome-segfault.md b/proxy/changelog/0.5.0_2020-07-23/fix-createhome-segfault.md index 3cb82b8a9..3cf8fb0d5 100644 --- a/proxy/changelog/0.5.0_2020-07-23/fix-createhome-segfault.md +++ b/proxy/changelog/0.5.0_2020-07-23/fix-createhome-segfault.md @@ -2,4 +2,4 @@ Bugfix: Provide token configuration from config Fixed a bug that causes the createHome middleware to crash if the createHome response has no Status set - +https://github.com/owncloud/ocis/proxy/pull/76 diff --git a/proxy/changelog/0.5.0_2020-07-23/root-tracing.md b/proxy/changelog/0.5.0_2020-07-23/root-tracing.md index 54ac2ebc4..eb2755a58 100644 --- a/proxy/changelog/0.5.0_2020-07-23/root-tracing.md +++ b/proxy/changelog/0.5.0_2020-07-23/root-tracing.md @@ -2,4 +2,4 @@ Enhancement: Create a root span on proxy that propagates down to consumers In order to propagate and correctly associate a span with a request we need a root span that gets sent to other services. - +https://github.com/owncloud/ocis/proxy/pull/64 diff --git a/proxy/changelog/0.5.0_2020-07-23/support-signed-urls.md b/proxy/changelog/0.5.0_2020-07-23/support-signed-urls.md index d2adb432a..06cf43a90 100644 --- a/proxy/changelog/0.5.0_2020-07-23/support-signed-urls.md +++ b/proxy/changelog/0.5.0_2020-07-23/support-signed-urls.md @@ -2,7 +2,7 @@ Enhancement: Support signed URLs We added a middleware that verifies signed urls as generated by the owncloud-sdk. This allows directly downloading large files with browsers instead of using `blob://` urls, which eats memory ... - - - - +https://github.com/owncloud/ocis/proxy/issues/73 +https://github.com/owncloud/ocis/proxy/pull/75 +https://github.com/owncloud/ocis-ocs/pull/18 +https://github.com/owncloud/owncloud-sdk/pull/504 diff --git a/proxy/changelog/0.5.0_2020-07-23/user-and-group-name-mapping.md b/proxy/changelog/0.5.0_2020-07-23/user-and-group-name-mapping.md index f918a92a2..a930064f2 100644 --- a/proxy/changelog/0.5.0_2020-07-23/user-and-group-name-mapping.md +++ b/proxy/changelog/0.5.0_2020-07-23/user-and-group-name-mapping.md @@ -3,4 +3,4 @@ Change: mint new username property in the reva token An accounts username is now taken from the on_premises_sam_account_name property instead of the preferred_name. Furthermore the group name (also from on_premises_sam_account_name property) is now minted into the token as well. - +https://github.com/owncloud/ocis/proxy/pull/62 diff --git a/proxy/changelog/0.6.0_2020-08-17/enable-new-accounts.md b/proxy/changelog/0.6.0_2020-08-17/enable-new-accounts.md index 154d579f8..0178bad6b 100644 --- a/proxy/changelog/0.6.0_2020-08-17/enable-new-accounts.md +++ b/proxy/changelog/0.6.0_2020-08-17/enable-new-accounts.md @@ -2,4 +2,4 @@ Bugfix: enable new accounts by default When new accounts are created, they also need to be enabled to be useable. - +https://github.com/owncloud/ocis/proxy/pull/79 diff --git a/proxy/changelog/0.6.0_2020-08-17/presigned-url-lookup-fix.md b/proxy/changelog/0.6.0_2020-08-17/presigned-url-lookup-fix.md index 31bf89c64..027da0085 100644 --- a/proxy/changelog/0.6.0_2020-08-17/presigned-url-lookup-fix.md +++ b/proxy/changelog/0.6.0_2020-08-17/presigned-url-lookup-fix.md @@ -2,6 +2,6 @@ Bugfix: Lookup user by id for presigned URLs Phoenix will send the `userid`, not the `username` as the `OC-Credential` for presigned URLs. This PR uses the new `ocisid` claim in the OIDC userinfo to pass the userid to the account middleware. - - - +https://github.com/owncloud/ocis/proxy/pull/85 +https://github.com/owncloud/ocis-pkg/pull/50 +https://github.com/owncloud/ocis/issues/436 diff --git a/proxy/changelog/0.6.0_2020-08-17/use-alpine-latest.md b/proxy/changelog/0.6.0_2020-08-17/use-alpine-latest.md index fc97348f1..f5a2b0a73 100644 --- a/proxy/changelog/0.6.0_2020-08-17/use-alpine-latest.md +++ b/proxy/changelog/0.6.0_2020-08-17/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/proxy/pull/78 diff --git a/proxy/changelog/0.6.0_2020-08-17/user-provisioning-api.md b/proxy/changelog/0.6.0_2020-08-17/user-provisioning-api.md index f59a26012..4b611b900 100644 --- a/proxy/changelog/0.6.0_2020-08-17/user-provisioning-api.md +++ b/proxy/changelog/0.6.0_2020-08-17/user-provisioning-api.md @@ -2,4 +2,4 @@ Change: Add route for user provisioning API in ocis-ocs We added a route to send requests on the user provisioning API endpoints to ocis-ocs. - +https://github.com/owncloud/ocis/proxy/pull/80 diff --git a/proxy/changelog/0.7.0_2020-08-21/mint-uid-and-gid.md b/proxy/changelog/0.7.0_2020-08-21/mint-uid-and-gid.md index ae434d874..122f181a7 100644 --- a/proxy/changelog/0.7.0_2020-08-21/mint-uid-and-gid.md +++ b/proxy/changelog/0.7.0_2020-08-21/mint-uid-and-gid.md @@ -2,4 +2,4 @@ Enhancement: Add numeric uid and gid to the access token The eos storage driver is fetching the uid and gid of a user from the access token. This PR is using the response of the accounts service to mint them in the token. - +https://github.com/owncloud/ocis/proxy/pull/89 diff --git a/proxy/changelog/0.7.0_2020-08-21/pre-signed-url-configuration.md b/proxy/changelog/0.7.0_2020-08-21/pre-signed-url-configuration.md index 93912d2b2..96f439608 100644 --- a/proxy/changelog/0.7.0_2020-08-21/pre-signed-url-configuration.md +++ b/proxy/changelog/0.7.0_2020-08-21/pre-signed-url-configuration.md @@ -3,5 +3,5 @@ Enhancement: add configuration options for the pre-signed url middleware Added an option to define allowed http methods for pre-signed url requests. This is useful since we only want clients to GET resources and don't upload anything with presigned requests. - - +https://github.com/owncloud/ocis/proxy/issues/91 +https://github.com/owncloud/product/issues/150 diff --git a/proxy/changelog/unreleased/fix-director-selection.md b/proxy/changelog/unreleased/fix-director-selection.md index 255ad90ae..585d44e6d 100644 --- a/proxy/changelog/unreleased/fix-director-selection.md +++ b/proxy/changelog/unreleased/fix-director-selection.md @@ -2,4 +2,4 @@ Bugfix: Fix director selection We fixed a bug where simultaneous requests could be executed on the wrong backend. - +https://github.com/owncloud/ocis/proxy/pull/99 diff --git a/proxy/changelog/unreleased/hello-in-example-config.md b/proxy/changelog/unreleased/hello-in-example-config.md index 268b9ecea..84bffe122 100644 --- a/proxy/changelog/unreleased/hello-in-example-config.md +++ b/proxy/changelog/unreleased/hello-in-example-config.md @@ -2,4 +2,4 @@ Enhancement: Add hello API and app endpoints to example config and builtin confi We added the ocis-hello API and app endpoints to both the example config and the builtin config. - +https://github.com/owncloud/ocis/proxy/pull/96 diff --git a/proxy/changelog/unreleased/mint-roles.md b/proxy/changelog/unreleased/mint-roles.md index a90a0b986..2216272d3 100644 --- a/proxy/changelog/unreleased/mint-roles.md +++ b/proxy/changelog/unreleased/mint-roles.md @@ -2,4 +2,4 @@ Enhancement: Add roleIDs to the access token We are using the roleIDs of the authenticated user for permission checks against ocis-settings. We added the roleIDs to the access token to have them available quickly. - +https://github.com/owncloud/ocis/proxy/pull/95 diff --git a/proxy/changelog/unreleased/remove-account-caching.md b/proxy/changelog/unreleased/remove-account-caching.md index bfa3fea46..c4605a889 100644 --- a/proxy/changelog/unreleased/remove-account-caching.md +++ b/proxy/changelog/unreleased/remove-account-caching.md @@ -2,4 +2,4 @@ Change: Remove accounts caching We removed the accounts cache in order to avoid problems with accounts that have been updated in the accounts service. - +https://github.com/owncloud/ocis/proxy/pull/100 diff --git a/proxy/changelog/unreleased/settings-in-example-config.md b/proxy/changelog/unreleased/settings-in-example-config.md index 39c119034..54d813610 100644 --- a/proxy/changelog/unreleased/settings-in-example-config.md +++ b/proxy/changelog/unreleased/settings-in-example-config.md @@ -3,4 +3,4 @@ Bugfix: Add settings API and app endpoints to example config We had the ocis-settings API and app endpoints in the builtin config already, but they were missing in the example config. Added them for consistency. - +https://github.com/owncloud/ocis/proxy/pull/93 diff --git a/proxy/docs/_index.md b/proxy/docs/_index.md index c97f5762b..5ad1d7b5f 100644 --- a/proxy/docs/_index.md +++ b/proxy/docs/_index.md @@ -1,9 +1,8 @@ -* * * - +--- title: Proxy -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides a basic proxy in front of the public ocis services. diff --git a/proxy/docs/about.md b/proxy/docs/about.md index a3c76526c..2707afefe 100644 --- a/proxy/docs/about.md +++ b/proxy/docs/about.md @@ -1,11 +1,10 @@ -* * * - +--- title: "About" date: 2020-02-07T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs - -## geekdocFilePath: about.md +geekdocFilePath: about.md +--- This service provides an proxy service that routes requests to the correct services. diff --git a/proxy/docs/building.md b/proxy/docs/building.md index 464c3ec04..8007e8996 100644 --- a/proxy/docs/building.md +++ b/proxy/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.13. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-proxy.git cd ocis-proxy -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-proxy -h` to see all available options and subcommands. diff --git a/proxy/docs/configuration.md b/proxy/docs/configuration.md index b808ff2e2..75e1fe63b 100644 --- a/proxy/docs/configuration.md +++ b/proxy/docs/configuration.md @@ -1,20 +1,19 @@ -* * * - +--- title: "Configuration" date: "2020-09-21T13:14:51+0200" weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: configuration.md +--- -## geekdocFilePath: configuration.md - -{{< toc >}} +{{< toc >}} ## Configuration oCIS Single Binary is not responsible for configuring extensions. Instead, each extension could either be configured by environment variables, cli flags or config files. -Each extension has its dedicated documentation page (e.g. ) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. +Each extension has its dedicated documentation page (e.g. https://owncloud.github.io/extensions/ocis_proxy/configuration) which lists all possible configurations. Config files and environment variables are picked up if you use the `./bin/ocis server` command within the oCIS single binary. Command line flags must be set explicitly on the extensions subcommands. ### Configuration using config files @@ -26,7 +25,7 @@ $HOME/.ocis ./config ``` -For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. _i.e: ocis-proxy reads `proxy.json | yaml | toml ...`_. +For this configuration to be picked up, have a look at your extension `root` command and look for which default config name it has assigned. *i.e: ocis-proxy reads `proxy.json | yaml | toml ...`*. So far we support the file formats `JSON` and `YAML`, if you want to get a full example configuration just take a look at [our repository](https://github.com/owncloud/ocis/tree/master/config), there you can always see the latest configuration format. These example configurations include all available options and the default values. The configuration file will be automatically loaded if it's placed at `/etc/ocis/ocis.yml`, `${HOME}/.ocis/ocis.yml` or `$(pwd)/config/ocis.yml`. @@ -44,16 +43,16 @@ proxy for Reva/oCIS Usage: `ocis-proxy [global options] command [command options] [arguments...]` -\--config-file | $PROXY_CONFIG_FILE +--config-file | $PROXY_CONFIG_FILE : Path to config file. -\--log-level | $PROXY_LOG_LEVEL +--log-level | $PROXY_LOG_LEVEL : Set logging level. Default: `info`. -\--log-pretty | $PROXY_LOG_PRETTY +--log-pretty | $PROXY_LOG_PRETTY : Enable pretty logging. Default: `true`. -\--log-color | $PROXY_LOG_COLOR +--log-color | $PROXY_LOG_COLOR : Enable colored logging. Default: `true`. ## Sub Commands @@ -64,7 +63,7 @@ Check health status Usage: `ocis-proxy health [command options] [arguments...]` -\--debug-addr | $PROXY_DEBUG_ADDR +--debug-addr | $PROXY_DEBUG_ADDR : Address to debug endpoint. Default: `0.0.0.0:9109`. ### ocis-proxy server @@ -73,62 +72,63 @@ Start integrated server Usage: `ocis-proxy server [command options] [arguments...]` -\--tracing-enabled | $PROXY_TRACING_ENABLED +--tracing-enabled | $PROXY_TRACING_ENABLED : Enable sending traces. -\--tracing-type | $PROXY_TRACING_TYPE +--tracing-type | $PROXY_TRACING_TYPE : Tracing backend type. Default: `jaeger`. -\--tracing-endpoint | $PROXY_TRACING_ENDPOINT +--tracing-endpoint | $PROXY_TRACING_ENDPOINT : Endpoint for the agent. -\--tracing-collector | $PROXY_TRACING_COLLECTOR +--tracing-collector | $PROXY_TRACING_COLLECTOR : Endpoint for the collector. Default: `http://localhost:14268/api/traces`. -\--tracing-service | $PROXY_TRACING_SERVICE +--tracing-service | $PROXY_TRACING_SERVICE : Service name for tracing. Default: `proxy`. -\--debug-addr | $PROXY_DEBUG_ADDR +--debug-addr | $PROXY_DEBUG_ADDR : Address to bind debug server. Default: `0.0.0.0:9205`. -\--debug-token | $PROXY_DEBUG_TOKEN +--debug-token | $PROXY_DEBUG_TOKEN : Token to grant metrics access. -\--debug-pprof | $PROXY_DEBUG_PPROF +--debug-pprof | $PROXY_DEBUG_PPROF : Enable pprof debugging. -\--debug-zpages | $PROXY_DEBUG_ZPAGES +--debug-zpages | $PROXY_DEBUG_ZPAGES : Enable zpages debugging. -\--http-addr | $PROXY_HTTP_ADDR +--http-addr | $PROXY_HTTP_ADDR : Address to bind http server. Default: `0.0.0.0:9200`. -\--http-root | $PROXY_HTTP_ROOT +--http-root | $PROXY_HTTP_ROOT : Root path of http server. Default: `/`. -\--asset-path | $PROXY_ASSET_PATH +--asset-path | $PROXY_ASSET_PATH : Path to custom assets. -\--http-namespace | $PROXY_HTTP_NAMESPACE +--http-namespace | $PROXY_HTTP_NAMESPACE : Set the base namespace for the http namespace. Default: `com.owncloud`. -\--transport-tls-cert | $PROXY_TRANSPORT_TLS_CERT +--transport-tls-cert | $PROXY_TRANSPORT_TLS_CERT : Certificate file for transport encryption. -\--transport-tls-key | $PROXY_TRANSPORT_TLS_KEY +--transport-tls-key | $PROXY_TRANSPORT_TLS_KEY : Secret file for transport encryption. -\--tls | $PROXY_TLS +--tls | $PROXY_TLS : Use TLS (disable only if proxy is behind a TLS-terminating reverse-proxy).. Default: `true`. -\--jwt-secret | $PROXY_JWT_SECRET +--jwt-secret | $PROXY_JWT_SECRET : Used to create JWT to talk to reva, should equal reva's jwt-secret. Default: `Pive-Fumkiu4`. -\--reva-gateway-addr | $PROXY_REVA_GATEWAY_ADDR +--reva-gateway-addr | $PROXY_REVA_GATEWAY_ADDR : REVA Gateway Endpoint. Default: `127.0.0.1:9142`. -\--oidc-issuer | $PROXY_OIDC_ISSUER +--oidc-issuer | $PROXY_OIDC_ISSUER : OIDC issuer. Default: `https://localhost:9200`. -\--oidc-insecure | $PROXY_OIDC_INSECURE +--oidc-insecure | $PROXY_OIDC_INSECURE : OIDC allow insecure communication. Default: `true`. + diff --git a/proxy/docs/getting-started.md b/proxy/docs/getting-started.md index 5c64f9b5c..95f8a185a 100644 --- a/proxy/docs/getting-started.md +++ b/proxy/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 15 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-proxy geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -16,7 +15,7 @@ So far we are offering two different variants for the installation. You can choo ### Docker -Docker images for ocis-reva are hosted on . +Docker images for ocis-reva are hosted on https://hub.docker.com/r/owncloud/ocis-proxy. The `latest` tag always reflects the current master branch. @@ -26,7 +25,7 @@ docker pull owncloud/ocis-proxy ### Binaries -The pre-built binaries for different platforms are downloadable at . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in +The pre-built binaries for different platforms are downloadable at https://download.owncloud.com/ocis/ocis-proxy/ . Specific releases are organized in separate folders. They are in sync which every release tag on GitHub. The binaries from the current master branch can be found in https://download.owncloud.com/ocis/ocis-proxy/testing/ ```console curl https://download.owncloud.com/ocis/ocis-proxy/1.0.0-beta1/ocis-proxy-1.0.0-beta1-darwin-amd64 --output ocis-proxy @@ -42,6 +41,6 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http server. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-proxy server --help -{{< / highlight >}} +{{< / highlight >}} diff --git a/settings/CHANGELOG.md b/settings/CHANGELOG.md index 9b6f57fb4..044fcebf7 100644 --- a/settings/CHANGELOG.md +++ b/settings/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [unreleased] \(UNRELEASED) +# Changelog for [unreleased] (UNRELEASED) The following sections list the changes in ocis-settings unreleased. @@ -6,56 +6,56 @@ The following sections list the changes in ocis-settings unreleased. ## Summary -- Bugfix - Fix loading and saving system scoped values: [#66](https://github.com/owncloud/ocis/settings/pull/66) -- Bugfix - Complete input validation: [#66](https://github.com/owncloud/ocis/settings/pull/66) -- Change - Add filter option for bundle ids in ListBundles and ListRoles: [#59](https://github.com/owncloud/ocis/settings/pull/59) -- Change - Reuse roleIDs from the metadata context: [#69](https://github.com/owncloud/ocis/settings/pull/69) -- Change - Update ocis-pkg/v2: [#72](https://github.com/owncloud/ocis/settings/pull/72) +* Bugfix - Fix loading and saving system scoped values: [#66](https://github.com/owncloud/ocis/settings/pull/66) +* Bugfix - Complete input validation: [#66](https://github.com/owncloud/ocis/settings/pull/66) +* Change - Add filter option for bundle ids in ListBundles and ListRoles: [#59](https://github.com/owncloud/ocis/settings/pull/59) +* Change - Reuse roleIDs from the metadata context: [#69](https://github.com/owncloud/ocis/settings/pull/69) +* Change - Update ocis-pkg/v2: [#72](https://github.com/owncloud/ocis/settings/pull/72) ## Details -- Bugfix - Fix loading and saving system scoped values: [#66](https://github.com/owncloud/ocis/settings/pull/66) +* Bugfix - Fix loading and saving system scoped values: [#66](https://github.com/owncloud/ocis/settings/pull/66) - We fixed loading and saving system scoped values. Those are now saved without an account uuid, - so that the value can be loaded by other accounts as well. + We fixed loading and saving system scoped values. Those are now saved without an account uuid, + so that the value can be loaded by other accounts as well. - + https://github.com/owncloud/ocis/settings/pull/66 -- Bugfix - Complete input validation: [#66](https://github.com/owncloud/ocis/settings/pull/66) +* Bugfix - Complete input validation: [#66](https://github.com/owncloud/ocis/settings/pull/66) - There was one handler function without input validation. We implemented the input validation - for `ValueService.ReadValueByUniqueIdentifiers`. + There was one handler function without input validation. We implemented the input validation + for `ValueService.ReadValueByUniqueIdentifiers`. - + https://github.com/owncloud/ocis/settings/pull/66 -- Change - Add filter option for bundle ids in ListBundles and ListRoles: [#59](https://github.com/owncloud/ocis/settings/pull/59) +* Change - Add filter option for bundle ids in ListBundles and ListRoles: [#59](https://github.com/owncloud/ocis/settings/pull/59) - We added bundle ids as filter option for ListBundles and ListRoles and a new endpoint for - fetching a permission by ID. + We added bundle ids as filter option for ListBundles and ListRoles and a new endpoint for + fetching a permission by ID. - + https://github.com/owncloud/ocis/settings/pull/59 -- Change - Reuse roleIDs from the metadata context: [#69](https://github.com/owncloud/ocis/settings/pull/69) +* Change - Reuse roleIDs from the metadata context: [#69](https://github.com/owncloud/ocis/settings/pull/69) - The roleIDs of the authenticated user are coming in from the metadata context. Since we decided - to move the role assignments over to the accounts service we need to start trusting those - roleIDs from the metadata context instead of reloading them from disk on each request. + The roleIDs of the authenticated user are coming in from the metadata context. Since we decided + to move the role assignments over to the accounts service we need to start trusting those + roleIDs from the metadata context instead of reloading them from disk on each request. - + https://github.com/owncloud/ocis/settings/pull/69 -- Change - Update ocis-pkg/v2: [#72](https://github.com/owncloud/ocis/settings/pull/72) +* Change - Update ocis-pkg/v2: [#72](https://github.com/owncloud/ocis/settings/pull/72) - The helper we used from ocis-pkg for extracting roleIDs from the metadata context has moved to - another package, so we needed to update as well. + The helper we used from ocis-pkg for extracting roleIDs from the metadata context has moved to + another package, so we needed to update as well. - - + https://github.com/owncloud/ocis/settings/pull/72 + https://github.com/owncloud/ocis-pkg/pull/60 -# Changelog for [0.3.1] \(2020-08-27) +# Changelog for [0.3.1] (2020-08-27) The following sections list the changes in ocis-settings 0.3.1. @@ -63,18 +63,18 @@ The following sections list the changes in ocis-settings 0.3.1. ## Summary -- Bugfix - Fix fetching bundles in settings UI: [#61](https://github.com/owncloud/ocis/settings/pull/61) +* Bugfix - Fix fetching bundles in settings UI: [#61](https://github.com/owncloud/ocis/settings/pull/61) ## Details -- Bugfix - Fix fetching bundles in settings UI: [#61](https://github.com/owncloud/ocis/settings/pull/61) +* Bugfix - Fix fetching bundles in settings UI: [#61](https://github.com/owncloud/ocis/settings/pull/61) - We fixed the settings UI to use the changed API endpoint `BundleService.ListBundles` - properly. + We fixed the settings UI to use the changed API endpoint `BundleService.ListBundles` + properly. - + https://github.com/owncloud/ocis/settings/pull/61 -# Changelog for [0.3.0] \(2020-08-26) +# Changelog for [0.3.0] (2020-08-26) The following sections list the changes in ocis-settings 0.3.0. @@ -82,20 +82,20 @@ The following sections list the changes in ocis-settings 0.3.0. ## Summary -- Change - Filter settings by permissions: [#99](https://github.com/owncloud/product/issues/99) +* Change - Filter settings by permissions: [#99](https://github.com/owncloud/product/issues/99) ## Details -- Change - Filter settings by permissions: [#99](https://github.com/owncloud/product/issues/99) +* Change - Filter settings by permissions: [#99](https://github.com/owncloud/product/issues/99) - `BundleService.GetBundle` and `BundleService.ListBundles` are now filtered by READ - permissions in the role of the authenticated user. This prevents settings from being visible - to the user when their role doesn't have appropriate permissions. + `BundleService.GetBundle` and `BundleService.ListBundles` are now filtered by READ + permissions in the role of the authenticated user. This prevents settings from being visible + to the user when their role doesn't have appropriate permissions. - - + https://github.com/owncloud/product/issues/99 + https://github.com/owncloud/ocis/settings/pull/48 -# Changelog for [0.2.0] \(2020-08-20) +# Changelog for [0.2.0] (2020-08-20) The following sections list the changes in ocis-settings 0.2.0. @@ -103,42 +103,42 @@ The following sections list the changes in ocis-settings 0.2.0. ## Summary -- Change - Add role service: [#110](https://github.com/owncloud/product/issues/110) -- Change - Rename endpoints and message types: [#36](https://github.com/owncloud/ocis/settings/issues/36) -- Change - Use UUIDs instead of alphanumeric identifiers: [#46](https://github.com/owncloud/ocis/settings/pull/46) +* Change - Add role service: [#110](https://github.com/owncloud/product/issues/110) +* Change - Rename endpoints and message types: [#36](https://github.com/owncloud/ocis/settings/issues/36) +* Change - Use UUIDs instead of alphanumeric identifiers: [#46](https://github.com/owncloud/ocis/settings/pull/46) ## Details -- Change - Add role service: [#110](https://github.com/owncloud/product/issues/110) +* Change - Add role service: [#110](https://github.com/owncloud/product/issues/110) - We added service endpoints for registering roles and maintaining permissions. + We added service endpoints for registering roles and maintaining permissions. - - - + https://github.com/owncloud/product/issues/110 + https://github.com/owncloud/ocis/settings/issues/10 + https://github.com/owncloud/ocis/settings/pull/47 -- Change - Rename endpoints and message types: [#36](https://github.com/owncloud/ocis/settings/issues/36) +* Change - Rename endpoints and message types: [#36](https://github.com/owncloud/ocis/settings/issues/36) - We decided to rename endpoints and message types to be less verbose. Specifically, - `SettingsBundle` became `Bundle`, `Setting` (inside a bundle) kept its name and - `SettingsValue` became `Value`. + We decided to rename endpoints and message types to be less verbose. Specifically, + `SettingsBundle` became `Bundle`, `Setting` (inside a bundle) kept its name and + `SettingsValue` became `Value`. - - - + https://github.com/owncloud/ocis/settings/issues/36 + https://github.com/owncloud/ocis/settings/issues/32 + https://github.com/owncloud/ocis/settings/pull/46 -- Change - Use UUIDs instead of alphanumeric identifiers: [#46](https://github.com/owncloud/ocis/settings/pull/46) +* Change - Use UUIDs instead of alphanumeric identifiers: [#46](https://github.com/owncloud/ocis/settings/pull/46) - `Bundles`, `Settings` and `Values` were identified by a set of alphanumeric identifiers so - far. We switched to UUIDs in order to achieve a flat file hierarchy on disk. Referencing the - respective entities by their alphanumeric identifiers (as used in UI code) is still - supported. + `Bundles`, `Settings` and `Values` were identified by a set of alphanumeric identifiers so + far. We switched to UUIDs in order to achieve a flat file hierarchy on disk. Referencing the + respective entities by their alphanumeric identifiers (as used in UI code) is still + supported. - + https://github.com/owncloud/ocis/settings/pull/46 -# Changelog for [0.1.0] \(2020-08-17) +# Changelog for [0.1.0] (2020-08-17) The following sections list the changes in ocis-settings 0.1.0. @@ -146,112 +146,113 @@ The following sections list the changes in ocis-settings 0.1.0. ## Summary -- Bugfix - Adjust UUID validation to be more tolerant: [#41](https://github.com/owncloud/ocis/settings/issues/41) -- Bugfix - Fix runtime error when type asserting on nil value: [#38](https://github.com/owncloud/ocis/settings/pull/38) -- Bugfix - Fix multiple submits on string and number form elements: [#745](https://github.com/owncloud/owncloud-design-system/issues/745) -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#39](https://github.com/owncloud/ocis/settings/pull/39) -- Change - Dynamically add navItems for extensions with settings bundles: [#25](https://github.com/owncloud/ocis/settings/pull/25) -- Change - Introduce input validation: [#22](https://github.com/owncloud/ocis/settings/pull/22) -- Change - Use account uuid from x-access-token: [#14](https://github.com/owncloud/ocis/settings/pull/14) -- Change - Use server config variable from ocis-web: [#34](https://github.com/owncloud/ocis/settings/pull/34) -- Enhancement - Remove paths from Makefile: [#33](https://github.com/owncloud/ocis/settings/pull/33) -- Enhancement - Extend the docs: [#11](https://github.com/owncloud/ocis/settings/issues/11) -- Enhancement - Update ocis-pkg/v2: [#42](https://github.com/owncloud/ocis/settings/pull/42) +* Bugfix - Adjust UUID validation to be more tolerant: [#41](https://github.com/owncloud/ocis/settings/issues/41) +* Bugfix - Fix runtime error when type asserting on nil value: [#38](https://github.com/owncloud/ocis/settings/pull/38) +* Bugfix - Fix multiple submits on string and number form elements: [#745](https://github.com/owncloud/owncloud-design-system/issues/745) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#39](https://github.com/owncloud/ocis/settings/pull/39) +* Change - Dynamically add navItems for extensions with settings bundles: [#25](https://github.com/owncloud/ocis/settings/pull/25) +* Change - Introduce input validation: [#22](https://github.com/owncloud/ocis/settings/pull/22) +* Change - Use account uuid from x-access-token: [#14](https://github.com/owncloud/ocis/settings/pull/14) +* Change - Use server config variable from ocis-web: [#34](https://github.com/owncloud/ocis/settings/pull/34) +* Enhancement - Remove paths from Makefile: [#33](https://github.com/owncloud/ocis/settings/pull/33) +* Enhancement - Extend the docs: [#11](https://github.com/owncloud/ocis/settings/issues/11) +* Enhancement - Update ocis-pkg/v2: [#42](https://github.com/owncloud/ocis/settings/pull/42) ## Details -- Bugfix - Adjust UUID validation to be more tolerant: [#41](https://github.com/owncloud/ocis/settings/issues/41) +* Bugfix - Adjust UUID validation to be more tolerant: [#41](https://github.com/owncloud/ocis/settings/issues/41) - The UUID now allows any alphanumeric character and "-", "\_", ".", "+" and "@" which can also - allow regular user names. + The UUID now allows any alphanumeric character and "-", "_", ".", "+" and "@" which can also + allow regular user names. - + https://github.com/owncloud/ocis/settings/issues/41 -- Bugfix - Fix runtime error when type asserting on nil value: [#38](https://github.com/owncloud/ocis/settings/pull/38) +* Bugfix - Fix runtime error when type asserting on nil value: [#38](https://github.com/owncloud/ocis/settings/pull/38) - Fixed the case where an account UUID present in the context is nil, and type asserting it as a - string would produce a runtime error. + Fixed the case where an account UUID present in the context is nil, and type asserting it as a + string would produce a runtime error. - - + https://github.com/owncloud/ocis/settings/issues/37 + https://github.com/owncloud/ocis/settings/pull/38 -- Bugfix - Fix multiple submits on string and number form elements: [#745](https://github.com/owncloud/owncloud-design-system/issues/745) +* Bugfix - Fix multiple submits on string and number form elements: [#745](https://github.com/owncloud/owncloud-design-system/issues/745) - We had a bug with keyboard event listeners triggering multiple submits on input fields. This - was recently fixed in the ownCloud design system (ODS). We rolled out that bugfix to the - settings ui as well. + We had a bug with keyboard event listeners triggering multiple submits on input fields. This + was recently fixed in the ownCloud design system (ODS). We rolled out that bugfix to the + settings ui as well. - - - + https://github.com/owncloud/owncloud-design-system/issues/745 + https://github.com/owncloud/owncloud-design-system/pull/768 + https://github.com/owncloud/ocis/settings/pulls/31 -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#39](https://github.com/owncloud/ocis/settings/pull/39) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#39](https://github.com/owncloud/ocis/settings/pull/39) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/settings/pull/39 -- Change - Dynamically add navItems for extensions with settings bundles: [#25](https://github.com/owncloud/ocis/settings/pull/25) +* Change - Dynamically add navItems for extensions with settings bundles: [#25](https://github.com/owncloud/ocis/settings/pull/25) - We now make use of a new feature in ocis-web-core, allowing us to add navItems not only through - configuration, but also after app initialization. With this we now have navItems available - for all extensions within the settings ui, that have at least one settings bundle registered. + We now make use of a new feature in ocis-web-core, allowing us to add navItems not only through + configuration, but also after app initialization. With this we now have navItems available + for all extensions within the settings ui, that have at least one settings bundle registered. - + https://github.com/owncloud/ocis/settings/pull/25 -- Change - Introduce input validation: [#22](https://github.com/owncloud/ocis/settings/pull/22) +* Change - Introduce input validation: [#22](https://github.com/owncloud/ocis/settings/pull/22) - We set up input validation, starting with enforcing alphanumeric identifier values and UUID - format on account uuids. As a result, traversal into parent folders is not possible anymore. We - also made sure that get and list requests are side effect free, i.e. not creating any folders. + We set up input validation, starting with enforcing alphanumeric identifier values and UUID + format on account uuids. As a result, traversal into parent folders is not possible anymore. We + also made sure that get and list requests are side effect free, i.e. not creating any folders. - - - - + https://github.com/owncloud/ocis/settings/issues/15 + https://github.com/owncloud/ocis/settings/issues/16 + https://github.com/owncloud/ocis/settings/issues/19 + https://github.com/owncloud/ocis/settings/pull/22 -- Change - Use account uuid from x-access-token: [#14](https://github.com/owncloud/ocis/settings/pull/14) +* Change - Use account uuid from x-access-token: [#14](https://github.com/owncloud/ocis/settings/pull/14) - We are now using an ocis-pkg middleware for extracting the account uuid of the authenticated - user from the `x-access-token` of the http request header and inject it into the Identifier - protobuf messages wherever possible. This allows us to use `me` instead of an actual account - uuid, when the request comes through the proxy. + We are now using an ocis-pkg middleware for extracting the account uuid of the authenticated + user from the `x-access-token` of the http request header and inject it into the Identifier + protobuf messages wherever possible. This allows us to use `me` instead of an actual account + uuid, when the request comes through the proxy. - + https://github.com/owncloud/ocis/settings/pull/14 -- Change - Use server config variable from ocis-web: [#34](https://github.com/owncloud/ocis/settings/pull/34) +* Change - Use server config variable from ocis-web: [#34](https://github.com/owncloud/ocis/settings/pull/34) - We are not providing an api url anymore but use the server url from ocis-web config instead. This - still - as before - requires that ocis-proxy is in place for routing requests to ocis-settings. + We are not providing an api url anymore but use the server url from ocis-web config instead. This + still - as before - requires that ocis-proxy is in place for routing requests to ocis-settings. - + https://github.com/owncloud/ocis/settings/pull/34 -- Enhancement - Remove paths from Makefile: [#33](https://github.com/owncloud/ocis/settings/pull/33) +* Enhancement - Remove paths from Makefile: [#33](https://github.com/owncloud/ocis/settings/pull/33) - We have a variable for the proto files path in our Makefile, but were not using it. Changed the - Makefile to use the PROTO_SRC variable where possible. + We have a variable for the proto files path in our Makefile, but were not using it. Changed the + Makefile to use the PROTO_SRC variable where possible. - + https://github.com/owncloud/ocis/settings/pull/33 -- Enhancement - Extend the docs: [#11](https://github.com/owncloud/ocis/settings/issues/11) +* Enhancement - Extend the docs: [#11](https://github.com/owncloud/ocis/settings/issues/11) - We have extended the documentation by adding a chapter about settings values. + We have extended the documentation by adding a chapter about settings values. - - + https://github.com/owncloud/ocis/settings/issues/11 + https://github.com/owncloud/ocis/settings/pulls/28 -- Enhancement - Update ocis-pkg/v2: [#42](https://github.com/owncloud/ocis/settings/pull/42) +* Enhancement - Update ocis-pkg/v2: [#42](https://github.com/owncloud/ocis/settings/pull/42) - Update to ocis-pkg/v2 v2.2.2-0.20200812103920-db41b5a3d14d + Update to ocis-pkg/v2 v2.2.2-0.20200812103920-db41b5a3d14d + + https://github.com/owncloud/ocis/settings/pull/42 - diff --git a/settings/README.md b/settings/README.md index 3952814cb..e77ef6a4d 100644 --- a/settings/README.md +++ b/settings/README.md @@ -1,7 +1,7 @@ # ownCloud Infinite Scale: SETTINGS [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-settings/status.svg)](https://cloud.drone.io/owncloud/ocis-settings) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/4383f209aa904572b415ef5a8f9e379f)](https://www.codacy.com/gh/owncloud/ocis-settings?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-settings&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/4383f209aa904572b415ef5a8f9e379f)](https://www.codacy.com/gh/owncloud/ocis-settings?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-settings&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-settings?status.svg)](http://godoc.org/github.com/owncloud/ocis-settings) [![Go Report Card](https://goreportcard.com/badge/github.com/owncloud/ocis-settings)](https://goreportcard.com/report/github.com/owncloud/ocis-settings) [![](https://images.microbadger.com/badges/image/owncloud/ocis-settings.svg)](https://microbadger.com/images/owncloud/ocis-settings "Get your own image badge on microbadger.com") @@ -27,7 +27,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/settings/changelog/0.1.0_2020-08-17/adjust-uuid-validation.md b/settings/changelog/0.1.0_2020-08-17/adjust-uuid-validation.md index b13d666f7..09ce1e216 100644 --- a/settings/changelog/0.1.0_2020-08-17/adjust-uuid-validation.md +++ b/settings/changelog/0.1.0_2020-08-17/adjust-uuid-validation.md @@ -1,6 +1,6 @@ Bugfix: Adjust UUID validation to be more tolerant -The UUID now allows any alphanumeric character and "-", "\_", ".", "+" and "@" which +The UUID now allows any alphanumeric character and "-", "_", ".", "+" and "@" which can also allow regular user names. - +https://github.com/owncloud/ocis/settings/issues/41 diff --git a/settings/changelog/0.1.0_2020-08-17/cleanup-makefile.md b/settings/changelog/0.1.0_2020-08-17/cleanup-makefile.md index cf50bc357..721a659eb 100644 --- a/settings/changelog/0.1.0_2020-08-17/cleanup-makefile.md +++ b/settings/changelog/0.1.0_2020-08-17/cleanup-makefile.md @@ -3,4 +3,4 @@ Enhancement: Remove paths from Makefile We have a variable for the proto files path in our Makefile, but were not using it. Changed the Makefile to use the PROTO_SRC variable where possible. - +https://github.com/owncloud/ocis/settings/pull/33 diff --git a/settings/changelog/0.1.0_2020-08-17/docs.md b/settings/changelog/0.1.0_2020-08-17/docs.md index e1daad395..03cb41db7 100644 --- a/settings/changelog/0.1.0_2020-08-17/docs.md +++ b/settings/changelog/0.1.0_2020-08-17/docs.md @@ -2,5 +2,5 @@ Enhancement: Extend the docs We have extended the documentation by adding a chapter about settings values. - - +https://github.com/owncloud/ocis/settings/issues/11 +https://github.com/owncloud/ocis/settings/pulls/28 diff --git a/settings/changelog/0.1.0_2020-08-17/dynamic-nav-items.md b/settings/changelog/0.1.0_2020-08-17/dynamic-nav-items.md index 128eef4e0..3172d3cf5 100644 --- a/settings/changelog/0.1.0_2020-08-17/dynamic-nav-items.md +++ b/settings/changelog/0.1.0_2020-08-17/dynamic-nav-items.md @@ -5,4 +5,4 @@ navItems not only through configuration, but also after app initialization. With this we now have navItems available for all extensions within the settings ui, that have at least one settings bundle registered. - +https://github.com/owncloud/ocis/settings/pull/25 diff --git a/settings/changelog/0.1.0_2020-08-17/hardening-type-assertion.md b/settings/changelog/0.1.0_2020-08-17/hardening-type-assertion.md index c99016a12..6ea5331ef 100644 --- a/settings/changelog/0.1.0_2020-08-17/hardening-type-assertion.md +++ b/settings/changelog/0.1.0_2020-08-17/hardening-type-assertion.md @@ -2,5 +2,5 @@ Bugfix: Fix runtime error when type asserting on nil value Fixed the case where an account UUID present in the context is nil, and type asserting it as a string would produce a runtime error. - - +https://github.com/owncloud/ocis/settings/pull/38 +https://github.com/owncloud/ocis/settings/issues/37 diff --git a/settings/changelog/0.1.0_2020-08-17/input-validation.md b/settings/changelog/0.1.0_2020-08-17/input-validation.md index 0881aaba9..4be070872 100644 --- a/settings/changelog/0.1.0_2020-08-17/input-validation.md +++ b/settings/changelog/0.1.0_2020-08-17/input-validation.md @@ -4,7 +4,7 @@ We set up input validation, starting with enforcing alphanumeric identifier valu format on account uuids. As a result, traversal into parent folders is not possible anymore. We also made sure that get and list requests are side effect free, i.e. not creating any folders. - - - - +https://github.com/owncloud/ocis/settings/pull/22 +https://github.com/owncloud/ocis/settings/issues/15 +https://github.com/owncloud/ocis/settings/issues/16 +https://github.com/owncloud/ocis/settings/issues/19 diff --git a/settings/changelog/0.1.0_2020-08-17/update-pkg2.md b/settings/changelog/0.1.0_2020-08-17/update-pkg2.md index 96e958a43..2eecf0dbb 100644 --- a/settings/changelog/0.1.0_2020-08-17/update-pkg2.md +++ b/settings/changelog/0.1.0_2020-08-17/update-pkg2.md @@ -2,4 +2,4 @@ Enhancement: Update ocis-pkg/v2 Update to ocis-pkg/v2 v2.2.2-0.20200812103920-db41b5a3d14d - +https://github.com/owncloud/ocis/settings/pull/42 diff --git a/settings/changelog/0.1.0_2020-08-17/upgrade-ods.md b/settings/changelog/0.1.0_2020-08-17/upgrade-ods.md index 32bc3765d..3aeeadb6d 100644 --- a/settings/changelog/0.1.0_2020-08-17/upgrade-ods.md +++ b/settings/changelog/0.1.0_2020-08-17/upgrade-ods.md @@ -4,6 +4,6 @@ We had a bug with keyboard event listeners triggering multiple submits on input This was recently fixed in the ownCloud design system (ODS). We rolled out that bugfix to the settings ui as well. - - - +https://github.com/owncloud/owncloud-design-system/issues/745 +https://github.com/owncloud/owncloud-design-system/pull/768 +https://github.com/owncloud/ocis/settings/pulls/31 diff --git a/settings/changelog/0.1.0_2020-08-17/use-access-token.md b/settings/changelog/0.1.0_2020-08-17/use-access-token.md index acffd803f..124304e3f 100644 --- a/settings/changelog/0.1.0_2020-08-17/use-access-token.md +++ b/settings/changelog/0.1.0_2020-08-17/use-access-token.md @@ -5,4 +5,4 @@ authenticated user from the `x-access-token` of the http request header and inje it into the Identifier protobuf messages wherever possible. This allows us to use `me` instead of an actual account uuid, when the request comes through the proxy. - +https://github.com/owncloud/ocis/settings/pull/14 diff --git a/settings/changelog/0.1.0_2020-08-17/use-alpine-latest.md b/settings/changelog/0.1.0_2020-08-17/use-alpine-latest.md index 46dc18a70..76b5c77f0 100644 --- a/settings/changelog/0.1.0_2020-08-17/use-alpine-latest.md +++ b/settings/changelog/0.1.0_2020-08-17/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/settings/pull/39 diff --git a/settings/changelog/0.1.0_2020-08-17/use-server-config.md b/settings/changelog/0.1.0_2020-08-17/use-server-config.md index 3ae97ee1c..18e1f3ecb 100644 --- a/settings/changelog/0.1.0_2020-08-17/use-server-config.md +++ b/settings/changelog/0.1.0_2020-08-17/use-server-config.md @@ -2,4 +2,4 @@ Change: Use server config variable from ocis-web We are not providing an api url anymore but use the server url from ocis-web config instead. This still - as before - requires that ocis-proxy is in place for routing requests to ocis-settings. - +https://github.com/owncloud/ocis/settings/pull/34 diff --git a/settings/changelog/0.2.0_2020-08-20/add-role-service.md b/settings/changelog/0.2.0_2020-08-20/add-role-service.md index 2052a27a2..9fd5cae45 100644 --- a/settings/changelog/0.2.0_2020-08-20/add-role-service.md +++ b/settings/changelog/0.2.0_2020-08-20/add-role-service.md @@ -2,6 +2,6 @@ Change: Add role service We added service endpoints for registering roles and maintaining permissions. - - - +https://github.com/owncloud/product/issues/110 +https://github.com/owncloud/ocis/settings/issues/10 +https://github.com/owncloud/ocis/settings/pull/47 diff --git a/settings/changelog/0.2.0_2020-08-20/refactor-naming.md b/settings/changelog/0.2.0_2020-08-20/refactor-naming.md index a961ea3f9..fcf9ed701 100644 --- a/settings/changelog/0.2.0_2020-08-20/refactor-naming.md +++ b/settings/changelog/0.2.0_2020-08-20/refactor-naming.md @@ -3,6 +3,6 @@ Change: Rename endpoints and message types We decided to rename endpoints and message types to be less verbose. Specifically, `SettingsBundle` became `Bundle`, `Setting` (inside a bundle) kept its name and `SettingsValue` became `Value`. - - - +https://github.com/owncloud/ocis/settings/issues/36 +https://github.com/owncloud/ocis/settings/issues/32 +https://github.com/owncloud/ocis/settings/pull/46 diff --git a/settings/changelog/0.2.0_2020-08-20/switch-to-uuids.md b/settings/changelog/0.2.0_2020-08-20/switch-to-uuids.md index 767af222c..d0ce57404 100644 --- a/settings/changelog/0.2.0_2020-08-20/switch-to-uuids.md +++ b/settings/changelog/0.2.0_2020-08-20/switch-to-uuids.md @@ -4,4 +4,4 @@ Change: Use UUIDs instead of alphanumeric identifiers in order to achieve a flat file hierarchy on disk. Referencing the respective entities by their alphanumeric identifiers (as used in UI code) is still supported. - +https://github.com/owncloud/ocis/settings/pull/46 diff --git a/settings/changelog/0.3.0_2020-08-26/filter-settings.md b/settings/changelog/0.3.0_2020-08-26/filter-settings.md index e6bad1073..6e89439c8 100644 --- a/settings/changelog/0.3.0_2020-08-26/filter-settings.md +++ b/settings/changelog/0.3.0_2020-08-26/filter-settings.md @@ -2,5 +2,5 @@ Change: Filter settings by permissions `BundleService.GetBundle` and `BundleService.ListBundles` are now filtered by READ permissions in the role of the authenticated user. This prevents settings from being visible to the user when their role doesn't have appropriate permissions. - - +https://github.com/owncloud/product/issues/99 +https://github.com/owncloud/ocis/settings/pull/48 diff --git a/settings/changelog/0.3.1_2020-08-27/fix-fetching-bundles.md b/settings/changelog/0.3.1_2020-08-27/fix-fetching-bundles.md index a5042acdc..3c9df061c 100644 --- a/settings/changelog/0.3.1_2020-08-27/fix-fetching-bundles.md +++ b/settings/changelog/0.3.1_2020-08-27/fix-fetching-bundles.md @@ -2,4 +2,5 @@ Bugfix: Fix fetching bundles in settings UI We fixed the settings UI to use the changed API endpoint `BundleService.ListBundles` properly. - +https://github.com/owncloud/ocis/settings/pull/61 + diff --git a/settings/changelog/unreleased/add-endpoint-permissions.md b/settings/changelog/unreleased/add-endpoint-permissions.md index 997ebf070..73fcfe72a 100644 --- a/settings/changelog/unreleased/add-endpoint-permissions.md +++ b/settings/changelog/unreleased/add-endpoint-permissions.md @@ -2,4 +2,5 @@ Change: Add filter option for bundle ids in ListBundles and ListRoles We added bundle ids as filter option for ListBundles and ListRoles and a new endpoint for fetching a permission by ID. - +https://github.com/owncloud/ocis/settings/pull/59 + diff --git a/settings/changelog/unreleased/fix-system-scope-values.md b/settings/changelog/unreleased/fix-system-scope-values.md index f07256d36..55802451d 100644 --- a/settings/changelog/unreleased/fix-system-scope-values.md +++ b/settings/changelog/unreleased/fix-system-scope-values.md @@ -3,4 +3,5 @@ Bugfix: Fix loading and saving system scoped values We fixed loading and saving system scoped values. Those are now saved without an account uuid, so that the value can be loaded by other accounts as well. - +https://github.com/owncloud/ocis/settings/pull/66 + diff --git a/settings/changelog/unreleased/input-validation.md b/settings/changelog/unreleased/input-validation.md index 254e6defe..e2e51a93a 100644 --- a/settings/changelog/unreleased/input-validation.md +++ b/settings/changelog/unreleased/input-validation.md @@ -2,4 +2,5 @@ Bugfix: Complete input validation There was one handler function without input validation. We implemented the input validation for `ValueService.ReadValueByUniqueIdentifiers`. - +https://github.com/owncloud/ocis/settings/pull/66 + diff --git a/settings/changelog/unreleased/role-ids-from-context.md b/settings/changelog/unreleased/role-ids-from-context.md index fb0f8a767..e3b73a8b5 100644 --- a/settings/changelog/unreleased/role-ids-from-context.md +++ b/settings/changelog/unreleased/role-ids-from-context.md @@ -2,4 +2,5 @@ Change: Reuse roleIDs from the metadata context The roleIDs of the authenticated user are coming in from the metadata context. Since we decided to move the role assignments over to the accounts service we need to start trusting those roleIDs from the metadata context instead of reloading them from disk on each request. - +https://github.com/owncloud/ocis/settings/pull/69 + diff --git a/settings/changelog/unreleased/roleids-helper-moved-package.md b/settings/changelog/unreleased/roleids-helper-moved-package.md index 9a2bd1abb..94d974ae1 100644 --- a/settings/changelog/unreleased/roleids-helper-moved-package.md +++ b/settings/changelog/unreleased/roleids-helper-moved-package.md @@ -3,5 +3,5 @@ Change: Update ocis-pkg/v2 The helper we used from ocis-pkg for extracting roleIDs from the metadata context has moved to another package, so we needed to update as well. - - +https://github.com/owncloud/ocis/settings/pull/72 +https://github.com/owncloud/ocis-pkg/pull/60 diff --git a/settings/docs/_index.md b/settings/docs/_index.md index b33ae6647..9e70356dd 100644 --- a/settings/docs/_index.md +++ b/settings/docs/_index.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Settings" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- ## Abstract @@ -18,7 +17,7 @@ For ease of use, this extension provides an ocis-web extension which allows user Please refer to the [ocis-web extension docs](https://owncloud.github.io/ocis/extensions/#external-phoenix-apps) for running ocis-web extensions. -{{< mermaid class="text-center">}} +{{< mermaid class="text-center">}} graph TD subgraph ow[ocis-web] ows[ocis-web-settings] @@ -30,20 +29,18 @@ graph TD sdks ---|"yes"| os sdks ---|"no"| defaults[Use set of
default values] oa[oCIS extensions
e.g. ocis-accounts] ---|"saveSettingsBundle(bundle)"| os -{{< /mermaid >}} +{{< /mermaid >}} The diagram shows how the settings service integrates into oCIS: **Settings management:** - -- oCIS extensions can register _settings bundles_ with the ocis-settings service. -- The settings frontend can be plugged into ocis-web, showing forms for changing _settings values_ as a user. - The forms are generated from the registered _settings bundles_. +- oCIS extensions can register *settings bundles* with the ocis-settings service. +- The settings frontend can be plugged into ocis-web, showing forms for changing *settings values* as a user. +The forms are generated from the registered *settings bundles*. **Settings usage:** - -- Extensions can query ocis-settings for _settings values_ of a user. -- The ownCloud SDK, used as a data abstraction layer for ocis-web, will query ocis-settings for _settings values_ of a user, - if it's available. The SDK uses sensible defaults when ocis-settings is not part of the setup. +- Extensions can query ocis-settings for *settings values* of a user. +- The ownCloud SDK, used as a data abstraction layer for ocis-web, will query ocis-settings for *settings values* of a user, +if it's available. The SDK uses sensible defaults when ocis-settings is not part of the setup. For compatibility with ownCloud 10, a migration of ownCloud 10 settings into the storage of ocis-settings will be available. diff --git a/settings/docs/building.md b/settings/docs/building.md index aed08d4f1..055b2387c 100644 --- a/settings/docs/building.md +++ b/settings/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-settings.git cd ocis-settings -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-settings -h` to see all available options. diff --git a/settings/docs/bundles.md b/settings/docs/bundles.md index 1d5121bd6..957c21478 100644 --- a/settings/docs/bundles.md +++ b/settings/docs/bundles.md @@ -1,12 +1,11 @@ -* * * - +--- title: "Settings Bundles" date: 2020-05-04T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: bundles.md +geekdocFilePath: bundles.md +--- A **Settings Bundle** is a collection of settings, uniquely identified by the key of the extension registering the bundle and the key of the bundle itself. It's purpose is to let @@ -14,12 +13,11 @@ oCIS extensions define settings and make them available to users. They are dynam rendered into forms, available in the frontend. As of now we support five different types of settings: - -- boolean -- integer -- string -- single choice list of integers or strings -- multiple choice list of integers or strings +- boolean +- integer +- string +- single choice list of integers or strings +- multiple choice list of integers or strings Each **Setting** is uniquely identified by a key within the bundle. Some attributes depend on the chosen type of setting. Through the information provided with the diff --git a/settings/docs/getting-started.md b/settings/docs/getting-started.md index 70522ab2c..b76a71873 100644 --- a/settings/docs/getting-started.md +++ b/settings/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 25 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `settings` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9194` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9190` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9194` ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-settings server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-settings health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/settings/docs/glossary.md b/settings/docs/glossary.md index 01aee5638..ffc9d8616 100644 --- a/settings/docs/glossary.md +++ b/settings/docs/glossary.md @@ -1,43 +1,42 @@ -* * * - +--- title: "Glossary" date: 2020-05-04T12:35:00+01:00 weight: 80 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: glossary.md +geekdocFilePath: glossary.md +--- In the context of this extension and oCIS in general, we are using the following terminology. ### Configuration -- System configuration -- e.g. service host names and ports -- Changes need to be propagated to other services -- Typically modified on the CLI +- System configuration +- e.g. service host names and ports +- Changes need to be propagated to other services +- Typically modified on the CLI ### Settings -- Application level settings -- e.g. default language -- Can be modified at runtime without restarting the service -- Typically modified in the UI +- Application level settings +- e.g. default language +- Can be modified at runtime without restarting the service +- Typically modified in the UI ### Preferences -- User settings -- Subset of "Settings" -- e.g. preferred language of a user +- User settings +- Subset of "Settings" +- e.g. preferred language of a user ### Settings Bundle -- Collection of related settings -- Registered by an ocis extension +- Collection of related settings +- Registered by an ocis extension ### Settings Value -- Manifestation of a setting for a specific user -- E.g. used for customization (at runtime) in `ocis-web` -- `ocis-web-settings` extension for modifying settings values is provided by this service -- Can be queried and modified by other ocis extensions +- Manifestation of a setting for a specific user +- E.g. used for customization (at runtime) in `ocis-web` +- `ocis-web-settings` extension for modifying settings values is provided by this service +- Can be queried and modified by other ocis extensions diff --git a/settings/docs/license.md b/settings/docs/license.md index a08ae7551..bce5bddc4 100644 --- a/settings/docs/license.md +++ b/settings/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 90 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/settings/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/settings/docs/values.md b/settings/docs/values.md index 6e2080728..9e03c681f 100644 --- a/settings/docs/values.md +++ b/settings/docs/values.md @@ -1,34 +1,32 @@ -* * * - +--- title: "Settings Values" date: 2020-05-04T00:00:00+00:00 weight: 51 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-settings geekdocEditPath: edit/master/docs - -## geekdocFilePath: values.md +geekdocFilePath: values.md +--- A **Settings Value** is the value an authenticated user has chosen for a specific setting, defined in a -_settings bundle_. For choosing settings values as a user the sole entry point is the ocis-web extension +*settings bundle*. For choosing settings values as a user the sole entry point is the ocis-web extension provided by this service. ## Identifying settings values -A _settings value_ is uniquely identified by four attributes. Three of them are coming from the definition of +A *settings value* is uniquely identified by four attributes. Three of them are coming from the definition of the setting within it's settings bundle (see [Settings Bundles](https://owncloud.github.io/extensions/ocis_settings/bundles/) for an example). The fourth identifies the user. +- extension: Key of the extension that registered the settings bundle, +- bundleKey: Key of the settings bundle, +- settingKey: Key of the setting as defined within the bundle, +- accountUuid: The UUID of the authenticated user who has saved the setting. -- extension: Key of the extension that registered the settings bundle, -- bundleKey: Key of the settings bundle, -- settingKey: Key of the setting as defined within the bundle, -- accountUuid: The UUID of the authenticated user who has saved the setting. - -{{< hint info >}} +{{< hint info >}} When requests are going through `ocis-proxy`, the accountUuid attribute can be set to the static keyword `me` instead of using a real UUID. `ocis-proxy` will take care of minting the UUID of the authenticated user into a JWT, providing it in the HTTP header as `x-access-token`. That UUID is then used in this service, to replace `me` with the actual UUID of the authenticated user. -{{< /hint >}} +{{< /hint >}} ## Example of stored settings values @@ -70,9 +68,8 @@ a JWT, providing it in the HTTP header as `x-access-token`. That UUID is then us ``` ## gRPC endpoints - The obvious way of modifying settings is the ocis-web extension, as described earlier. However, services can -use the respective gRPC endpoints of the `ValueService` to query and modify _settings values_ as well. +use the respective gRPC endpoints of the `ValueService` to query and modify *settings values* as well. The gRPC endpoints require the same identifier attributes as described above, so for making a request to the `ValueService` you will have to make sure that the accountUuid of the authenticated user is available in your service at the time of the request. diff --git a/store/CHANGELOG.md b/store/CHANGELOG.md index 8564ffa3e..8a271201b 100644 --- a/store/CHANGELOG.md +++ b/store/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [0.1.1] \(2020-08-17) +# Changelog for [0.1.1] (2020-08-17) The following sections list the changes in ocis-store 0.1.1. @@ -6,18 +6,18 @@ The following sections list the changes in ocis-store 0.1.1. ## Summary -- Bugfix - Removed code from other service: [#7](https://github.com/owncloud/ocis/store/pull/7) +* Bugfix - Removed code from other service: [#7](https://github.com/owncloud/ocis/store/pull/7) ## Details -- Bugfix - Removed code from other service: [#7](https://github.com/owncloud/ocis/store/pull/7) +* Bugfix - Removed code from other service: [#7](https://github.com/owncloud/ocis/store/pull/7) - We had code copied over from another repository which doesn't belong in here and now removed it - again. + We had code copied over from another repository which doesn't belong in here and now removed it + again. - + https://github.com/owncloud/ocis/store/pull/7 -# Changelog for [0.1.0] \(2020-07-23) +# Changelog for [0.1.0] (2020-07-23) The following sections list the changes in ocis-store 0.1.0. @@ -25,27 +25,27 @@ The following sections list the changes in ocis-store 0.1.0. ## Summary -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#5](https://github.com/owncloud/ocis/store/pull/5) -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/store/pull/1) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#5](https://github.com/owncloud/ocis/store/pull/5) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/store/pull/1) ## Details -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#5](https://github.com/owncloud/ocis/store/pull/5) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#5](https://github.com/owncloud/ocis/store/pull/5) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/store/pull/5 -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/store/pull/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/store/pull/1) - We have built a new service which implements go micro's [store - interface](https://github.com/micro/development/blob/master/design/framework/store.md), - so that we can provide a key-value-store through GRPC for our services. The underlying - implementation stores data as json files on disk and maintains an index using - [bleve](https://github.com/blevesearch/bleve). + We have built a new service which implements go micro's [store + interface](https://github.com/micro/development/blob/master/design/framework/store.md), + so that we can provide a key-value-store through GRPC for our services. The underlying + implementation stores data as json files on disk and maintains an index using + [bleve](https://github.com/blevesearch/bleve). - - + https://github.com/owncloud/ocis/store/pull/1 + https://github.com/owncloud/ocis/store/pull/2 -\-}} +-}} diff --git a/store/README.md b/store/README.md index 0a551502b..51f434035 100644 --- a/store/README.md +++ b/store/README.md @@ -23,7 +23,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing @@ -41,16 +41,18 @@ Copyright (c) 2020 ownCloud GmbH ## Design - /var/tmp - /ocis-store - /index.bleve - /databases - /ocs - /users - /settings - /bundles - /values - /assignments +``` +/var/tmp + /ocis-store + /index.bleve + /databases + /ocs + /users + /settings + /bundles + /values + /assignments + /accounts /accounts - /accounts - /groups + /groups +``` diff --git a/store/changelog/0.1.0_2020-07-23/initial-release.md b/store/changelog/0.1.0_2020-07-23/initial-release.md index 80a03dc9e..da1c70bcc 100644 --- a/store/changelog/0.1.0_2020-07-23/initial-release.md +++ b/store/changelog/0.1.0_2020-07-23/initial-release.md @@ -4,5 +4,5 @@ We have built a new service which implements go micro's [store interface](https: so that we can provide a key-value-store through GRPC for our services. The underlying implementation stores data as json files on disk and maintains an index using [bleve](https://github.com/blevesearch/bleve). - - +https://github.com/owncloud/ocis/store/pull/1 +https://github.com/owncloud/ocis/store/pull/2 diff --git a/store/changelog/0.1.0_2020-07-23/use-alpine-latest.md b/store/changelog/0.1.0_2020-07-23/use-alpine-latest.md index 1ecbfbeba..9e1d72fbe 100644 --- a/store/changelog/0.1.0_2020-07-23/use-alpine-latest.md +++ b/store/changelog/0.1.0_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/store/pull/5 diff --git a/store/changelog/0.1.1_2020-08-17/cleanup-code.md b/store/changelog/0.1.1_2020-08-17/cleanup-code.md index be3242ff2..3627107c4 100644 --- a/store/changelog/0.1.1_2020-08-17/cleanup-code.md +++ b/store/changelog/0.1.1_2020-08-17/cleanup-code.md @@ -2,4 +2,5 @@ Bugfix: Removed code from other service We had code copied over from another repository which doesn't belong in here and now removed it again. - +https://github.com/owncloud/ocis/store/pull/7 + diff --git a/store/docs/_index.md b/store/docs/_index.md index ca20ae336..3eec45a1d 100644 --- a/store/docs/_index.md +++ b/store/docs/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Store" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides ... diff --git a/store/docs/building.md b/store/docs/building.md index eb0979871..c8f2de2c0 100644 --- a/store/docs/building.md +++ b/store/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-store.git cd ocis-store -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-store -h` to see all available options. diff --git a/store/docs/getting-started.md b/store/docs/getting-started.md index 5174c8805..e9724f7f3 100644 --- a/store/docs/getting-started.md +++ b/store/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -93,59 +92,59 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `store` -\--debug-addr +--debug-addr : Address to bind debug server -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9461` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` #### Health -\--debug-addr +--debug-addr : Address to debug endpoint ### Configuration file @@ -160,17 +159,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-store server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-store health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/store/docs/license.md b/store/docs/license.md index 3b44dddcb..a551d61f2 100644 --- a/store/docs/license.md +++ b/store/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-store geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/store/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/thumbnails/CHANGELOG.md b/thumbnails/CHANGELOG.md index 45bdc494f..c176626ba 100644 --- a/thumbnails/CHANGELOG.md +++ b/thumbnails/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog for [0.3.0] \(2020-08-17) +# Changelog for [0.3.0] (2020-08-17) The following sections list the changes in ocis-thumbnails 0.3.0. @@ -6,25 +6,25 @@ The following sections list the changes in ocis-thumbnails 0.3.0. ## Summary -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#35](https://github.com/owncloud/ocis/thumbnails/pull/35) -- Enhancement - Serve the metrics endpoint: [#37](https://github.com/owncloud/ocis/thumbnails/issues/37) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#35](https://github.com/owncloud/ocis/thumbnails/pull/35) +* Enhancement - Serve the metrics endpoint: [#37](https://github.com/owncloud/ocis/thumbnails/issues/37) ## Details -- Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#35](https://github.com/owncloud/ocis/thumbnails/pull/35) +* Bugfix - Build docker images with alpine:latest instead of alpine:edge: [#35](https://github.com/owncloud/ocis/thumbnails/pull/35) - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/thumbnails/pull/35 -- Enhancement - Serve the metrics endpoint: [#37](https://github.com/owncloud/ocis/thumbnails/issues/37) +* Enhancement - Serve the metrics endpoint: [#37](https://github.com/owncloud/ocis/thumbnails/issues/37) - Added the metrics endpoint to be able to monitor this service like the other services + Added the metrics endpoint to be able to monitor this service like the other services - + https://github.com/owncloud/ocis/thumbnails/issues/37 -# Changelog for [0.2.0] \(2020-07-10) +# Changelog for [0.2.0] (2020-07-10) The following sections list the changes in ocis-thumbnails 0.2.0. @@ -32,43 +32,43 @@ The following sections list the changes in ocis-thumbnails 0.2.0. ## Summary -- Change - Add more default resolutions: [#23](https://github.com/owncloud/ocis/thumbnails/issues/23) -- Change - Refactor code to remove code smells: [#21](https://github.com/owncloud/ocis/thumbnails/issues/21) -- Change - Use micro service error api: [#31](https://github.com/owncloud/ocis/thumbnails/issues/31) -- Enhancement - Limit users to access own thumbnails: [#5](https://github.com/owncloud/ocis/thumbnails/issues/5) +* Change - Add more default resolutions: [#23](https://github.com/owncloud/ocis/thumbnails/issues/23) +* Change - Refactor code to remove code smells: [#21](https://github.com/owncloud/ocis/thumbnails/issues/21) +* Change - Use micro service error api: [#31](https://github.com/owncloud/ocis/thumbnails/issues/31) +* Enhancement - Limit users to access own thumbnails: [#5](https://github.com/owncloud/ocis/thumbnails/issues/5) ## Details -- Change - Add more default resolutions: [#23](https://github.com/owncloud/ocis/thumbnails/issues/23) +* Change - Add more default resolutions: [#23](https://github.com/owncloud/ocis/thumbnails/issues/23) - The `ocis-thumbnails` service was also used by the mediaviewer but the returned images were - too small since the highest resolution was 128x128 pixels. + The `ocis-thumbnails` service was also used by the mediaviewer but the returned images were + too small since the highest resolution was 128x128 pixels. - + https://github.com/owncloud/ocis/thumbnails/issues/23 -- Change - Refactor code to remove code smells: [#21](https://github.com/owncloud/ocis/thumbnails/issues/21) +* Change - Refactor code to remove code smells: [#21](https://github.com/owncloud/ocis/thumbnails/issues/21) - Scanning the code using a static code analyzer showed some code smells. This change fixes them. + Scanning the code using a static code analyzer showed some code smells. This change fixes them. - + https://github.com/owncloud/ocis/thumbnails/issues/21 -- Change - Use micro service error api: [#31](https://github.com/owncloud/ocis/thumbnails/issues/31) +* Change - Use micro service error api: [#31](https://github.com/owncloud/ocis/thumbnails/issues/31) - The service now also returns a status code when an error occurs. + The service now also returns a status code when an error occurs. - + https://github.com/owncloud/ocis/thumbnails/issues/31 -- Enhancement - Limit users to access own thumbnails: [#5](https://github.com/owncloud/ocis/thumbnails/issues/5) +* Enhancement - Limit users to access own thumbnails: [#5](https://github.com/owncloud/ocis/thumbnails/issues/5) - Users of the service can no longer request thumbnails of another users by guessing the etag. The - thumbnails are now only accessible by the users who created the thumbnail. + Users of the service can no longer request thumbnails of another users by guessing the etag. The + thumbnails are now only accessible by the users who created the thumbnail. - + https://github.com/owncloud/ocis/thumbnails/issues/5 -# Changelog for [0.1.2] \(2020-05-11) +# Changelog for [0.1.2] (2020-05-11) The following sections list the changes in ocis-thumbnails 0.1.2. @@ -76,19 +76,19 @@ The following sections list the changes in ocis-thumbnails 0.1.2. ## Summary -- Bugfix - Fix usage of context.Context: [#18](https://github.com/owncloud/ocis/thumbnails/issues/18) +* Bugfix - Fix usage of context.Context: [#18](https://github.com/owncloud/ocis/thumbnails/issues/18) ## Details -- Bugfix - Fix usage of context.Context: [#18](https://github.com/owncloud/ocis/thumbnails/issues/18) +* Bugfix - Fix usage of context.Context: [#18](https://github.com/owncloud/ocis/thumbnails/issues/18) - The context was filled with a key defined in the package service but read with a key from the - package imgsource. Since `service.key` and `imgsource.key` are different types imgsource - could not read the value provided by service. + The context was filled with a key defined in the package service but read with a key from the + package imgsource. Since `service.key` and `imgsource.key` are different types imgsource + could not read the value provided by service. - + https://github.com/owncloud/ocis/thumbnails/issues/18 -# Changelog for [0.1.1] \(2020-04-21) +# Changelog for [0.1.1] (2020-04-21) The following sections list the changes in ocis-thumbnails 0.1.1. @@ -96,18 +96,18 @@ The following sections list the changes in ocis-thumbnails 0.1.1. ## Summary -- Bugfix - Fix execution when passing program flags: [#15](https://github.com/owncloud/ocis/thumbnails/issues/15) +* Bugfix - Fix execution when passing program flags: [#15](https://github.com/owncloud/ocis/thumbnails/issues/15) ## Details -- Bugfix - Fix execution when passing program flags: [#15](https://github.com/owncloud/ocis/thumbnails/issues/15) +* Bugfix - Fix execution when passing program flags: [#15](https://github.com/owncloud/ocis/thumbnails/issues/15) - The program flags where not correctly recognized because we didn't pass them to the micro - framework when initializing a grpc service. + The program flags where not correctly recognized because we didn't pass them to the micro + framework when initializing a grpc service. - + https://github.com/owncloud/ocis/thumbnails/issues/15 -# Changelog for [0.1.0] \(2020-03-31) +# Changelog for [0.1.0] (2020-03-31) The following sections list the changes in ocis-thumbnails 0.1.0. @@ -115,32 +115,33 @@ The following sections list the changes in ocis-thumbnails 0.1.0. ## Summary -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/thumbnails/issues/1) -- Change - Use predefined resolutions for thumbnail generation: [#7](https://github.com/owncloud/ocis/thumbnails/issues/7) -- Change - Implement the first working version: [#3](https://github.com/owncloud/ocis/thumbnails/pull/3) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/thumbnails/issues/1) +* Change - Use predefined resolutions for thumbnail generation: [#7](https://github.com/owncloud/ocis/thumbnails/issues/7) +* Change - Implement the first working version: [#3](https://github.com/owncloud/ocis/thumbnails/pull/3) ## Details -- Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/thumbnails/issues/1) +* Change - Initial release of basic version: [#1](https://github.com/owncloud/ocis/thumbnails/issues/1) - Just prepare an initial basic version to embed a thumbnailer into our microservice - infrastructure in the scope of the ownCloud Infinite Scale project. + Just prepare an initial basic version to embed a thumbnailer into our microservice + infrastructure in the scope of the ownCloud Infinite Scale project. - + https://github.com/owncloud/ocis/thumbnails/issues/1 -- Change - Use predefined resolutions for thumbnail generation: [#7](https://github.com/owncloud/ocis/thumbnails/issues/7) +* Change - Use predefined resolutions for thumbnail generation: [#7](https://github.com/owncloud/ocis/thumbnails/issues/7) - We implemented predefined resolutions to prevent attacker from flooding the service with a - large number of thumbnails. The requested resolution gets mapped to the closest matching - predefined resolution. + We implemented predefined resolutions to prevent attacker from flooding the service with a + large number of thumbnails. The requested resolution gets mapped to the closest matching + predefined resolution. - + https://github.com/owncloud/ocis/thumbnails/issues/7 -- Change - Implement the first working version: [#3](https://github.com/owncloud/ocis/thumbnails/pull/3) +* Change - Implement the first working version: [#3](https://github.com/owncloud/ocis/thumbnails/pull/3) - We implemented the first simple version. It can load images via webdav and store them locally in - the filesystem. + We implemented the first simple version. It can load images via webdav and store them locally in + the filesystem. + + https://github.com/owncloud/ocis/thumbnails/pull/3 - diff --git a/thumbnails/README.md b/thumbnails/README.md index b132b1167..9e130c70b 100644 --- a/thumbnails/README.md +++ b/thumbnails/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-thumbnails/status.svg)](https://cloud.drone.io/owncloud/ocis-thumbnails) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/5dcc0c9b2319462dbbe517d90219062c)](https://www.codacy.com/gh/owncloud/ocis-thumbnails?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-thumbnails&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/5dcc0c9b2319462dbbe517d90219062c)](https://www.codacy.com/gh/owncloud/ocis-thumbnails?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-thumbnails&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-thumbnails?status.svg)](http://godoc.org/github.com/owncloud/ocis-thumbnails) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-thumbnails)](http://goreportcard.com/report/github.com/owncloud/ocis-thumbnails) [![](https://images.microbadger.com/badges/image/owncloud/ocis-thumbnails.svg)](http://microbadger.com/images/owncloud/ocis-thumbnails "Get your own image badge on microbadger.com") @@ -29,7 +29,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/thumbnails/changelog/0.1.0_2020-03-31/initial-version.md b/thumbnails/changelog/0.1.0_2020-03-31/initial-version.md index 62e2bac68..b41e872d2 100644 --- a/thumbnails/changelog/0.1.0_2020-03-31/initial-version.md +++ b/thumbnails/changelog/0.1.0_2020-03-31/initial-version.md @@ -4,4 +4,4 @@ Just prepare an initial basic version to embed a thumbnailer into our microservice infrastructure in the scope of the ownCloud Infinite Scale project. - +https://github.com/owncloud/ocis/thumbnails/issues/1 diff --git a/thumbnails/changelog/0.1.0_2020-03-31/predefined-resolutions.md b/thumbnails/changelog/0.1.0_2020-03-31/predefined-resolutions.md index 58e78fac0..514ccdb4d 100644 --- a/thumbnails/changelog/0.1.0_2020-03-31/predefined-resolutions.md +++ b/thumbnails/changelog/0.1.0_2020-03-31/predefined-resolutions.md @@ -3,4 +3,4 @@ Change: Use predefined resolutions for thumbnail generation We implemented predefined resolutions to prevent attacker from flooding the service with a large number of thumbnails. The requested resolution gets mapped to the closest matching predefined resolution. - +https://github.com/owncloud/ocis/thumbnails/issues/7 diff --git a/thumbnails/changelog/0.1.0_2020-03-31/thumbnail-service.md b/thumbnails/changelog/0.1.0_2020-03-31/thumbnail-service.md index 1236124f5..4d527436a 100644 --- a/thumbnails/changelog/0.1.0_2020-03-31/thumbnail-service.md +++ b/thumbnails/changelog/0.1.0_2020-03-31/thumbnail-service.md @@ -3,4 +3,4 @@ Change: implement the first working version We implemented the first simple version. It can load images via webdav and store them locally in the filesystem. - +https://github.com/owncloud/ocis/thumbnails/pull/3 diff --git a/thumbnails/changelog/0.1.1_2020-04-21/fix-flags.md b/thumbnails/changelog/0.1.1_2020-04-21/fix-flags.md index 75558b6ec..d806ffef8 100644 --- a/thumbnails/changelog/0.1.1_2020-04-21/fix-flags.md +++ b/thumbnails/changelog/0.1.1_2020-04-21/fix-flags.md @@ -3,4 +3,4 @@ Bugfix: Fix execution when passing program flags The program flags where not correctly recognized because we didn't pass them to the micro framework when initializing a grpc service. - +https://github.com/owncloud/ocis/thumbnails/issues/15 diff --git a/thumbnails/changelog/0.1.2_2020-05-11/fix-context-handling.md b/thumbnails/changelog/0.1.2_2020-05-11/fix-context-handling.md index 2270e163f..4350211b4 100644 --- a/thumbnails/changelog/0.1.2_2020-05-11/fix-context-handling.md +++ b/thumbnails/changelog/0.1.2_2020-05-11/fix-context-handling.md @@ -3,4 +3,4 @@ Bugfix: Fix usage of context.Context The context was filled with a key defined in the package service but read with a key from the package imgsource. Since `service.key` and `imgsource.key` are different types imgsource could not read the value provided by service. - +https://github.com/owncloud/ocis/thumbnails/issues/18 diff --git a/thumbnails/changelog/0.2.0_2020-07-10/add-resolutions.md b/thumbnails/changelog/0.2.0_2020-07-10/add-resolutions.md index 6d85d50ab..a138a1b80 100644 --- a/thumbnails/changelog/0.2.0_2020-07-10/add-resolutions.md +++ b/thumbnails/changelog/0.2.0_2020-07-10/add-resolutions.md @@ -3,4 +3,4 @@ Change: add more default resolutions The `ocis-thumbnails` service was also used by the mediaviewer but the returned images were too small since the highest resolution was 128x128 pixels. - +https://github.com/owncloud/ocis/thumbnails/issues/23 diff --git a/thumbnails/changelog/0.2.0_2020-07-10/fix-code-smells.md b/thumbnails/changelog/0.2.0_2020-07-10/fix-code-smells.md index df2a4ee30..b86234326 100644 --- a/thumbnails/changelog/0.2.0_2020-07-10/fix-code-smells.md +++ b/thumbnails/changelog/0.2.0_2020-07-10/fix-code-smells.md @@ -3,4 +3,4 @@ Change: refactor code to remove code smells Scanning the code using a static code analyzer showed some code smells. This change fixes them. - +https://github.com/owncloud/ocis/thumbnails/issues/21 diff --git a/thumbnails/changelog/0.2.0_2020-07-10/group-thumbnails-by-users.md b/thumbnails/changelog/0.2.0_2020-07-10/group-thumbnails-by-users.md index c24a9585d..5422f8e05 100644 --- a/thumbnails/changelog/0.2.0_2020-07-10/group-thumbnails-by-users.md +++ b/thumbnails/changelog/0.2.0_2020-07-10/group-thumbnails-by-users.md @@ -3,4 +3,4 @@ Enhancement: Limit users to access own thumbnails Users of the service can no longer request thumbnails of another users by guessing the etag. The thumbnails are now only accessible by the users who created the thumbnail. - +https://github.com/owncloud/ocis/thumbnails/issues/5 diff --git a/thumbnails/changelog/0.2.0_2020-07-10/use-micro-error-api.md b/thumbnails/changelog/0.2.0_2020-07-10/use-micro-error-api.md index 0d50db0a6..f12239ce7 100644 --- a/thumbnails/changelog/0.2.0_2020-07-10/use-micro-error-api.md +++ b/thumbnails/changelog/0.2.0_2020-07-10/use-micro-error-api.md @@ -2,4 +2,4 @@ Change: use micro service error api The service now also returns a status code when an error occurs. - +https://github.com/owncloud/ocis/thumbnails/issues/31 diff --git a/thumbnails/changelog/0.3.0_2020-08-17/serve-metrics.md b/thumbnails/changelog/0.3.0_2020-08-17/serve-metrics.md index 032cf5021..f63b3816d 100644 --- a/thumbnails/changelog/0.3.0_2020-08-17/serve-metrics.md +++ b/thumbnails/changelog/0.3.0_2020-08-17/serve-metrics.md @@ -2,4 +2,4 @@ Enhancement: serve the metrics endpoint Added the metrics endpoint to be able to monitor this service like the other services - +https://github.com/owncloud/ocis/thumbnails/issues/37 diff --git a/thumbnails/changelog/0.3.0_2020-08-17/use-alpine-latest.md b/thumbnails/changelog/0.3.0_2020-08-17/use-alpine-latest.md index 537e422b2..7f5f75c03 100644 --- a/thumbnails/changelog/0.3.0_2020-08-17/use-alpine-latest.md +++ b/thumbnails/changelog/0.3.0_2020-08-17/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/thumbnails/pull/35 diff --git a/thumbnails/docs/_index.md b/thumbnails/docs/_index.md index 5bf69febe..1007ebc39 100644 --- a/thumbnails/docs/_index.md +++ b/thumbnails/docs/_index.md @@ -1,11 +1,10 @@ -* * * - +--- title: "Thumbnails" date: 2018-05-02T00:00:00+00:00 weight: 10 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs - -## geekdocFilePath: \_index.md +geekdocFilePath: _index.md +--- This service provides an ocis extensions which generates thumbnails for image files. diff --git a/thumbnails/docs/building.md b/thumbnails/docs/building.md index 20b7f616e..4c0c3dac0 100644 --- a/thumbnails/docs/building.md +++ b/thumbnails/docs/building.md @@ -1,29 +1,28 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 weight: 30 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: building.md +--- -## geekdocFilePath: building.md - -{{< toc >}} +{{< toc >}} As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-thubnails.git cd {{ Name }} -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `Gopath`. All commands to build this project are part of our `Makefile`. ## Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-thumbnails -h` to see all available options. diff --git a/thumbnails/docs/getting-started.md b/thumbnails/docs/getting-started.md index bac3bf90f..2bcbd07e4 100644 --- a/thumbnails/docs/getting-started.md +++ b/thumbnails/docs/getting-started.md @@ -1,14 +1,13 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 weight: 20 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: getting-started.md +--- -## geekdocFilePath: getting-started.md - -{{< toc >}} +{{< toc >}} ## Installation @@ -89,7 +88,7 @@ THUMBNAILS_WEBDAVSOURCE_BASEURL : Base url for a webdav api, defaults to `https://localhost:9200/remote.php/webdav/` THUMBNAILS_RESOLUTIONS -: List of resolutions supported by the service, defaults to \`["16x16", "32x32", "64x64", "128x128"] +: List of resolutions supported by the service, defaults to `["16x16", "32x32", "64x64", "128x128"] #### Health @@ -102,68 +101,68 @@ If you prefer to configure the service with commandline flags you can see the av #### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` #### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `thumbnails` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9189` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--grpc-name +--grpc-name : Name of the service, defaults to `thumbnails` -\--grpc-addr +--grpc-addr : Address to bind grpc server, defaults to `0.0.0.0:9185` -\--grpc-namespace +--grpc-namespace : Set the base namespace for the grpc namespace", defaults to `com.owncloud.api` -\--filesystemstorage-root +--filesystemstorage-root : Root path of the filesystem storage directory, defaults to `/ocis-thumbnails/` -\--webdavsource-baseurl +--webdavsource-baseurl : Base url for a webdav api, defaults to `https://localhost:9200/remote.php/webdav/` -\--thumbnail-resolution -: List of resolutions supported by the service, defaults to \`["16x16", "32x32", "64x64", "128x128"] +--thumbnail-resolution +: List of resolutions supported by the service, defaults to `["16x16", "32x32", "64x64", "128x128"] #### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9189` ### Configuration file @@ -178,17 +177,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} {{ Name }} server --help -{{< / highlight >}} +{{< / highlight >}} ### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} {{ Name }} health --help -{{< / highlight >}} +{{< / highlight >}} ## Metrics diff --git a/thumbnails/docs/grpc.md b/thumbnails/docs/grpc.md index b5490db5b..27d9c2376 100644 --- a/thumbnails/docs/grpc.md +++ b/thumbnails/docs/grpc.md @@ -1,14 +1,13 @@ -* * * - +--- title: "GRPC API" date: 2018-05-02T00:00:00+00:00 weight: 50 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: grpc.md +--- -## geekdocFilePath: grpc.md - -{{< toc >}} +{{< toc >}} ## pkg/proto/v0/thumbnails.proto @@ -16,57 +15,57 @@ geekdocEditPath: edit/master/docs A request to retrieve a thumbnail -| Field | Type | Label | Description | -| ------------- | ------------------------------------------ | ----- | ------------------------------------------------------ | -| filepath | [string](#string) | | The path to the source image | -| filetype | [GetRequest.FileType](#getrequestfiletype) | | The type to which the thumbnail should get encoded to. | -| etag | [string](#string) | | The etag of the source image | -| width | [int32](#int32) | | The width of the thumbnail | -| height | [int32](#int32) | | The height of the thumbnail | -| authorization | [string](#string) | | The authorization token | +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| filepath | [string](#string) | | The path to the source image | +| filetype | [GetRequest.FileType](#getrequestfiletype) | | The type to which the thumbnail should get encoded to. | +| etag | [string](#string) | | The etag of the source image | +| width | [int32](#int32) | | The width of the thumbnail | +| height | [int32](#int32) | | The height of the thumbnail | +| authorization | [string](#string) | | The authorization token | ### GetResponse The service response -| Field | Type | Label | Description | -| --------- | ----------------- | ----- | ----------------------------- | -| thumbnail | [bytes](#bytes) | | The thumbnail as a binary | -| mimetype | [string](#string) | | The mimetype of the thumbnail | +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| thumbnail | [bytes](#bytes) | | The thumbnail as a binary | +| mimetype | [string](#string) | | The mimetype of the thumbnail | ### GetRequest.FileType The file types to which the thumbnail cna get encoded to. -| Name | Number | Description | -| ---- | ------ | ------------------- | -| PNG | 0 | Represents PNG type | -| JPG | 1 | Represents JPG type | +| Name | Number | Description | +| ---- | ------ | ----------- | +| PNG | 0 | Represents PNG type | +| JPG | 1 | Represents JPG type | ### ThumbnailService A Service for handling thumbnail generation -| Method Name | Request Type | Response Type | Description | -| ------------ | ------------------------- | --------------------------- | --------------------------------------- | +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| | GetThumbnail | [GetRequest](#getrequest) | [GetResponse](#getresponse) | Generates the thumbnail and returns it. | ## Scalar Value Types -| .proto Type | Notes | C++ | Java | -| ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------ | ---------- | -| {{< div id="double" content="double" >}} | | double | double | -| {{< div id="float" content="float" >}} | | float | float | -| {{< div id="int32" content="int32" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | -| {{< div id="int64" content="int64" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | -| {{< div id="uint32" content="uint32" >}} | Uses variable-length encoding. | uint32 | int | -| {{< div id="uint64" content="uint64" >}} | Uses variable-length encoding. | uint64 | long | -| {{< div id="sint32" content="sint32" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | -| {{< div id="sint64" content="sint64" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | -| {{< div id="fixed32" content="fixed32" >}} | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | -| {{< div id="fixed64" content="fixed64" >}} | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | -| {{< div id="sfixed32" content="sfixed32" >}} | Always four bytes. | int32 | int | -| {{< div id="sfixed64" content="sfixed64" >}} | Always eight bytes. | int64 | long | -| {{< div id="bool" content="bool" >}} | | bool | boolean | -| {{< div id="string" content="string" >}} | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | -| {{< div id="bytes" content="bytes" >}} | May contain any arbitrary sequence of bytes. | string | ByteString | +| .proto Type | Notes | C++ | Java | +| ----------- | ----- | --- | ---- | +| {{< div id="double" content="double" >}} | | double | double | +| {{< div id="float" content="float" >}} | | float | float | +| {{< div id="int32" content="int32" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | +| {{< div id="int64" content="int64" >}} | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | +| {{< div id="uint32" content="uint32" >}} | Uses variable-length encoding. | uint32 | int | +| {{< div id="uint64" content="uint64" >}} | Uses variable-length encoding. | uint64 | long | +| {{< div id="sint32" content="sint32" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | +| {{< div id="sint64" content="sint64" >}} | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | +| {{< div id="fixed32" content="fixed32" >}} | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | +| {{< div id="fixed64" content="fixed64" >}} | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | +| {{< div id="sfixed32" content="sfixed32" >}} | Always four bytes. | int32 | int | +| {{< div id="sfixed64" content="sfixed64" >}} | Always eight bytes. | int64 | long | +| {{< div id="bool" content="bool" >}} | | bool | boolean | +| {{< div id="string" content="string" >}} | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | +| {{< div id="bytes" content="bytes" >}} | May contain any arbitrary sequence of bytes. | string | ByteString | diff --git a/thumbnails/docs/license.md b/thumbnails/docs/license.md index 142bbe412..69cda13be 100644 --- a/thumbnails/docs/license.md +++ b/thumbnails/docs/license.md @@ -1,11 +1,10 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 weight: 60 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs - -## geekdocFilePath: license.md +geekdocFilePath: license.md +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/thumbnails/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources. diff --git a/thumbnails/docs/releasing.md b/thumbnails/docs/releasing.md index e6a386363..b3bc0c19a 100644 --- a/thumbnails/docs/releasing.md +++ b/thumbnails/docs/releasing.md @@ -1,46 +1,45 @@ -* * * - +--- title: "Releasing" date: 2018-05-02T00:00:00+00:00 weight: 40 -geekdocRepo: +geekdocRepo: https://github.com/owncloud/ocis-thumbnails geekdocEditPath: edit/master/docs +geekdocFilePath: releasing.md +--- -## geekdocFilePath: releasing.md - -{{< toc >}} +{{< toc >}} To release a new version of ocis-thumbnails, you have to follow a few simple steps. ## Preperation -1. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. -2. Checkout the preparation branch. -3. Create a new changelog folder and move the unreleased snippets there. - {{< highlight txt >}} - mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date - mv changelog/unreleased/\* changelog/x.x.x_yyyy-MM-dd/ - {{< / highlight >}} -4. Commit and push the changes - {{< highlight txt >}} - git add --all - git commit -m "prepare release x.x.x" - git push - {{< / highlight >}} -5. Create a pull request to the master branch. +1. Create a new branch e.g. `release-x.x.x` where `x.x.x` is the version you want to release. +2. Checkout the preparation branch. +3. Create a new changelog folder and move the unreleased snippets there. +{{< highlight txt >}} +mkdir changelog/x.x.x_yyyy-MM-dd/ # yyyy-MM-dd is the current date +mv changelog/unreleased/* changelog/x.x.x_yyyy-MM-dd/ +{{< / highlight >}} +4. Commit and push the changes +{{< highlight txt >}} +git add --all +git commit -m "prepare release x.x.x" +git push +{{< / highlight >}} +5. Create a pull request to the master branch. ## Release +1. After the preparation branch has been merged update your local master. +{{< highlight txt >}} +git checkout master +git pull +{{< / highlight >}} +2. Create a new tag (preferably signed). +{{< highlight txt >}} +git tag -s vx.x.x -m "release vx.x.x" +git push --tags +{{< / highlight >}} +3. Wait for CI and check that the GitHub release was published. -1. After the preparation branch has been merged update your local master. - {{< highlight txt >}} - git checkout master - git pull - {{< / highlight >}} -2. Create a new tag (preferably signed). - {{< highlight txt >}} - git tag -s vx.x.x -m "release vx.x.x" - git push --tags - {{< / highlight >}} -3. Wait for CI and check that the GitHub release was published. Congratulations, you just released ocis-thumbnails! diff --git a/webdav/CHANGELOG.md b/webdav/CHANGELOG.md index 81e5173c6..1bd164284 100644 --- a/webdav/CHANGELOG.md +++ b/webdav/CHANGELOG.md @@ -4,24 +4,25 @@ The following sections list the changes for 0.1.1. ## Summary -- Fix #22: Build docker images with alpine:latest instead of alpine:edge -- Chg #20: Change status not found on missing thumbnail + * Fix #22: Build docker images with alpine:latest instead of alpine:edge + * Chg #20: Change status not found on missing thumbnail ## Details -- Bugfix #22: Build docker images with alpine:latest instead of alpine:edge + * Bugfix #22: Build docker images with alpine:latest instead of alpine:edge - ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. + ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - + https://github.com/owncloud/ocis/webdav/pull/22 -- Change #20: Change status not found on missing thumbnail + * Change #20: Change status not found on missing thumbnail - The service returned a bad request when no thumbnail was generated. It is now changed to not - found. + The service returned a bad request when no thumbnail was generated. It is now changed to not + found. + + https://github.com/owncloud/ocis/webdav/issues/20 + https://github.com/owncloud/ocis/webdav/pull/21 - - # Changelog for 0.1.0 @@ -29,35 +30,37 @@ The following sections list the changes for 0.1.0. ## Summary -- Chg #1: Initial release of basic version -- Chg #16: Update ocis-pkg to version 2.2.0 -- Enh #14: Configuration -- Enh #13: Implement preview API + * Chg #1: Initial release of basic version + * Chg #16: Update ocis-pkg to version 2.2.0 + * Enh #14: Configuration + * Enh #13: Implement preview API ## Details -- Change #1: Initial release of basic version + * Change #1: Initial release of basic version - Just prepared an initial basic version to serve webdav for the ownCloud Infinite Scale - project. It just provides a minimal viable product to demonstrate the microservice pattern. + Just prepared an initial basic version to serve webdav for the ownCloud Infinite Scale + project. It just provides a minimal viable product to demonstrate the microservice pattern. - + https://github.com/owncloud/ocis/webdav/issues/1 -- Change #16: Update ocis-pkg to version 2.2.0 + * Change #16: Update ocis-pkg to version 2.2.0 - Updated ocis-pkg to include the cors header changes. + Updated ocis-pkg to include the cors header changes. - + https://github.com/owncloud/ocis/webdav/issues/16 -- Enhancement #14: Configuration + * Enhancement #14: Configuration - Extensions should be responsible of configuring themselves. We use Viper for config loading - from default paths. Environment variables **WILL** take precedence over config files. + Extensions should be responsible of configuring themselves. We use Viper for config loading + from default paths. Environment variables **WILL** take precedence over config files. - + https://github.com/owncloud/ocis/webdav/pull/14 -- Enhancement #13: Implement preview API + * Enhancement #13: Implement preview API + + Added the API endpoint for file previews. + + https://github.com/owncloud/ocis/webdav/pull/13 - Added the API endpoint for file previews. - diff --git a/webdav/README.md b/webdav/README.md index e5e355ae3..3c7601f38 100644 --- a/webdav/README.md +++ b/webdav/README.md @@ -2,7 +2,7 @@ [![Build Status](https://cloud.drone.io/api/badges/owncloud/ocis-webdav/status.svg)](https://cloud.drone.io/owncloud/ocis-webdav) [![Gitter chat](https://badges.gitter.im/cs3org/reva.svg)](https://gitter.im/cs3org/reva) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/0913fcc866a344b587bb867fcec5b848)](https://www.codacy.com/app/owncloud/ocis-webdav?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-webdav&utm_campaign=Badge_Grade) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/0913fcc866a344b587bb867fcec5b848)](https://www.codacy.com/app/owncloud/ocis-webdav?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-webdav&utm_campaign=Badge_Grade) [![Go Doc](https://godoc.org/github.com/owncloud/ocis-webdav?status.svg)](http://godoc.org/github.com/owncloud/ocis-webdav) [![Go Report](http://goreportcard.com/badge/github.com/owncloud/ocis-webdav)](http://goreportcard.com/report/github.com/owncloud/ocis-webdav) [![](https://images.microbadger.com/badges/image/owncloud/ocis-webdav.svg)](http://microbadger.com/images/owncloud/ocis-webdav "Get your own image badge on microbadger.com") @@ -28,7 +28,7 @@ make generate build ## Security -If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first. +If you find a security issue please contact security@owncloud.com first. ## Contributing diff --git a/webdav/changelog/0.1.0_2020-03-31/config-management.md b/webdav/changelog/0.1.0_2020-03-31/config-management.md index 2f4f28002..9eb3ad48e 100644 --- a/webdav/changelog/0.1.0_2020-03-31/config-management.md +++ b/webdav/changelog/0.1.0_2020-03-31/config-management.md @@ -2,4 +2,4 @@ Enhancement: Configuration Extensions should be responsible of configuring themselves. We use Viper for config loading from default paths. Environment variables **WILL** take precedence over config files. - +https://github.com/owncloud/ocis/webdav/pull/14 diff --git a/webdav/changelog/0.1.0_2020-03-31/initial-release.md b/webdav/changelog/0.1.0_2020-03-31/initial-release.md index b607b2251..3eb76aef2 100644 --- a/webdav/changelog/0.1.0_2020-03-31/initial-release.md +++ b/webdav/changelog/0.1.0_2020-03-31/initial-release.md @@ -4,4 +4,4 @@ Just prepared an initial basic version to serve webdav for the ownCloud Infinite Scale project. It just provides a minimal viable product to demonstrate the microservice pattern. - +https://github.com/owncloud/ocis/webdav/issues/1 diff --git a/webdav/changelog/0.1.0_2020-03-31/preview-api.md b/webdav/changelog/0.1.0_2020-03-31/preview-api.md index e863347b9..a63a21ec8 100644 --- a/webdav/changelog/0.1.0_2020-03-31/preview-api.md +++ b/webdav/changelog/0.1.0_2020-03-31/preview-api.md @@ -2,4 +2,4 @@ Enhancement: implement preview API Added the API endpoint for file previews. - +https://github.com/owncloud/ocis/webdav/pull/13 diff --git a/webdav/changelog/0.1.0_2020-03-31/update-ocis-pkg.md b/webdav/changelog/0.1.0_2020-03-31/update-ocis-pkg.md index d55b6a943..c96c37436 100644 --- a/webdav/changelog/0.1.0_2020-03-31/update-ocis-pkg.md +++ b/webdav/changelog/0.1.0_2020-03-31/update-ocis-pkg.md @@ -2,4 +2,4 @@ Change: update ocis-pkg to version 2.2.0 Updated ocis-pkg to include the cors header changes. - +https://github.com/owncloud/ocis/webdav/issues/16 diff --git a/webdav/changelog/0.1.1_2020-07-23/change-status-code-on-missing-thumbnail.md b/webdav/changelog/0.1.1_2020-07-23/change-status-code-on-missing-thumbnail.md index 7de0c2ce2..5adf41848 100644 --- a/webdav/changelog/0.1.1_2020-07-23/change-status-code-on-missing-thumbnail.md +++ b/webdav/changelog/0.1.1_2020-07-23/change-status-code-on-missing-thumbnail.md @@ -3,5 +3,5 @@ Change: change status not found on missing thumbnail The service returned a bad request when no thumbnail was generated. It is now changed to not found. - - +https://github.com/owncloud/ocis/webdav/issues/20 +https://github.com/owncloud/ocis/webdav/pull/21 diff --git a/webdav/changelog/0.1.1_2020-07-23/use-alpine-latest.md b/webdav/changelog/0.1.1_2020-07-23/use-alpine-latest.md index fb786257e..29d2a2173 100644 --- a/webdav/changelog/0.1.1_2020-07-23/use-alpine-latest.md +++ b/webdav/changelog/0.1.1_2020-07-23/use-alpine-latest.md @@ -2,4 +2,4 @@ Bugfix: build docker images with alpine:latest instead of alpine:edge ARM builds were failing when built on alpine:edge, so we switched to alpine:latest instead. - +https://github.com/owncloud/ocis/webdav/pull/22 diff --git a/webdav/docs/archetypes/default.md b/webdav/docs/archetypes/default.md index 4826d2892..4e777bee1 100644 --- a/webdav/docs/archetypes/default.md +++ b/webdav/docs/archetypes/default.md @@ -1,7 +1,6 @@ -* * * - +--- title: "{{ replace .TranslationBaseName "-" " " | title }}" date: {{ .Date }} anchor: "{{ replace .TranslationBaseName "-" " " | title | urlize }}" - -## weight: +weight: +--- diff --git a/webdav/docs/content/about.md b/webdav/docs/content/about.md index fdcadfc47..da72010f0 100644 --- a/webdav/docs/content/about.md +++ b/webdav/docs/content/about.md @@ -1,9 +1,8 @@ -* * * - +--- title: "About" date: 2018-05-02T00:00:00+00:00 anchor: "about" - -## weight: 10 +weight: 10 +--- This service provides the WebDAV API which is required by some ownCloud clients. diff --git a/webdav/docs/content/building.md b/webdav/docs/content/building.md index c377f85a0..98c0b31c8 100644 --- a/webdav/docs/content/building.md +++ b/webdav/docs/content/building.md @@ -1,25 +1,24 @@ -* * * - +--- title: "Building" date: 2018-05-02T00:00:00+00:00 anchor: "building" - -## weight: 30 +weight: 30 +--- As this project is built with Go, so you need to install that first. The installation of Go is out of the scope of this document, please follow the official documentation for [Go](https://golang.org/doc/install), to build this project you have to install Go >= v1.12. After the installation of the required tools you need to get the sources: -{{< highlight txt >}} -git clone +{{< highlight txt >}} +git clone https://github.com/owncloud/ocis-webdav.git cd ocis-webdav -{{< / highlight >}} +{{< / highlight >}} All required tool besides Go itself and make are bundled or getting automatically installed within the `GOPATH`. All commands to build this project are part of our `Makefile`. ### Backend -{{< highlight txt >}} +{{< highlight txt >}} make generate make build -{{< / highlight >}} +{{< / highlight >}} Finally you should have the binary within the `bin/` folder now, give it a try with `./bin/ocis-webdav -h` to see all available options. diff --git a/webdav/docs/content/getting-started.md b/webdav/docs/content/getting-started.md index 1aa17df41..ba330a6ee 100644 --- a/webdav/docs/content/getting-started.md +++ b/webdav/docs/content/getting-started.md @@ -1,10 +1,9 @@ -* * * - +--- title: "Getting Started" date: 2018-05-02T00:00:00+00:00 anchor: "getting-started" - -## weight: 20 +weight: 20 +--- ### Installation @@ -86,59 +85,59 @@ If you prefer to configure the service with commandline flags you can see the av ##### Global -\--config-file +--config-file : Path to config file, empty default value -\--log-level +--log-level : Set logging level, defaults to `info` -\--log-color +--log-color : Enable colored logging, defaults to `true` -\--log-pretty +--log-pretty : Enable pretty logging, defaults to `true` ##### Server -\--tracing-enabled +--tracing-enabled : Enable sending traces, defaults to `false` -\--tracing-type +--tracing-type : Tracing backend type, defaults to `jaeger` -\--tracing-endpoint +--tracing-endpoint : Endpoint for the agent, empty default value -\--tracing-collector +--tracing-collector : Endpoint for the collector, empty default value -\--tracing-service +--tracing-service : Service name for tracing, defaults to `webdav` -\--debug-addr +--debug-addr : Address to bind debug server, defaults to `0.0.0.0:9119` -\--debug-token +--debug-token : Token to grant metrics access, empty default value -\--debug-pprof +--debug-pprof : Enable pprof debugging, defaults to `false` -\--debug-zpages +--debug-zpages : Enable zpages debugging, defaults to `false` -\--http-addr +--http-addr : Address to bind http server, defaults to `0.0.0.0:9115` -\--http-namespace +--http-namespace : Namespace for internal services communication, defaults to `com.owncloud.web` -\--http-root +--http-root : Root path of http server, defaults to `/` ##### Health -\--debug-addr +--debug-addr : Address to debug endpoint, defaults to `0.0.0.0:9119` #### Configuration file @@ -153,17 +152,17 @@ The program provides a few sub-commands on execution. The available configuratio The server command is used to start the http and debug server on two addresses within a single process. The http server is serving the general webservice while the debug server is used for health check, readiness check and to server the metrics mentioned below. For further help please execute: -{{< highlight txt >}} +{{< highlight txt >}} ocis-webdav server --help -{{< / highlight >}} +{{< / highlight >}} #### Health The health command is used to execute a health check, if the exit code equals zero the service should be up and running, if the exist code is greater than zero the service is not in a healthy state. Generally this command is used within our Docker containers, it could also be used within Kubernetes. -{{< highlight txt >}} +{{< highlight txt >}} ocis-webdav health --help -{{< / highlight >}} +{{< / highlight >}} ### Metrics diff --git a/webdav/docs/content/license.md b/webdav/docs/content/license.md index 0e16b2c04..e6bd9a08e 100644 --- a/webdav/docs/content/license.md +++ b/webdav/docs/content/license.md @@ -1,9 +1,8 @@ -* * * - +--- title: "License" date: 2018-05-02T00:00:00+00:00 anchor: "license" - -## weight: 40 +weight: 40 +--- This project is licensed under the [Apache 2.0](https://github.com/owncloud/ocis/webdav/blob/master/LICENSE) license. For the license of the used libraries you have to check the respective sources.