-
-
Notifications
You must be signed in to change notification settings - Fork 46
Fix, improve and enable distribution upgrade routines #669
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Warning Rate limit exceeded@igorpecovnik has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 8 minutes and 37 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the 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. 📒 Files selected for processing (1)
WalkthroughRenames two Update entries in tools/json/config.system.json: Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Suggested labels
✨ Finishing Touches
🧪 Generate unit tests
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
1e429c3 to
bcb049d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (5)
tools/modules/functions/package.sh (2)
99-105: Registrations look good; align indentation for consistency.Function metadata is correct and consistent with other pkg_* entries. Indentation mixes spaces vs tabs; match surrounding style.
-module_options+=( - ["pkg_fix,author"]="@igorpecovnik" - ["pkg_fix,desc"]="Fix dependency issues" - ["pkg_fix,example"]="pkg_fix" - ["pkg_fix,feature"]="pkg_fix" - ["pkg_fix,status"]="Interface" -) +module_options+=( + ["pkg_fix,author"]="@igorpecovnik" + ["pkg_fix,desc"]="Fix dependency issues" + ["pkg_fix,example"]="pkg_fix" + ["pkg_fix,feature"]="pkg_fix" + ["pkg_fix,status"]="Interface" +)
107-110: Consider making pkg_fix noninteractive and config-safe.To mirror upgrade steps, avoid config prompts during fix-broken runs.
-pkg_fix() -{ - _pkg_have_stdin && debconf-apt-progress -- apt-get -y --fix-broken install "$@" || apt-get -y --fix-broken install "$@" -} +pkg_fix() +{ + # Keep existing configs; be noninteractive like other upgrade flows. + _pkg_have_stdin \ + && DEBIAN_FRONTEND=noninteractive debconf-apt-progress -- apt-get -y -o Dpkg::Options::="--force-confold" --fix-broken install "$@" \ + || DEBIAN_FRONTEND=noninteractive apt-get -y -o Dpkg::Options::="--force-confold" --fix-broken install "$@" +}tools/modules/system/release_upgrade.sh (3)
44-44: Good addition updating armbian.list; use word boundaries to avoid unintended replacements.Prevents touching URLs or other tokens that partially match the codename.
- [[ -f /etc/apt/sources.list.d/armbian.list ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/armbian.list + [[ -f /etc/apt/sources.list.d/armbian.list ]] && sed -ri "s/\b${distroid}\b/${upgrade}/g" /etc/apt/sources.list.d/armbian.listConsider applying the same boundary-safe replacement to the other sed lines for consistency.
39-45: Back up source files before in-place sed edits.Cheap safety net during release upgrades.
- [[ -f /etc/apt/sources.list.d/ubuntu.sources ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/ubuntu.sources + [[ -f /etc/apt/sources.list.d/ubuntu.sources ]] && cp -n /etc/apt/sources.list.d/ubuntu.sources{,.bak} && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/ubuntu.sources - [[ -f /etc/apt/sources.list.d/debian.sources ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/debian.sources + [[ -f /etc/apt/sources.list.d/debian.sources ]] && cp -n /etc/apt/sources.list.d/debian.sources{,.bak} && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/debian.sources - [[ -f /etc/apt/sources.list ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list + [[ -f /etc/apt/sources.list ]] && cp -n /etc/apt/sources.list{,.bak} && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list @@ - [[ -f /etc/apt/sources.list.d/armbian.sources ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/armbian.sources + [[ -f /etc/apt/sources.list.d/armbian.sources ]] && cp -n /etc/apt/sources.list.d/armbian.sources{,.bak} && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/armbian.sources - [[ -f /etc/apt/sources.list.d/armbian.list ]] && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/armbian.list + [[ -f /etc/apt/sources.list.d/armbian.list ]] && cp -n /etc/apt/sources.list.d/armbian.list{,.bak} && sed -i "s/$distroid/$upgrade/g" /etc/apt/sources.list.d/armbian.list
51-51: Revisit autopurge after upgrades.Autopurge can remove packages marked auto during the process (including kernels). Consider marking critical packages manual before this step or converting to a safer autoremove policy.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (3)
tools/json/config.system.json(1 hunks)tools/modules/functions/package.sh(1 hunks)tools/modules/system/release_upgrade.sh(2 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- tools/json/config.system.json
🧰 Additional context used
🧬 Code graph analysis (1)
tools/modules/system/release_upgrade.sh (1)
tools/modules/functions/package.sh (4)
pkg_update(81-84)pkg_upgrade(94-97)pkg_fix(107-110)pkg_full_upgrade(28-31)
bcb049d to
03c8cd0
Compare
03c8cd0 to
be40997
Compare
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
tools/include/markdown/LTSREL-header.md (1)
6-6: Remove stray trailing character.There’s a lone “6” at EOF that will render as text. Delete it.
-6
🧹 Nitpick comments (1)
tools/include/markdown/LTSREL-header.md (1)
3-5: Use canonical admonition syntax and tighten the wording.Lowercase the admonition type for MkDocs/Material compatibility and avoid implying upgrades are “safe.” Suggested edit also adds a concise title.
-!!! Note - - While LTS upgrades are considered safe, always back up your data before proceeding with a distribution upgrade. +!!! note "Backup recommended" + Even though LTS releases are generally stable, always back up your data before performing a distribution upgrade.If this content is rendered outside MkDocs/Material, consider a fallback:
Note: Even though LTS releases are generally stable, always back up your data before performing a distribution upgrade.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (5)
tools/include/markdown/LTSREL-header.md(1 hunks)tools/include/markdown/ROLREL-header.md(1 hunks)tools/json/config.system.json(1 hunks)tools/modules/functions/package.sh(1 hunks)tools/modules/system/release_upgrade.sh(2 hunks)
✅ Files skipped from review due to trivial changes (1)
- tools/include/markdown/ROLREL-header.md
🚧 Files skipped from review as they are similar to previous changes (3)
- tools/modules/functions/package.sh
- tools/json/config.system.json
- tools/modules/system/release_upgrade.sh
🧰 Additional context used
🪛 LanguageTool
tools/include/markdown/LTSREL-header.md
[style] ~2-~2: Using many exclamation marks might seem excessive (in this case: 3 exclamation marks for a text that’s 350 characters long)
Context: ...rioritize stability over new features. !!! Note While LTS upgrades are consid...
(EN_EXCESSIVE_EXCLAMATION)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
- GitHub Check: samba install (bookworm)
- GitHub Check: Stable repository (bookworm)
- GitHub Check: Rolling repository (bookworm)
- GitHub Check: Uptimekuma install (noble)
- GitHub Check: Home Assistant install (bookworm)
- GitHub Check: Duplicati install (noble)
- GitHub Check: Cockpit install (noble)
7cf47fe to
abafcd9
Compare
abafcd9 to
9938143
Compare
Description
Enable release upgrades from armbian-config
Issue reference: armbian/build#8569
Testing Procedure
Checklist