Skip to content

refactor: deduplicate addon env vars — single source of truth in addons-ref.md#2652

Merged
marcusquinn merged 1 commit intomainfrom
refactor/cloudron-dedup-addon-vars
Mar 1, 2026
Merged

refactor: deduplicate addon env vars — single source of truth in addons-ref.md#2652
marcusquinn merged 1 commit intomainfrom
refactor/cloudron-dedup-addon-vars

Conversation

@marcusquinn
Copy link
Owner

@marcusquinn marcusquinn commented Mar 1, 2026

Summary

  • Replace 6 inline addon env var sections (PostgreSQL, MySQL, Redis, Sendmail, LDAP, OIDC) in cloudron-app-packaging.md with a pointer to the authoritative addons-ref.md imported from upstream Cloudron skills in PR docs: ingest Cloudron 9.1 official AI skills and update docs #2651
  • The reference file covers all 14 addons with full env var lists and addon-specific options — a strict superset of what was duplicated
  • Keeps the General Variables section (CLOUDRON_APP_ORIGIN, etc.) since those are platform-wide, not addon-specific
  • Adds cross-reference note to the Addon Selection decision table
  • Fixes pre-existing trailing whitespace in nginx config example (MD009)

Why

Two sources of truth for addon env vars will inevitably drift — when Cloudron adds new env vars or options, only one file would get updated. The imported addons-ref.md is the authoritative upstream reference and is registered for update monitoring via skill-sources.json.

Net change: -59 lines of duplicated content, +2 cross-reference pointers.

Summary by CodeRabbit

  • Documentation
    • Streamlined environment variable documentation with consolidated references and improved cross-linking.
    • Clarified that environment variables are read at runtime on each start and may change between restarts.
    • Added dedicated section for always-available environment variables for easier reference.

Replace inline addon environment variable listings (PostgreSQL, MySQL,
Redis, Sendmail, LDAP, OIDC) with a pointer to the authoritative
addons-ref.md from the upstream Cloudron skills repo. The reference
file covers all 14 addons with full env var lists and addon-specific
options — a strict superset of what was duplicated here.

Keeps the General Variables section (CLOUDRON_APP_ORIGIN, etc.) since
those are not addon-specific and are not covered in addons-ref.md.

Also fixes trailing whitespace in nginx config example (MD009).
@gemini-code-assist
Copy link

Summary of Changes

Hello, 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!

This pull request refactors the documentation for Cloudron application packaging by centralizing addon environment variable definitions. It eliminates redundant information previously scattered across cloudron-app-packaging.md by directing users to a comprehensive, authoritative addons-ref.md file. This change ensures that all addon-specific environment variables and options are maintained in a single location, preventing inconsistencies and simplifying future updates. Additionally, it includes a minor formatting fix in an Nginx configuration example.

Highlights

  • Documentation Refactoring: Replaced six inline addon environment variable sections (PostgreSQL, MySQL, Redis, Sendmail, LDAP, OIDC) in cloudron-app-packaging.md with a single pointer to the authoritative addons-ref.md.
  • Single Source of Truth: Established addons-ref.md as the single source of truth for addon environment variables, preventing documentation drift and ensuring comprehensive coverage of all 14 addons.
  • Nginx Configuration Cleanup: Fixed pre-existing trailing whitespace in an Nginx configuration example within cloudron-app-packaging.md.
  • Cross-referencing: Added a cross-reference note to the Addon Selection decision table for improved navigation.
Changelog
  • .agents/tools/deployment/cloudron-app-packaging.md
    • Added a note to the localstorage section, directing users to addons-ref.md for full environment variable lists and addon options.
    • Removed trailing whitespace from an Nginx server block configuration example.
    • Deleted detailed inline environment variable sections for PostgreSQL, MySQL, Redis, Sendmail, LDAP, and OIDC.
    • Inserted a new paragraph referencing addons-ref.md for all addon environment variables and options.
    • Added a "Key pattern" note about reading env vars at runtime and running DB migrations on start.
    • Added an introductory sentence for the "General Variables" section.
Activity
  • No specific activity (comments, reviews, etc.) has been recorded for this pull request.
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 by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

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 pull request 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. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

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.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 1, 2026

Walkthrough

Documentation consolidation in Cloudron deployment guide: replaces redundant per-addon environment variable examples with centralized reference link, introduces runtime behavior notes about environment variable handling and database migrations, and establishes a dedicated section for universally available CLOUDRON variables.

Changes

Cohort / File(s) Summary
Cloudron Deployment Documentation
.agents/tools/deployment/cloudron-app-packaging.md
Consolidated addon-specific environment variable examples into a single reference pointer to addons-ref.md; added "Key pattern" section documenting runtime env var reading behavior and DB migration timing; introduced "General Variables (Always Available)" section listing CLOUDRON_APP_ORIGIN, CLOUDRON_APP_DOMAIN, and CLOUDRON flag with cross-references to addon reference documentation.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related PRs

Poem

📚 ✨ Docs once verbose, now lean and bright,
Environment variables gathered in one sight,
Addons consolidated, references unified true,
Deployment guidance cleaner—for me and for you! 🚀

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main refactoring change: deduplicating addon environment variables and establishing a single source of truth in addons-ref.md, which aligns with the changeset's core objective.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch refactor/cloudron-dedup-addon-vars

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

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

github-actions bot commented Mar 1, 2026

🔍 Code Quality Report

�[0;35m[MONITOR]�[0m Code Review Monitoring Report

�[0;34m[INFO]�[0m Latest Quality Status:
SonarCloud: 0 bugs, 0 vulnerabilities, 109 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Sun Mar 1 18:56:37 UTC 2026: Code review monitoring started
Sun Mar 1 18:56:38 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 109

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 109
  • VULNERABILITIES: 0

Generated on: Sun Mar 1 18:56:40 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

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 effectively deduplicates the addon environment variable documentation by centralizing it into a single source of truth, which is a solid improvement for maintainability. The included whitespace fix and added cross-references are also beneficial. I've provided a couple of suggestions to further enhance the readability and clarity of the new documentation sections, with one suggestion aligning with our guidelines for presenting operational details.

```

**Note**: Cloudron Redis REQUIRES authentication.
For the full environment variable reference for all addons (mysql, postgresql, mongodb, redis, ldap, oidc, sendmail, recvmail, email, proxyauth, scheduler, tls, turn, docker) including addon-specific options, see [addons-ref.md](cloudron-app-packaging-skill/addons-ref.md).

Choose a reason for hiding this comment

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

medium

For better readability, it would be helpful to format the list of addon names as code spans using backticks. This makes them stand out from the surrounding text and is a common convention for technical terms.

Suggested change
For the full environment variable reference for all addons (mysql, postgresql, mongodb, redis, ldap, oidc, sendmail, recvmail, email, proxyauth, scheduler, tls, turn, docker) including addon-specific options, see [addons-ref.md](cloudron-app-packaging-skill/addons-ref.md).
For the full environment variable reference for all addons (`mysql`, `postgresql`, `mongodb`, `redis`, `ldap`, `oidc`, `sendmail`, `recvmail`, `email`, `proxyauth`, `scheduler`, `tls`, `turn`, `docker`) including addon-specific options, see [addons-ref.md](cloudron-app-packaging-skill/addons-ref.md).

CLOUDRON_OIDC_CLIENT_SECRET=client_secret
CLOUDRON_OIDC_CALLBACK_URL=https://app.domain.com/callback
```
**Key pattern**: Read env vars at runtime on every start — values can change across restarts. Run DB migrations on each start.

Choose a reason for hiding this comment

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

medium

The "Key pattern" line contains two distinct but important pieces of advice. To improve clarity and make them easier to digest, consider presenting them as a bulleted list. This aligns with the guideline to format important operational details as bullet points for clarity and readability.

Suggested change
**Key pattern**: Read env vars at runtime on every start — values can change across restarts. Run DB migrations on each start.
**Key patterns**:
* Read env vars at runtime on every start — values can change across restarts.
* Run DB migrations on each start.
References
  1. For important operational details like task claiming, format them as bullet points for clarity and readability.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 1, 2026

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.

🧹 Nitpick comments (1)
.agents/tools/deployment/cloudron-app-packaging.md (1)

496-496: Consider qualifying the database migration advice.

The note states "Run DB migrations on each start" as a blanket recommendation. Consider softening this to acknowledge that:

  • Many frameworks have built-in migration tracking that automatically skips already-applied migrations
  • Not all apps require migrations on every start
  • The intent is to ensure migrations are checked/run if needed, not necessarily executed blindly

Suggested rephrasing: "Check and apply DB migrations on each start as needed (most frameworks handle idempotency)."

📝 Proposed refinement
-**Key pattern**: Read env vars at runtime on every start — values can change across restarts. Run DB migrations on each start.
+**Key pattern**: Read env vars at runtime on every start — values can change across restarts. Check and apply DB migrations on each start (most frameworks handle idempotency automatically).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/tools/deployment/cloudron-app-packaging.md at line 496, The guidance
"Run DB migrations on each start" is too absolute; update the sentence under the
"Key pattern" (the line containing "Run DB migrations on each start") to a
softer phrasing such as "Check and apply DB migrations on each start as needed
(most frameworks handle idempotency)." Keep the surrounding context about
reading env vars at runtime unchanged and ensure the new wording conveys that
many frameworks skip already-applied migrations and that migrations should be
performed only when required.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.agents/tools/deployment/cloudron-app-packaging.md:
- Line 496: The guidance "Run DB migrations on each start" is too absolute;
update the sentence under the "Key pattern" (the line containing "Run DB
migrations on each start") to a softer phrasing such as "Check and apply DB
migrations on each start as needed (most frameworks handle idempotency)." Keep
the surrounding context about reading env vars at runtime unchanged and ensure
the new wording conveys that many frameworks skip already-applied migrations and
that migrations should be performed only when required.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 46ed3cb and 43804e8.

📒 Files selected for processing (1)
  • .agents/tools/deployment/cloudron-app-packaging.md

@marcusquinn marcusquinn merged commit fc636aa into main Mar 1, 2026
29 checks passed
@marcusquinn marcusquinn deleted the refactor/cloudron-dedup-addon-vars branch March 3, 2026 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactor Auto-created from TODO.md tag

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant