Skip to content

Conversation

klinch0
Copy link
Contributor

@klinch0 klinch0 commented Aug 7, 2025

Summary by CodeRabbit

  • Documentation
    • Added a new section detailing how administrators can add external application sources to the application catalog, including step-by-step instructions, sample manifests, and reference links.

Copy link

netlify bot commented Aug 7, 2025

Deploy Preview for cozystack ready!

Name Link
🔨 Latest commit 35a1634
🔍 Latest deploy log https://app.netlify.com/projects/cozystack/deploys/68945ddfd7afab00089e6801
😎 Deploy Preview https://deploy-preview-283--cozystack.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Contributor

coderabbitai bot commented Aug 7, 2025

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

Warning

Rate limit exceeded

@NickVolynkin has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 8 minutes and 57 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 058b001 and 35a1634.

📒 Files selected for processing (10)
  • content/en/docs/applications/clickhouse.md (1 hunks)
  • content/en/docs/applications/external.md (1 hunks)
  • content/en/docs/applications/ferretdb.md (1 hunks)
  • content/en/docs/applications/kafka.md (1 hunks)
  • content/en/docs/applications/mysql.md (1 hunks)
  • content/en/docs/applications/nats.md (1 hunks)
  • content/en/docs/applications/postgres.md (1 hunks)
  • content/en/docs/applications/rabbitmq.md (1 hunks)
  • content/en/docs/applications/redis.md (1 hunks)
  • content/en/docs/applications/tenant.md (1 hunks)

Walkthrough

A trailing blank line was removed from the end of the documentation file content/en/docs/applications/_index.md. No other content or functionality was modified.

Changes

Cohort / File(s) Change Summary
Documentation: Trailing Whitespace Cleanup
content/en/docs/applications/_index.md
Removed a trailing blank line at the end of the file without altering any content.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

A line once blank, now gone away,
The docs stay neat throughout the day.
No changes vast, just tidy cheer,
A rabbit hops, the path is clear!
🐇📜✨

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs-add-faq-for-extra-apps

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Summary of Changes

Hello @klinch0, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

I've updated the operations FAQ documentation by adding a new section that guides users through the process of integrating external applications. This update provides a structured approach to setting up repositories for these applications and includes practical examples of FluxCD configurations to manage their deployment within a Kubernetes environment. The goal is to streamline the onboarding of external services and applications.

Highlights

  • New FAQ Entry: How to add external app: I've added a comprehensive new section to the FAQ, detailing the process of integrating external applications. This section covers the necessary steps from repository creation to applying Kubernetes manifests.
  • Guidance on External App Repository Structure: The new documentation provides a clear example of a repository structure for external applications, including dedicated directories for Helm charts, system apps, resource definitions, marketplace panels, and system configurations.
  • FluxCD Manifest Examples: I've included practical YAML examples for setting up FluxCD's GitRepository and Kustomization resources, which are essential for managing external application deployments in a GitOps manner.
  • References to FluxCD Documentation: To ensure users have access to further details, I've linked directly to the official FluxCD documentation for HelmRelease, GitRepository, and Kustomization components.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request adds a new FAQ section on how to add external applications. The documentation is a good start, but it contains a typo in a URL, some unclear instructions, and opportunities to improve formatting for better readability. I've provided several suggestions to address these points and enhance the clarity of the guide.

### How to add external app

1. Create repository
See example: https://github.com/klinch0/cozy-exrta-apps

Choose a reason for hiding this comment

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

medium

There is a typo in the example repository URL. exrta should be extra.

Suggested change
See example: https://github.com/klinch0/cozy-exrta-apps
See example: https://github.com/klinch0/cozy-extra-apps

Comment on lines 401 to 405
`./apps` - helm charts with apps (will be installed from dashboard)
`./charts` - helm charts with system apps (will be installed permanently)
`./cozystackresourcedefinitions` - manifests with CozystackResourceDefinition for registration new resources in k8s api
`./marketplacepanels` - manifests with MarketplacePanel for creating app in dashboard
`./system` - helmreleases with system applications and namespaces

Choose a reason for hiding this comment

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

medium

The descriptions for the repository structure could be clearer and better formatted for readability. Using a bulleted list with backticks for code elements and slightly more descriptive text would be an improvement. This also removes a trailing space on the last line.

Suggested change
`./apps` - helm charts with apps (will be installed from dashboard)
`./charts` - helm charts with system apps (will be installed permanently)
`./cozystackresourcedefinitions` - manifests with CozystackResourceDefinition for registration new resources in k8s api
`./marketplacepanels` - manifests with MarketplacePanel for creating app in dashboard
`./system` - helmreleases with system applications and namespaces
- `./apps` - Helm charts for applications that can be installed from the dashboard.
- `./charts` - Helm charts for system applications that will be installed permanently.
- `./cozystackresourcedefinitions` - Manifests with `CozystackResourceDefinition` for registering new resources in the Kubernetes API.
- `./marketplacepanels` - Manifests with `MarketplacePanel` for creating application entries in the dashboard.
- `./system` - `HelmReleases` for system applications and namespaces.

`./marketplacepanels` - manifests with MarketplacePanel for creating app in dashboard
`./system` - helmreleases with system applications and namespaces

2. Create GitRepository

Choose a reason for hiding this comment

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

medium

The heading "Create GitRepository" is not entirely accurate, as the following manifest creates both a GitRepository and a Kustomization resource. A more descriptive heading would be better.

Suggested change
2. Create GitRepository
2. Create GitRepository and Kustomization

ref:
branch: main
timeout: 60s
url: https://github.com/< ... >.git

Choose a reason for hiding this comment

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

medium

The placeholder < ... > in the Git repository URL is a bit vague. It would be more helpful to provide a more descriptive placeholder.

Suggested change
url: https://github.com/< ... >.git
url: https://github.com/<your-username>/<your-repo-name>.git

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e907f24 and fab7e1c.

📒 Files selected for processing (1)
  • content/en/docs/operations/faq.md (1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.17.2)
content/en/docs/operations/faq.md

394-394: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (1)
content/en/docs/operations/faq.md (1)

408-434: Nit: path: ./ in the Kustomization is redundant

path defaults to the repository root, so the field can be omitted for brevity unless you intend to emphasise that behaviour.

@NickVolynkin NickVolynkin self-assigned this Aug 7, 2025
@klinch0 klinch0 force-pushed the docs-add-faq-for-extra-apps branch from fab7e1c to 4202bf3 Compare August 7, 2025 06:47
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

♻️ Duplicate comments (2)
content/en/docs/operations/faq.md (2)

391-400: Fix typo, replace bare URL and indent continuation lines to keep ordered-list rendering

The list breaks Markdown-lint rule MD034 and still contains the misspelled repo name (cozy-exrta-apps).
Indenting the continuation lines by four spaces (our house style) also prevents the ordered list from resetting.

-1. Create repository
-See example: https://github.com/klinch0/cozy-exrta-apps
-
-See FluxCD docs:
-- [HelmRelease](https://fluxcd.io/flux/components/helm/helmreleases/)
-- [GitRepository](https://fluxcd.io/flux/components/source/gitrepositories/)
-- [Kustomization](https://fluxcd.io/flux/components/kustomize/kustomizations/)
+1. Create repository
+
+    See example: [cozy-extra-apps](https://github.com/klinch0/cozy-extra-apps)
+
+    See FluxCD docs:
+    - [HelmRelease](https://fluxcd.io/flux/components/helm/helmreleases/)
+    - [GitRepository](https://fluxcd.io/flux/components/source/gitrepositories/)
+    - [Kustomization](https://fluxcd.io/flux/components/kustomize/kustomizations/)

401-406: Present directory layout as a fenced block or indent bullets

These bullets are flush-left, so they terminate the ordered list and violate our “4-space indent” convention (see team learning). Converting them to a fenced code block keeps the list intact and improves readability.

- - `./apps` - Helm charts for applications that can be installed from the dashboard.
- - `./charts` - Helm charts for system applications that will be installed permanently.
- - `./cozystackresourcedefinitions` - Manifests with `CozystackResourceDefinition` for registering new resources in the Kubernetes API.
- - `./marketplacepanels` - Manifests with `MarketplacePanel` for creating application entries in the dashboard.
- - `./system` - `HelmReleases` for system applications and namespaces.
+    ```
+    ./apps                         # Helm charts installable from the dashboard
+    ./charts                       # Helm charts for system apps (always installed)
+    ./cozystackresourcedefinitions # CRDs for registering new resources in the K8s API
+    ./marketplacepanels            # MarketplacePanel manifests for the dashboard
+    ./system                       # HelmReleases for system applications/namespaces
+    ```
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fab7e1c and 4202bf3.

📒 Files selected for processing (1)
  • content/en/docs/operations/faq.md (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: in the cozystack documentation, 4-character indents are used for markdown lists (e.g., `- list ite...
Learnt from: NickVolynkin
PR: cozystack/website#242
File: content/en/docs/operations/faq.md:0-0
Timestamp: 2025-07-08T12:26:13.298Z
Learning: In the Cozystack documentation, 4-character indents are used for markdown lists (e.g., `-   list item`) to maintain consistent indentation between numbered and ordered lists, especially when they're nested with paragraphs and sub-lists.

Applied to files:

  • content/en/docs/operations/faq.md
📚 Learning: in the cozystack documentation, bold text like "**oidc**" before a final note is used as a label/cal...
Learnt from: nbykov0
PR: cozystack/website#165
File: content/en/docs/getting-started/first-deployment.md:475-476
Timestamp: 2025-04-21T19:21:40.546Z
Learning: In the Cozystack documentation, bold text like "**OIDC**" before a final note is used as a label/callout rather than a formal section heading, which typically use markdown heading syntax (## or ###).

Applied to files:

  • content/en/docs/operations/faq.md
🪛 markdownlint-cli2 (0.17.2)
content/en/docs/operations/faq.md

394-394: Bare URL used

(MD034, no-bare-urls)

Comment on lines 407 to 435
2. Create GitRepository and Kustomization
```yaml
apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
metadata:
name: external-apps
namespace: cozy-public
spec:
interval: 1m0s
ref:
branch: main
timeout: 60s
url: https://github.com/<your-username>/<your-repo-name>.git
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: external-apps
namespace: cozy-public
spec:
force: false
interval: 10m0s
path: ./
prune: true
sourceRef:
kind: GitRepository
name: external-apps
```
Save the manifest to a file (e.g., `init-extra.yaml`) and apply it:
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Indent step 2 and its explanatory lines to stay inside the ordered list

Without indentation, “2.” renders as a new top-level list rather than the second item in the ongoing sequence.

-2. Create GitRepository and Kustomization
+2. Create GitRepository and Kustomization
+
+    ```yaml
+    # (manifest remains unchanged)
+    ```
+
+    Save the manifest to a file (e.g., `init-extra.yaml`) and apply it:

This keeps numbering consistent and aligns with prior indentation guidelines.

🤖 Prompt for AI Agents
In content/en/docs/operations/faq.md between lines 407 and 435, the step 2
heading and its explanatory lines are not indented properly, causing the ordered
list numbering to reset instead of continuing. To fix this, indent the entire
block of step 2 including the YAML code block and the following explanatory text
by four spaces so it stays nested inside the existing ordered list, preserving
consistent numbering and formatting.

@NickVolynkin NickVolynkin force-pushed the docs-add-faq-for-extra-apps branch 2 times, most recently from 7b55b74 to b319ab8 Compare August 7, 2025 07:14
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
content/en/docs/applications/_index.md (1)

30-30: Fix typo + avoid bare URL (MD034).

The repository name is misspelled (“exrta”) and the linter flags the naked URL.
Convert it into a proper Markdown link and correct the spelling.

-    See example: https://github.com/klinch0/cozy-exrta-apps
+    See example: [cozy-extra-apps](https://github.com/klinch0/cozy-extra-apps)
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4202bf3 and b319ab8.

📒 Files selected for processing (1)
  • content/en/docs/applications/_index.md (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: in the cozystack documentation, bold text like "**oidc**" before a final note is used as a label/cal...
Learnt from: nbykov0
PR: cozystack/website#165
File: content/en/docs/getting-started/first-deployment.md:475-476
Timestamp: 2025-04-21T19:21:40.546Z
Learning: In the Cozystack documentation, bold text like "**OIDC**" before a final note is used as a label/callout rather than a formal section heading, which typically use markdown heading syntax (## or ###).

Applied to files:

  • content/en/docs/applications/_index.md
🪛 markdownlint-cli2 (0.17.2)
content/en/docs/applications/_index.md

30-30: Bare URL used

(MD034, no-bare-urls)

@NickVolynkin NickVolynkin force-pushed the docs-add-faq-for-extra-apps branch 6 times, most recently from 69ba778 to 936c683 Compare August 7, 2025 08:00
Co-authored-by: Nick Volynkin <nick.volynkin@gmail.com>

Signed-off-by: kklinch0 <kklinch0@gmail.com>
Signed-off-by: Nick Volynkin <nick.volynkin@gmail.com>
@NickVolynkin NickVolynkin force-pushed the docs-add-faq-for-extra-apps branch from 936c683 to 35a1634 Compare August 7, 2025 08:03
@NickVolynkin NickVolynkin merged commit 124aa3b into main Aug 7, 2025
6 checks passed
@NickVolynkin NickVolynkin deleted the docs-add-faq-for-extra-apps branch August 7, 2025 08:04
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.

2 participants