Skip to content

test: add OC11 docker smoke test, retire legacy smoke plans#934

Draft
DeepDiver1975 wants to merge 4 commits into
masterfrom
oc11-docker-smoke-test
Draft

test: add OC11 docker smoke test, retire legacy smoke plans#934
DeepDiver1975 wants to merge 4 commits into
masterfrom
oc11-docker-smoke-test

Conversation

@DeepDiver1975

Copy link
Copy Markdown
Member

Adds Server/Test_Plan_OC11_Docker_Smoke_Test.md — a canonical, persona-driven smoke test for the OC11 classic server (owncloud/core master, 11.0.0-prealpha) deployed via the owncloud/server:11.0.0-prealpha docker image.

What it covers

17 scenario Cases over the apps enabled by default in the image, plus a docker-based Setup section (occ via docker exec, sqlite default, two-instance federation, persona creation). Core file ops, user/group/public/federated sharing, external storage, encryption (master key), media/PDF/text viewers, comments, system tags, notifications, first-run wizard, external sites, activity, app management, and transfer-ownership.

Verified against the live image

The plan was authored and then corrected against a running owncloud/server:11.0.0-prealpha container (Community edition, PHP 8.3.6, sqlite). This caught several wrong assumptions from the initial best-effort triage:

  • The image bundles ~57 apps with 20 enabled by default (the real smoke scope) — not the 21-app community tarball set.
  • market is not present in the Community image; encryption and external ship disabled.
  • Correct env vars (OWNCLOUD_ADMIN_USERNAME/PASSWORD), correct occ commands (group:add-member, user:add --password-from-env, encryption via app:enable + useMasterKey), and data dir /mnt/data/files.

Replaces (deletes) the three overlapping legacy smoke plans

  • Test_Plan_Smoke_Test.md
  • Test_Plan_Simplified_Smoke_Test.md
  • Smoke_Test_Plan_customgroups.md

Their still-relevant coverage is folded into the new Cases (mapping documented in the plan's Replaces section); dead oc10.sh/hetzner_deploy/jw-qa/tarball/Travis/IE11 references are dropped.

Relation to #933

This builds on the triage report in #933 (still open). The two PRs both touch the smoke plans; whichever merges second should reconcile the triage report's status rows. This PR is the first concrete output of that triage.

🤖 Generated with Claude Code

Add Server/Test_Plan_OC11_Docker_Smoke_Test.md: a canonical persona-driven
smoke test for the OC11 classic server (owncloud/core master, 11.0.0-prealpha)
deployed via the owncloud/server:11.0.0-prealpha docker image.

Scope is the apps bundled in the docker image (verified from the daily tarball):
files/sharing/versions/trashbin, files_external, encryption, federation,
files_mediaviewer, comments, systemtags, notifications, firstrunwizard,
external, market, user_external. 15 scenario Cases plus a docker-based Setup
section (occ via docker exec, two-instance federation, persona creation).

Replaces and removes the three overlapping legacy smoke plans:
- Test_Plan_Smoke_Test.md
- Test_Plan_Simplified_Smoke_Test.md
- Smoke_Test_Plan_customgroups.md

Signed-off-by: Thomas Müller <1005065+DeepDiver1975@users.noreply.github.com>
Verified the plan against the real owncloud/server:11.0.0-prealpha image
(Community edition, PHP 8.3.6, sqlite default) and corrected discrepancies the
initial draft got wrong:

- Image bundles ~57 apps, 20 enabled by default (not the 21-app community-tarball
  set). Scope is the default-enabled set: activity, comments, configreport, dav,
  diagnostics, federation(+fed sharing), files(+sharing/versions/trashbin/external/
  mediaviewer/pdfviewer/texteditor), firstrunwizard, notifications, systemtags.
- market is NOT in the Community image; encryption/external ship disabled.
- Correct env vars OWNCLOUD_ADMIN_USERNAME/PASSWORD; sqlite is the default DB.
- Correct occ commands: group:add-member (not group:adduser),
  user:add --password-from-env, encryption via app:enable + useMasterKey
  (not encryption:select-encryption-type). datadirectory is /mnt/data/files.
- Added Cases for the now-in-scope default apps (pdfviewer/texteditor, activity)
  and reworked the market case into plain app enable/disable. 17 cases total.

Signed-off-by: Thomas Müller <1005065+DeepDiver1975@users.noreply.github.com>
- [ ] enable encryption: `occ encryption:enable`
- [ ] confirm the module is loaded: `occ encryption:list-modules` lists
`OC_DEFAULT_MODULE: Default encryption module [default*]`
- [ ] choose master-key mode (server-wide single key, recommended for OC):

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the back of my brain I remember that we were removing the individual per-user key encryption support.
Did that happen?
Is master-key mode now the only supported encryption mode?

@phil-davis

Copy link
Copy Markdown
Contributor

Looks pretty good to make sure we generally cover the breadth of the general user experience.

Maybe could add a couple of commands to get configreport and diagnostics output, to check that this information can be easily extracted from the docker environment for support.

@DeepDiver1975
DeepDiver1975 marked this pull request as draft June 15, 2026 10:44
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md Outdated
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md Outdated
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md Outdated
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md Outdated
Comment thread Server/Test_Plan_OC11_Docker_Smoke_Test.md
@anon-pradip

anon-pradip commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Also @DeepDiver1975 , since this PR is about improving the smoke plan, just FYI the file ownCloud Manual.pdf which comes by default is corrupted. If you think this information is unrelated to you/this PR then you can please inform someone related 😸

image

@DeepDiver1975

Copy link
Copy Markdown
Member Author

the file ownCloud Manual.pdf which

this file no longer exists for years - ignore that part

@anon-pradip

Copy link
Copy Markdown
Contributor

Hi, @DeepDiver1975 I am smoke-testing owncloud/server:11.0.0-prealpha and ran into an issue with federated sharing. Wanted to ask for guidance before filing a formal bug.

Setup:

  • Two containers on the same Docker network
  • Instance A: oc11-a:8080 (sharer, admin)
  • Instance B: oc11-b:8080 (recipient, richard)
  • HTTP only

Required config to get share creation working:

# On both instances
occ config:system:set sharing.federation.allowHttpFallback --value="true" --type=boolean
occ federation:trusted-servers:add http://oc11-b:8080  # on A
occ federation:trusted-servers:add http://oc11-a:8080  # on B

What works:

  • Share creation succeeds ✅
  • Richard receives notification on instance B ✅
  • POST /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending/1 returns 200 ✅

What fails:

  • Share does not appear in "Shared with you" after accepting first invitation
  • After accepting, infinite accept loop — folder never appears in Richard's Files

Logs from docker logs oc11-b during acceptance:

127.0.0.1 - CwUZBLU0Os7t5E8 "PROPFIND /public.php/webdav/ HTTP/1.1" 401

172.24.0.1 - richard "POST /ocs/v1.php/apps/files_sharing/api/v1/remote_shares/pending/1" 200

127.0.0.1 - CwUZBLU0Os7t5E8 "PROPFIND /public.php/webdav/ HTTP/1.1" 401

127.0.0.1 - CwUZBLU0Os7t5E8 "PROPFIND /public.php/webdav/ HTTP/1.1" 401

Instance B's sabre-dav successfully accepts the share (200) but then fails to mount
it via PROPFIND /public.php/webdav/ on instance A with 401 repeatedly.

Questions:

  1. Is there additional config needed for HTTP federation that I'm missing?
  2. Is this a known issue in this prealpha build?

Thanks!

@phil-davis

Copy link
Copy Markdown
Contributor

the file ownCloud Manual.pdf which

this file no longer exists for years - ignore that part

It is being distributed in the default skeleton directory in the published docker image.
So we should delete it from there.

@phil-davis

Copy link
Copy Markdown
Contributor

docker pull owncloud/server:11.0.0-rc1

Note: 11.0.0-rc1 has been published, so we use that from now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants