mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-06 04:09:40 -06:00
run remark linter locally
This commit is contained in:
@@ -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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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,113 +146,112 @@ 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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
<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
|
||||
|
||||
https://github.com/owncloud/ocis/settings/pull/42
|
||||
Update to ocis-pkg/v2 v2.2.2-0.20200812103920-db41b5a3d14d
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/42>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# ownCloud Infinite Scale: SETTINGS
|
||||
|
||||
[](https://cloud.drone.io/owncloud/ocis-settings)
|
||||
[](https://www.codacy.com/gh/owncloud/ocis-settings?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-settings&utm_campaign=Badge_Grade)
|
||||
[](https://www.codacy.com/gh/owncloud/ocis-settings?utm_source=github.com&utm_medium=referral&utm_content=owncloud/ocis-settings&utm_campaign=Badge_Grade)
|
||||
[](http://godoc.org/github.com/owncloud/ocis-settings)
|
||||
[](https://goreportcard.com/report/github.com/owncloud/ocis-settings)
|
||||
[](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 first.
|
||||
If you find a security issue please contact [security@owncloud.com](mailto:security@owncloud.com) first.
|
||||
|
||||
## Contributing
|
||||
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/issues/41>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/33>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/issues/11>
|
||||
<https://github.com/owncloud/ocis/settings/pulls/28>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/25>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/38>
|
||||
<https://github.com/owncloud/ocis/settings/issues/37>
|
||||
|
||||
@@ -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
|
||||
<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>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/42>
|
||||
|
||||
@@ -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
|
||||
<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>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/14>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/39>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/34>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/product/issues/110>
|
||||
<https://github.com/owncloud/ocis/settings/issues/10>
|
||||
<https://github.com/owncloud/ocis/settings/pull/47>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/issues/36>
|
||||
<https://github.com/owncloud/ocis/settings/issues/32>
|
||||
<https://github.com/owncloud/ocis/settings/pull/46>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/46>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/product/issues/99>
|
||||
<https://github.com/owncloud/ocis/settings/pull/48>
|
||||
|
||||
@@ -2,5 +2,4 @@ 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
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/61>
|
||||
|
||||
@@ -2,5 +2,4 @@ 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
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/59>
|
||||
|
||||
@@ -3,5 +3,4 @@ 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
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/66>
|
||||
|
||||
@@ -2,5 +2,4 @@ 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
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/66>
|
||||
|
||||
@@ -2,5 +2,4 @@ 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
|
||||
|
||||
<https://github.com/owncloud/ocis/settings/pull/69>
|
||||
|
||||
@@ -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
|
||||
<https://github.com/owncloud/ocis/settings/pull/72>
|
||||
<https://github.com/owncloud/ocis-pkg/pull/60>
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Settings"
|
||||
date: 2018-05-02T00:00:00+00:00
|
||||
weight: 10
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
geekdocRepo: <https://github.com/owncloud/ocis-settings>
|
||||
geekdocEditPath: edit/master/docs
|
||||
geekdocFilePath: _index.md
|
||||
---
|
||||
|
||||
## geekdocFilePath: \_index.md
|
||||
|
||||
## Abstract
|
||||
|
||||
@@ -17,7 +18,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]
|
||||
@@ -29,18 +30,20 @@ graph TD
|
||||
sdks ---|"yes"| os
|
||||
sdks ---|"no"| defaults[Use set of<br>default values]
|
||||
oa[oCIS extensions<br>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.
|
||||
|
||||
@@ -1,28 +1,29 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Building"
|
||||
date: 2018-05-02T00:00:00+00:00
|
||||
weight: 30
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
geekdocRepo: <https://github.com/owncloud/ocis-settings>
|
||||
geekdocEditPath: edit/master/docs
|
||||
geekdocFilePath: building.md
|
||||
---
|
||||
|
||||
{{< toc >}}
|
||||
## geekdocFilePath: building.md
|
||||
|
||||
{{< 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 https://github.com/owncloud/ocis-settings.git
|
||||
{{< 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.
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Settings Bundles"
|
||||
date: 2020-05-04T00:00:00+00:00
|
||||
weight: 50
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
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
|
||||
@@ -13,11 +14,12 @@ 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
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Getting Started"
|
||||
date: 2018-05-02T00:00:00+00:00
|
||||
weight: 25
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
geekdocRepo: <https://github.com/owncloud/ocis-settings>
|
||||
geekdocEditPath: edit/master/docs
|
||||
geekdocFilePath: getting-started.md
|
||||
---
|
||||
|
||||
{{< toc >}}
|
||||
## geekdocFilePath: getting-started.md
|
||||
|
||||
{{< toc >}}
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -92,59 +93,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
|
||||
@@ -159,17 +160,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
|
||||
|
||||
|
||||
@@ -1,42 +1,43 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Glossary"
|
||||
date: 2020-05-04T12:35:00+01:00
|
||||
weight: 80
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
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
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "License"
|
||||
date: 2018-05-02T00:00:00+00:00
|
||||
weight: 90
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
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.
|
||||
|
||||
@@ -1,32 +1,34 @@
|
||||
---
|
||||
* * *
|
||||
|
||||
title: "Settings Values"
|
||||
date: 2020-05-04T00:00:00+00:00
|
||||
weight: 51
|
||||
geekdocRepo: https://github.com/owncloud/ocis-settings
|
||||
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.
|
||||
|
||||
{{< hint info >}}
|
||||
- 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 >}}
|
||||
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
|
||||
|
||||
@@ -68,8 +70,9 @@ 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.
|
||||
|
||||
Reference in New Issue
Block a user