Repository navigation
Add docs - #422
Add docs#422Bohreromir wants to merge 18 commits into
Conversation
Coverage Report
File CoverageNo changed files found. |
56738af to
d73ffdf
Compare
d73ffdf to
1df60d8
Compare
1df60d8 to
eba1467
Compare
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.
6b777fa to
6d08dfd
Compare
Getting started also needs the Secret Operator for the SecretClasses and an Ingress or reverse proxy that serves Cockpit over HTTPS.
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.
|
|
||
| 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. |
There was a problem hiding this comment.
| * 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. |
|
|
||
| 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. | ||
|
|
There was a problem hiding this comment.
We should probably include a screenshot of the entrypoint of the Cockpit (most likely the dashboard with a few bookmarks).
There was a problem hiding this comment.
Screenshots are so annoying to update...... but we should have at least one or two somewhere, not more in my opinion.
There was a problem hiding this comment.
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[]. |
There was a problem hiding this comment.
| 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. |
| @@ -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. | |||
There was a problem hiding this comment.
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?
|
|
||
| == 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. |
There was a problem hiding this comment.
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: |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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. | |||
There was a problem hiding this comment.
This list and the one below can just become outdated fast. I'd not name implementation specifics here.
|
|
||
| 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. | ||
|
|
There was a problem hiding this comment.
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`. |
There was a problem hiding this comment.
| <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. |
There was a problem hiding this comment.
| 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: |
There was a problem hiding this comment.
| 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`. |
There was a problem hiding this comment.
Can we make this a bullet point list?
| |PostgreSQL host. | ||
|
|
||
| |`DATABASE_PORT` | ||
| |`31432` |
There was a problem hiding this comment.
This is probably a fix in the code but PostgreSQL defaults to 5432 and I think we should also default to that.
There was a problem hiding this comment.
Yes, will do in another pr with the code chagnes
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
Reviewer
Acceptance