Skip to content

Add docs - #422

Open
Bohreromir wants to merge 18 commits into
mainfrom
worktree-docs-antora
Open

Bohreromir wants to merge 18 commits into
mainfrom
worktree-docs-antora

Conversation

@Bohreromir

@Bohreromir Bohreromir commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

Description

Warning

This adds the docs to this repo only. Integration into the docs is in here: stackable-utils#133

Docs

Release note

Checklist

Author

  • AI review done, findings addressed
  • Tests added or updated
  • Changelog updated (if the repo keeps one)

Reviewer

  • Useful comments and logging
  • Docs added or updated per the style guide

Acceptance

  • Check for release notes and docs

@Bohreromir Bohreromir linked an issue Oct 28, 2026 that may be closed by this pull request
6 tasks
@github-actions

github-actions Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 67.49% 9183 / 13605
🔵 Statements 66.45% 12363 / 18604
🔵 Functions 68.27% 2965 / 4343
🔵 Branches 57.42% 5177 / 9015
File CoverageNo changed files found.
Generated in workflow #1267 for commit e7de79d by the Vitest Coverage Report Action

@Bohreromir
Bohreromir force-pushed the worktree-docs-antora branch from 56738af to d73ffdf Compare October 29, 2026 13:26
@Bohreromir Bohreromir self-assigned this Oct 29, 2026
@Bohreromir
Bohreromir force-pushed the worktree-docs-antora branch from d73ffdf to 1df60d8 Compare October 30, 2026 10:54
@Bohreromir
Bohreromir force-pushed the worktree-docs-antora branch from 1df60d8 to eba1467 Compare October 30, 2026 11:16
@Bohreromir Bohreromir mentioned this pull request Oct 30, 2026
11 of 17 tasks
Cockpit is released together with the SDP, so the docs become the
'cockpit' module of the 'home' component instead of a component of
their own. The release scripts set the version on release branches.
@Bohreromir Bohreromir moved this to Development: Waiting for Review in Stackable Engineering Nov 4, 2026
@Bohreromir
Bohreromir marked this pull request as ready for review November 4, 2026 10:58
@Bohreromir Bohreromir changed the title First docs draft Add docs Nov 4, 2026
better-auth 1.7 serves the generic OAuth callback at
/api/auth/callback/oidc. The Trino TLS certificate from the Secret
Operator covers the headless role group Service, not trino-coordinator.
@Techassi
Techassi self-requested a review November 9, 2026 14:41
@lfrancke lfrancke moved this from Development: Waiting for Review to Development: In Review in Stackable Engineering Nov 9, 2026

@Techassi Techassi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Just a few comments, as @lfrancke is reviewing this more thoroughly.

Comment thread docs/modules/cockpit/pages/index.adoc Outdated

Cockpit consists of modules, and more are added over time:

* xref:modules/trino.adoc[Trino]: a SQL editor with code completion and a schema browser.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
* xref:modules/trino.adoc[Trino]: a SQL editor with code completion and a schema browser.
* xref:modules/trino.adoc[Trino]: an SQL editor with code completion and a schema browser.

Comment on lines +7 to +10

Stackable Cockpit is a web UI for the Stackable Data Platform (SDP).
Users log in once through OpenID Connect (OIDC) and work with the platform's services from a single place.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We should probably include a screenshot of the entrypoint of the Cockpit (most likely the dashboard with a few bookmarks).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Screenshots are so annoying to update...... but we should have at least one or two somewhere, not more in my opinion.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

So what about a npm run docs:screenshots ;)
#456


This guide installs Cockpit with Helm and runs a first Trino query.
You need an existing PostgreSQL database, an OIDC client for Cockpit, a Trino cluster, the Stackable Secret Operator and an Ingress or reverse proxy that serves `https://cockpit.example.com`.
Register the OIDC client with the redirect URI `https://cockpit.example.com/api/auth/callback/oidc`, see xref:installation/authentication.adoc[].

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
Register the OIDC client with the redirect URI `https://cockpit.example.com/api/auth/callback/oidc`, see xref:installation/authentication.adoc[].
Register the OIDC client with the redirect URI `https://cockpit.example.com/api/auth/callback/oidc`, see the xref:installation/authentication.adoc[authentication] page for more details.

Comment thread docs/modules/cockpit/pages/index.adoc Outdated
@@ -0,0 +1,26 @@
= Stackable Cockpit
:description: Stackable Cockpit is a web UI for the Stackable Data Platform with a Trino SQL editor, an S3 storage browser and a dashboard with bookmarks.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Can we phrase this a bit more "openly" so that it is still correct-ish when we add more components but forget to update the description?

Comment thread docs/modules/cockpit/pages/index.adoc Outdated

== Architecture

Cockpit is a Node.js server that connects to Trino as the logged-in user and to S3 with the connections each user configures.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I'd say "Node.js server" is an implementation detail we can leave out. And I also don't think we need to say what goes into PostgreSQL. The code is available if needed. I'd just remove this entire section (Architecture). It's just going to drift.

name: cockpit
tls:
secretClass: tls # <2>
trino:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Wasn't it also possible to connect to a Trino from inside Cockpit itself?

If so I think we should probably mention that this 1:1 connection is potentially only temporary.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Sure, both is possible at the moment. You can either set a fixed connection (might change that to an arbitrary number in the future) or have users connect them manually

@@ -0,0 +1,23 @@
= Database
:description: Connect Stackable Cockpit to PostgreSQL, which stores users, sessions, bookmarks and storage connections, and configure TLS for the connection.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This list and the one below can just become outdated fast. I'd not name implementation specifics here.

Comment on lines +7 to +10

Stackable Cockpit is a web UI for the Stackable Data Platform (SDP).
Users log in once through OpenID Connect (OIDC) and work with the platform's services from a single place.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Screenshots are so annoying to update...... but we should have at least one or two somewhere, not more in my opinion.

secretClass: tls # <2>
----
<1> `verify-full` (default), `require` (encrypt without verification) or `disable`.
<2> Provides the CA certificate of PostgreSQL. Alternatively set `caCert` to a mounted file. Both require `verify-full`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
<2> Provides the CA certificate of PostgreSQL. Alternatively set `caCert` to a mounted file. Both require `verify-full`.
<2> Provides the CA certificate of PostgreSQL. Alternatively set `caCert` to a mounted file. `secretClass` and `caCert` both require `verify-full`.

<1> The URL users open in the browser.
<2> Scopes requested in addition to `openid`, `profile` and `email`.
<3> The secret that signs session cookies. If empty, the chart generates a Secret (`cockpit-session` for the release `cockpit`) and keeps it across `helm upgrade`.
Set it explicitly when deploying with `helm template` or Argo CD, which cannot read the existing Secret, otherwise every deployment logs out all users.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
Set it explicitly when deploying with `helm template` or Argo CD, which cannot read the existing Secret, otherwise every deployment logs out all users.
Set it explicitly when deploying with `helm template` or Argo CD. They cannot read the existing Secret, so every deployment would generate a new one and log out all users.

The storage module is a file browser for S3-compatible object storage.
Users browse buckets, upload and download files, preview common formats such as CSV, Parquet, images, PDFs and archives, and edit text files.

The module is disabled by default:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
The module is disabled by default:
The module is disabled by default.
To enable it, set:

:description: Install Stackable Cockpit on Kubernetes with Helm, connect it to an OIDC provider, PostgreSQL and Trino, and run your first SQL query.

This guide installs Cockpit with Helm and runs a first Trino query.
You need an existing PostgreSQL database, an OIDC client for Cockpit, a Trino cluster, the Stackable Secret Operator and an Ingress or reverse proxy that serves `https://cockpit.example.com`.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Can we make this a bullet point list?

|PostgreSQL host.

|`DATABASE_PORT`
|`31432`

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This is probably a fix in the code but PostgreSQL defaults to 5432 and I think we should also default to that.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Yes, will do in another pr with the code chagnes

@Bohreromir
Bohreromir added this pull request to stack #455 November 10, 2026 18:40
@Bohreromir
Bohreromir requested a review from lfrancke November 10, 2026 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Development: In Review

Development

Successfully merging this pull request may close these issues.

Documentation

3 participants