From 51313a424ce292565c687bb2963fdca13049870e Mon Sep 17 00:00:00 2001 From: Patrick Maier Date: Thu, 22 Apr 2021 16:52:45 +0200 Subject: [PATCH 1/7] [docs-only] oCIS 1.5.0 Release Notes --- docs/ocis/release_notes.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/ocis/release_notes.md b/docs/ocis/release_notes.md index 3461fde791..3066e7cbb6 100644 --- a/docs/ocis/release_notes.md +++ b/docs/ocis/release_notes.md @@ -7,6 +7,24 @@ geekdocEditPath: edit/master/docs/ocis geekdocFilePath: release_notes.md --- +## ownCloud Infinite Scale 1.5.0 Technology Preview + +Version 1.5.0 is a maintenance release for the Infinite Scale backend with a number of bug fixes and smaller improvements. For ownCloud Web it brings further accessibility improvements and a whole bunch of new features. The web interface can now be branded and there is a new, dedicated view in the left sidebar to list all link shares of a user. + +The most prominent changes in version 1.5.0 comprise: + +- Config file based theming for ownCloud Web (see https://owncloud.dev/clients/web/theming/ for more information) [#4822](https://github.com/owncloud/web/pull/4822) +- A dedicated view for "Shared by link" has been added [#4881](https://github.com/owncloud/web/pull/4881) +- The file list table has been replaced and is now more performant and accessible [#4627](https://github.com/owncloud/web/pull/4627) +- Many further accessibility improvements have been added, e.g., around the app switcher, sidebar, sharing list and focus management + +You can also read the full [ownCloud Infinite Scale changelog](https://github.com/owncloud/ocis/blob/master/CHANGELOG.md) and [ownCloud Web changelog](https://github.com/owncloud/web/blob/master/CHANGELOG.md) for further details on what has changed. + +### Breaking changes +{{< hint warning >}} +We are currently in a Tech Preview state and breaking changes may occur at any time. For more information see our [release roadmap]({{< ref "./release_roadmap" >}}) +{{< /hint >}} + ## ownCloud Infinite Scale 1.4.0 Technology Preview Version 1.4.0 brings new features, bug fixes and further improvements. The accessibility of ownCloud Web has greatly improved, paving the way for WCAG 2.1 compliance. The Infinite Scale platform has received major improvements regarding memory consumption. The user storage quota feature has been implemented and folder sizes are now properly calculated. It is now possible to write log messages to log files and to specify configuration values using a config file. From cffe201d90cf8eedc5bacaa8ce37e46016d17c84 Mon Sep 17 00:00:00 2001 From: Patrick Maier Date: Thu, 22 Apr 2021 18:45:44 +0200 Subject: [PATCH 2/7] Update release_notes.md --- docs/ocis/release_notes.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/ocis/release_notes.md b/docs/ocis/release_notes.md index 3066e7cbb6..1caff44dcd 100644 --- a/docs/ocis/release_notes.md +++ b/docs/ocis/release_notes.md @@ -17,6 +17,8 @@ The most prominent changes in version 1.5.0 comprise: - A dedicated view for "Shared by link" has been added [#4881](https://github.com/owncloud/web/pull/4881) - The file list table has been replaced and is now more performant and accessible [#4627](https://github.com/owncloud/web/pull/4627) - Many further accessibility improvements have been added, e.g., around the app switcher, sidebar, sharing list and focus management +- User storage quotas will now be enforced [#1557](https://github.com/cs3org/reva/pull/1557) +- The "owncloud" storage driver now supports file integrity checking with checksums [#1629](https://github.com/cs3org/reva/pull/1629) You can also read the full [ownCloud Infinite Scale changelog](https://github.com/owncloud/ocis/blob/master/CHANGELOG.md) and [ownCloud Web changelog](https://github.com/owncloud/web/blob/master/CHANGELOG.md) for further details on what has changed. From 11c11b06dc686bb0e8f0cd7de9aa53dbcc6498b0 Mon Sep 17 00:00:00 2001 From: "A.Unger" Date: Fri, 23 Apr 2021 14:13:58 +0200 Subject: [PATCH 3/7] stop supervisor if a service fails to start --- ocis/pkg/runtime/service/service.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ocis/pkg/runtime/service/service.go b/ocis/pkg/runtime/service/service.go index cfab669058..464df996cf 100644 --- a/ocis/pkg/runtime/service/service.go +++ b/ocis/pkg/runtime/service/service.go @@ -123,6 +123,10 @@ func Start(o ...Option) error { return err } + // halt listens for interrupt signals and blocks. + halt := make(chan os.Signal, 1) + signal.Notify(halt, syscall.SIGINT, syscall.SIGTERM, syscall.SIGQUIT, syscall.SIGHUP) + // notify goroutines that they are running on supervised mode s.cfg.Mode = ociscfg.SUPERVISED @@ -131,6 +135,9 @@ func Start(o ...Option) error { // Start creates its own supervisor. Running services under `ocis server` will create its own supervision tree. s.Supervisor = suture.New("ocis", suture.Spec{ EventHook: func(e suture.Event) { + if e.Type() == suture.EventTypeServiceTerminate { + halt <- os.Interrupt + } s.Log.Info().Str("event", e.String()).Msg(fmt.Sprintf("supervisor: %v", e.Map()["supervisor_name"])) }, }) @@ -148,10 +155,6 @@ func Start(o ...Option) error { } rpc.HandleHTTP() - // halt listens for interrupt signals and blocks. - halt := make(chan os.Signal, 1) - signal.Notify(halt, syscall.SIGINT, syscall.SIGTERM, syscall.SIGQUIT, syscall.SIGHUP) - l, err := net.Listen("tcp", net.JoinHostPort(s.cfg.Runtime.Host, s.cfg.Runtime.Port)) if err != nil { s.Log.Fatal().Err(err) From 8da06d32b95a717a34cf5fddbbec25cde49ab40d Mon Sep 17 00:00:00 2001 From: "A.Unger" Date: Fri, 23 Apr 2021 14:15:30 +0200 Subject: [PATCH 4/7] add changelog --- changelog/unreleased/stop-supervisor-if-failure.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 changelog/unreleased/stop-supervisor-if-failure.md diff --git a/changelog/unreleased/stop-supervisor-if-failure.md b/changelog/unreleased/stop-supervisor-if-failure.md new file mode 100644 index 0000000000..8bccf7a53d --- /dev/null +++ b/changelog/unreleased/stop-supervisor-if-failure.md @@ -0,0 +1,7 @@ +Bugfix: Stop the supervisor if a service fails to start + +Steps to make the supervisor fail: + +`PROXY_HTTP_ADDR=0.0.0.0:9144 bin/ocis server` + +https://github.com/owncloud/ocis/pull/1963 From f8804b771f702e167291274341f4b5bf68300a31 Mon Sep 17 00:00:00 2001 From: Dirk Stascheit Date: Fri, 23 Apr 2021 15:10:28 +0200 Subject: [PATCH 5/7] Update _index.md updated the version number from 1.4 to 1.5 --- docs/ocis/getting-started/_index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/ocis/getting-started/_index.md b/docs/ocis/getting-started/_index.md index 3b83d83c5d..8664c2a3d9 100644 --- a/docs/ocis/getting-started/_index.md +++ b/docs/ocis/getting-started/_index.md @@ -20,11 +20,11 @@ You can find the latest official release of oCIS at [our download mirror](https: The latest build from the master branch can be found at [our download mirrors testing section](https://download.owncloud.com/ocis/ocis/testing/). To run oCIS as binary you need to download it first and then run the following commands. -For this example, assuming version 1.4.0 of oCIS running on a Linux AMD64 host: +For this example, assuming version 1.5.0 of oCIS running on a Linux AMD64 host: ```console # download -curl https://download.owncloud.com/ocis/ocis/1.4.0/ocis-1.4.0-linux-amd64 --output ocis +curl https://download.owncloud.com/ocis/ocis/1.5.0/ocis-1.5.0-linux-amd64 --output ocis # make binary executable chmod +x ocis From 420447009bac7e6e491d6f5d40c2deb3550d11fa Mon Sep 17 00:00:00 2001 From: "A.Unger" Date: Fri, 23 Apr 2021 15:19:03 +0200 Subject: [PATCH 6/7] tweak backoff tolerance --- ocis/pkg/runtime/service/service.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ocis/pkg/runtime/service/service.go b/ocis/pkg/runtime/service/service.go index 464df996cf..268d7473fd 100644 --- a/ocis/pkg/runtime/service/service.go +++ b/ocis/pkg/runtime/service/service.go @@ -132,14 +132,23 @@ func Start(o ...Option) error { setMicroLogger() + // tolerance controls backoff cycles from the supervisor. + tolerance := 5 + totalBackoff := 0 + // Start creates its own supervisor. Running services under `ocis server` will create its own supervision tree. s.Supervisor = suture.New("ocis", suture.Spec{ EventHook: func(e suture.Event) { - if e.Type() == suture.EventTypeServiceTerminate { - halt <- os.Interrupt + if e.Type() == suture.EventTypeBackoff { + totalBackoff++ + if totalBackoff == tolerance { + halt <- os.Interrupt + } } s.Log.Info().Str("event", e.String()).Msg(fmt.Sprintf("supervisor: %v", e.Map()["supervisor_name"])) }, + FailureThreshold: 5, + FailureBackoff: 3 * time.Second, }) // reva storages have their own logging. For consistency sake the top level logging will cascade to reva. From d0c4882e95fabf0550a5ee37175d1a8002c67830 Mon Sep 17 00:00:00 2001 From: Willy Kloucek <34452982+wkloucek@users.noreply.github.com> Date: Mon, 26 Apr 2021 06:34:07 +0000 Subject: [PATCH 7/7] Automated changelog update [skip ci] --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07739a39ef..2c8b814573 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ The following sections list the changes for unreleased. ## Summary * Bugfix - Fix STORAGE_METADATA_ROOT default value override: [#1956](https://github.com/owncloud/ocis/pull/1956) +* Bugfix - Stop the supervisor if a service fails to start: [#1963](https://github.com/owncloud/ocis/pull/1963) ## Details @@ -16,6 +17,14 @@ The following sections list the changes for unreleased. been. This patch ensures the correct loading order of values. https://github.com/owncloud/ocis/pull/1956 + +* Bugfix - Stop the supervisor if a service fails to start: [#1963](https://github.com/owncloud/ocis/pull/1963) + + Steps to make the supervisor fail: + + `PROXY_HTTP_ADDR=0.0.0.0:9144 bin/ocis server` + + https://github.com/owncloud/ocis/pull/1963 # Changelog for [1.5.0] (2021-04-21) The following sections list the changes for 1.5.0.