-
Notifications
You must be signed in to change notification settings - Fork 116
Update go dependencies and introduce renovate #1010
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
base: main
Are you sure you want to change the base?
Conversation
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThis PR updates several Go module dependencies and introduces Renovate configuration to automate future dependency management, including adding support for additional database drivers and observability libraries. Sequence diagram for Renovate creating a dependency update PRsequenceDiagram
participant UpstreamRegistry
participant RenovateBot
participant Repo
participant CICD
participant Maintainer
UpstreamRegistry->>RenovateBot: Publish new dependency version
RenovateBot->>RenovateBot: Scheduled run starts
RenovateBot->>Repo: Fetch renovate.json and go.mod
RenovateBot->>RenovateBot: Determine required updates
RenovateBot->>Repo: Create branch and update go.mod and go.sum
RenovateBot->>Repo: Open pull request
Repo->>CICD: Trigger CI pipeline
CICD->>CICD: Run tests and checks
CICD-->>Repo: Report status on pull request
Maintainer->>Repo: Review and merge pull request
Repo-->>CICD: Trigger deployment pipeline
Flow diagram for Renovate dependency update workflowflowchart LR
A["New dependency version released upstream"] --> B["Renovate scheduled run starts"]
B --> C["Renovate reads renovate.json configuration"]
C --> D["Renovate scans go.mod and go.sum"]
D --> E{Matches configured update rules}
E -- no --> F["No action taken"]
E -- yes --> G["Renovate updates dependency versions in go.mod and go.sum"]
G --> H["Renovate opens or updates pull request"]
H --> I["CI/CD pipeline runs tests and checks"]
I --> J{CI/CD successful}
J -- no --> K["Pull request remains open for fixes"]
J -- yes --> L["Pull request is merged"]
L --> M["Updated dependencies deployed with application"]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
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.
Hey there - I've reviewed your changes - here's some feedback:
- There are several newly added indirect requirements (e.g., fsnotify, mssql, gomega, sqlserver); if these are only pulled in transitively you can omit them from go.mod to keep the module definition minimal and rely on
go mod tidyto manage them. - Given the introduction of Renovate, consider encoding any desired dependency grouping or pinning rules (e.g., for all gorm drivers or golang.org/x modules) in renovate.json so that future automated bumps stay consistent with how you intend to manage these libraries.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- There are several newly added indirect requirements (e.g., fsnotify, mssql, gomega, sqlserver); if these are only pulled in transitively you can omit them from go.mod to keep the module definition minimal and rely on `go mod tidy` to manage them.
- Given the introduction of Renovate, consider encoding any desired dependency grouping or pinning rules (e.g., for all gorm drivers or golang.org/x modules) in renovate.json so that future automated bumps stay consistent with how you intend to manage these libraries.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@sourcery-ai I ran go mod tidy to ensure indirects are correctly marked. The Jira ticket specifically requests a single PR for all dependencies to reduce noise, so I am keeping the global grouping rule in renovate.json
|
|
/retest |
6930716 to
3d316ad
Compare
3d316ad to
917c280
Compare
| "packageRules": [ | ||
| { | ||
| "description": "Group all updates into a single PR to reduce noise, as per Jira requirements", | ||
| "matchPackagePatterns": ["*"], |
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.
Only minor and patch please
https://issues.redhat.com/browse/RHCLOUD-43451
Summary by Sourcery
Update Go module dependencies and add configuration for automated dependency management.
Build: