Added manual upgrade steps (CE to EE) and backup for other deployment methods#220
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughDocumentation restructuring for backup and restore procedures across Plane deployments. Reorganizes Docker Compose guidance with new subsections, introduces manual backup/restore workflows for community-to-commercial migration without CLI dependencies, and adds consolidated deployment-method guidance with platform-specific considerations. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). 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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
docs/self-hosting/manage/backup-restore.md (1)
1-174:⚠️ Potential issue | 🔴 CriticalRun Prettier formatting to fix multiple line length violations.
The file has multiple lines exceeding the 120 character limit required by the coding guidelines:
- Line 4 (keywords): 128 characters
- Line 9 (description): 220 characters
- Lines 15, 48, 86, 107, 111, 158, 167: also exceed 120 characters
Run
prettier --write docs/self-hosting/manage/backup-restore.mdto fix these formatting violations before merging. Prettier formatting checks must pass in CI.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/self-hosting/manage/backup-restore.md` around lines 1 - 174, The file has multiple lines exceeding the 120-char limit; run Prettier to reflow long lines and fix formatting by executing "prettier --write docs/self-hosting/manage/backup-restore.md" (or your repo's configured prettier command), ensure Prettier's printWidth is 120, review and commit the updated file; specifically address long frontmatter fields (title, description, keywords) and long content under headings like "Backup and restore data", "For Docker Compose", "Backup data", and "Restore data" so CI formatting checks pass.docs/self-hosting/upgrade-from-community.md (1)
1-232:⚠️ Potential issue | 🔴 CriticalRemove extra blank line before "What's next" section to fix Prettier formatting.
The file has an extra blank line at line 233 (after the
:::closing tag and before the## What's nextheading) that violates Prettier formatting rules. Runprettier --writeto fix it.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/self-hosting/upgrade-from-community.md` around lines 1 - 232, There is an extra blank line between the closing "::: " block and the "## What's next" heading causing Prettier formatting errors; remove the stray blank line right after the final "::: " closing tag so the "## What's next" heading immediately follows it, then run prettier --write (or your project's formatting task) to reformat the file; locate the section by searching for the closing "::: " token and the "## What's next" header to make the fix.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/self-hosting/manage/backup-restore.md`:
- Line 158: The line "For Kubernetes, or other deployment methods, use your
platform's native backup tools. Plane stores data in two places that need to be
backed up:" exceeds the 120-character limit; split or wrap this sentence in
docs/self-hosting/manage/backup-restore.md so no resulting line is longer than
120 characters (e.g., break into two sentences or wrap after "backup tools." or
"Plane stores data..."), keeping the original wording and punctuation intact and
ensuring each new line stays ≤120 chars.
In `@docs/self-hosting/upgrade-from-community.md`:
- Around line 148-154: The doc uses hardcoded container names
(plane-app-plane-db-1 and plane-app-plane-minio-1) which can differ if the
user’s parent directory isn’t "plane-app"; add a short tip near both docker cp
examples explaining the container-name pattern
({directory-name}-{service-name}-{replica}) and instruct users to discover their
actual container names with docker ps --filter "name=minio" for MinIO and docker
ps --filter "name=db" or docker ps --filter "name=postgres" for the database,
then replace the example container names accordingly so the docker cp commands
succeed.
---
Outside diff comments:
In `@docs/self-hosting/manage/backup-restore.md`:
- Around line 1-174: The file has multiple lines exceeding the 120-char limit;
run Prettier to reflow long lines and fix formatting by executing "prettier
--write docs/self-hosting/manage/backup-restore.md" (or your repo's configured
prettier command), ensure Prettier's printWidth is 120, review and commit the
updated file; specifically address long frontmatter fields (title, description,
keywords) and long content under headings like "Backup and restore data", "For
Docker Compose", "Backup data", and "Restore data" so CI formatting checks pass.
In `@docs/self-hosting/upgrade-from-community.md`:
- Around line 1-232: There is an extra blank line between the closing "::: "
block and the "## What's next" heading causing Prettier formatting errors;
remove the stray blank line right after the final "::: " closing tag so the "##
What's next" heading immediately follows it, then run prettier --write (or your
project's formatting task) to reformat the file; locate the section by searching
for the closing "::: " token and the "## What's next" header to make the fix.
|
|
||
| ## Other deployment methods | ||
|
|
||
| For Kubernetes, or other deployment methods, use your platform's native backup tools. Plane stores data in two places that need to be backed up: |
There was a problem hiding this comment.
Line exceeds 120 character limit.
Line 158 contains 161 characters, exceeding the 120 character line width requirement.
📏 Proposed fix to wrap the line
-For Kubernetes, or other deployment methods, use your platform's native backup tools. Plane stores data in two places that need to be backed up:
+For Kubernetes, or other deployment methods, use your platform's native backup tools. Plane stores data in two
+places that need to be backed up:As per coding guidelines, files should maintain a 120 character line width.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| For Kubernetes, or other deployment methods, use your platform's native backup tools. Plane stores data in two places that need to be backed up: | |
| For Kubernetes, or other deployment methods, use your platform's native backup tools. Plane stores data in two | |
| places that need to be backed up: |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/self-hosting/manage/backup-restore.md` at line 158, The line "For
Kubernetes, or other deployment methods, use your platform's native backup
tools. Plane stores data in two places that need to be backed up:" exceeds the
120-character limit; split or wrap this sentence in
docs/self-hosting/manage/backup-restore.md so no resulting line is longer than
120 characters (e.g., break into two sentences or wrap after "backup tools." or
"Plane stores data..."), keeping the original wording and punctuation intact and
ensuring each new line stays ≤120 chars.
| docker cp plane-app-plane-db-1:/var/lib/postgresql/data/. db/ | ||
| ``` | ||
|
|
||
| 3. Back up MinIO uploads: | ||
|
|
||
| ```bash | ||
| docker cp plane-app-plane-minio-1:/export/uploads minio/uploads/ |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
# Find docker-compose files
fd -e yml -e yaml . | grep -i docker-composeRepository: makeplane/developer-docs
Length of output: 50
🏁 Script executed:
# Check the markdown file frontmatter and content
head -50 docs/self-hosting/upgrade-from-community.mdRepository: makeplane/developer-docs
Length of output: 2080
🏁 Script executed:
# Search for container names in docker-compose files
rg "plane-app|services:" --type yaml -A 5 | head -100Repository: makeplane/developer-docs
Length of output: 50
🏁 Script executed:
# Check if there's a docker-compose file in the repo root or docs
find . -maxdepth 3 -name "*docker-compose*" -type fRepository: makeplane/developer-docs
Length of output: 50
🏁 Script executed:
# Get lines 148-154 of the markdown file
sed -n '148,154p' docs/self-hosting/upgrade-from-community.mdRepository: makeplane/developer-docs
Length of output: 248
🏁 Script executed:
# Get more context around those lines
sed -n '140,160p' docs/self-hosting/upgrade-from-community.mdRepository: makeplane/developer-docs
Length of output: 453
🏁 Script executed:
# Search for container name references in docs
rg "docker cp|plane-app-plane" docs/ -A 2 -B 2Repository: makeplane/developer-docs
Length of output: 1294
🏁 Script executed:
# Search for docker ps or container discovery guidance in docs
rg "docker ps|container name|project.name|PROJECT_NAME" docs/ -iRepository: makeplane/developer-docs
Length of output: 6818
🏁 Script executed:
# Check if there are other self-hosting docs that address container naming
fd -e md . docs/self-hosting/ | head -20Repository: makeplane/developer-docs
Length of output: 952
🏁 Script executed:
# Check the documentation style - look for existing tip/warning boxes
rg ":::tip|:::warning|:::info|:::note" docs/self-hosting/ -A 2Repository: makeplane/developer-docs
Length of output: 2143
🏁 Script executed:
# Check the reset-password.md file to see how it handles container discovery
cat docs/self-hosting/govern/reset-password.md | grep -A 10 -B 5 "docker ps"Repository: makeplane/developer-docs
Length of output: 437
🏁 Script executed:
# Check storage-errors.md to see the container guidance
sed -n '1,50p' docs/self-hosting/troubleshoot/storage-errors.mdRepository: makeplane/developer-docs
Length of output: 1963
🏁 Script executed:
# Check the setup.sh approach mentioned in the upgrade doc
sed -n '1,200p' docs/self-hosting/upgrade-from-community.md | grep -A 20 "setup.sh backup"Repository: makeplane/developer-docs
Length of output: 837
🏁 Script executed:
# Check if there's a methods doc that explains container naming
cat docs/self-hosting/methods/docker-compose.md 2>/dev/null | head -100Repository: makeplane/developer-docs
Length of output: 4407
🏁 Script executed:
# Search for how other docs reference containers
rg "container.*name|<container" docs/self-hosting/ -B 2 -A 2Repository: makeplane/developer-docs
Length of output: 1533
Add guidance for discovering actual database and MinIO container names
The hardcoded container names plane-app-plane-db-1 and plane-app-plane-minio-1 assume the installation was performed in a directory named "plane-app". Container names are generated from the parent directory name following the pattern {directory-name}-{service-name}-{replica}. Users who installed Plane in a differently named directory will have different container names and these commands will fail.
Add container discovery tips
2. Back up PostgreSQL data:
+ :::tip
+ If the command below fails, run `docker ps --filter "name=db"` to find your actual database container name.
+ Replace `plane-app-plane-db-1` with your container name.
+ :::
+
```bash
docker cp plane-app-plane-db-1:/var/lib/postgresql/data/. db/
```
3. Back up MinIO uploads:
+ :::tip
+ If the command below fails, run `docker ps --filter "name=minio"` to find your actual MinIO container name.
+ Replace `plane-app-plane-minio-1` with your container name.
+ :::
+
```bash
docker cp plane-app-plane-minio-1:/export/uploads minio/uploads/
```🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@docs/self-hosting/upgrade-from-community.md` around lines 148 - 154, The doc
uses hardcoded container names (plane-app-plane-db-1 and
plane-app-plane-minio-1) which can differ if the user’s parent directory isn’t
"plane-app"; add a short tip near both docker cp examples explaining the
container-name pattern ({directory-name}-{service-name}-{replica}) and instruct
users to discover their actual container names with docker ps --filter
"name=minio" for MinIO and docker ps --filter "name=db" or docker ps --filter
"name=postgres" for the database, then replace the example container names
accordingly so the docker cp commands succeed.
Summary by CodeRabbit