Quick Start¶
Get up and running with uptool in 5 minutes!
Prerequisites¶
Make sure you have uptool installed. If not, see the Installation Guide.
Step 1: Initialize Your Project¶
Navigate to your project directory:
Step 2: Scan for Dependencies¶
Scan your project to detect supported manifest files and check for outdated dependencies:
Example output:
Found 5 manifest files:
✅ package.json (npm)
✅ Chart.yaml (helm)
✅ main.tf (terraform)
✅ .pre-commit-config.yaml (precommit)
✅ mise.toml (mise)
Scanning for updates...
Step 3: Plan Updates¶
Preview what would be updated without making changes:
Example output:
Updates available:
npm (package.json):
- react: 18.2.0 → 18.3.1
- typescript: 5.0.0 → 5.4.5
terraform (main.tf):
- aws: 5.0.0 → 5.70.0
precommit (.pre-commit-config.yaml):
- golangci-lint: v1.63.4 → v2.6.2
Dry Run
The plan command never modifies files. It only shows what would change.
Step 4: Apply Updates¶
Apply the updates with a diff preview:
This will:
- Update manifest files
- Show a diff of changes
- Preserve formatting and comments
- Validate the changes
Example diff output:
--- package.json
+++ package.json
@@ -5,7 +5,7 @@
"dependencies": {
- "react": "^18.2.0",
+ "react": "^18.3.1",
- "typescript": "^5.0.0"
+ "typescript": "^5.4.5"
}
}
Step 5: Review and Commit¶
After uptool applies the updates, review the changes:
Commit the changes:
Advanced Usage¶
Filter by Integration¶
Update only specific integrations:
# Update only npm packages
uptool update --only npm
# Update everything except terraform
uptool update --exclude terraform
Dry Run Mode¶
Preview changes without applying:
Quiet Mode¶
Suppress informational output (errors only):
Verbose Mode¶
Get detailed debug output:
Configuration File¶
Create a uptool.yaml configuration file to customize behavior:
version: 1
integrations:
- id: npm
enabled: true
policy:
update: minor # none, patch, minor, major
allow_prerelease: false
- id: terraform
enabled: true
policy:
update: major
allow_prerelease: false
- id: helm
enabled: false # Skip Helm charts
See the Configuration Guide for more details.
Using as a GitHub Action¶
Add uptool to your CI/CD pipeline:
name: Dependency Updates
on:
schedule:
- cron: '0 0 * * 1' # Weekly on Monday
workflow_dispatch:
jobs:
update-dependencies:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run uptool
uses: santosr2/uptool@v0.1
with:
command: update
create-pr: true
See the GitHub Action Usage Guide for more examples.
Example Configurations¶
See the examples/ directory for sample configurations: uptool.yaml, uptool-minimal.yaml, uptool-monorepo.yaml
Next Steps¶
- Configuration Guide - Customize uptool behavior
- Integrations - Learn about supported ecosystems
- GitHub Action Usage - Automate dependency updates
- Plugin Development - Add custom integrations