Skip to content

feat: allow vpcTag to be specified to override tag#5845

Merged
oilbeater merged 3 commits intokubeovn:masterfrom
6ixfalls:master
Nov 6, 2025
Merged

feat: allow vpcTag to be specified to override tag#5845
oilbeater merged 3 commits intokubeovn:masterfrom
6ixfalls:master

Conversation

@6ixfalls
Copy link
Copy Markdown
Contributor

Pull Request

What type of this PR

Examples of user facing changes:

  • Features

Allows the tag for the vpcRepository image (vpc-nat-gateway) to be overriden. Useful when the image tags are using digest references, since the tag for the kubeovn image can't be reused for vpc-nat-gateway.

@dosubot dosubot bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Oct 31, 2025
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @6ixfalls, 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 enhances the Helm charts for Kube-OVN by providing a dedicated configuration option to specify the image tag for the vpc-nat-gateway component. This change addresses scenarios where the vpc-nat-gateway image might require a different tag than the main kubeovn image, such as when using digest references, thereby increasing flexibility in image management and deployment.

Highlights

  • New Configuration Option: Introduced a new vpcTag parameter within the global.images.kubeovn section of the values.yaml files for both kube-ovn and kube-ovn-v2 Helm charts. This allows explicit control over the vpc-nat-gateway image tag.
  • Image Tag Resolution Logic: Modified the vpc-nat-config.yaml templates to prioritize the newly introduced vpcTag for the vpc-nat-gateway image. If vpcTag is not specified (or empty), it gracefully falls back to using the general tag value defined for kubeovn.
  • Documentation Update: The README.md for kube-ovn-v2 has been updated to include the vpcTag in the image configuration example, improving clarity for users regarding this new option.
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.

@dosubot dosubot bot added chart Helm Chart feature New network feature labels Oct 31, 2025
Signed-off-by: Six <23470032+6ixfalls@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

@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 introduces a new vpcTag value to allow overriding the image tag for the vpc-nat-gateway, which is useful for digest-based image references. The implementation is correct, using the Helm or function as a fallback to the existing tag value across both kube-ovn and kube-ovn-v2 charts. The associated documentation and default values have also been updated accordingly. I've noted one minor issue regarding an unrelated documentation change that should ideally be in a separate PR to keep the history clean.

Comment thread charts/kube-ovn-v2/README.md
@zbb88888
Copy link
Copy Markdown
Collaborator

zbb88888 commented Nov 3, 2025

I think vpcNatImageTag is much more clear than vpcTag

@6ixfalls
Copy link
Copy Markdown
Contributor Author

6ixfalls commented Nov 3, 2025

I named it vpcTag after the other vpcRepository. Should I change both or just vpcTag?

@zbb88888
Copy link
Copy Markdown
Collaborator

zbb88888 commented Nov 4, 2025

I named it vpcTag after the other vpcRepository. Should I change both or just vpcTag?

Both, thanks!

@6ixfalls
Copy link
Copy Markdown
Contributor Author

6ixfalls commented Nov 4, 2025

I named it vpcTag after the other vpcRepository. Should I change both or just vpcTag?

Both, thanks!

Actually, imageTag should be redundant since the keys are under global.images.kubeovn. If anything, it may make more sense to move it as such:

global:
  images:
    kubeovn:
      repository: kube-ovn
      tag: v1.15.0
    natgateway:
      repository: vpc-nat-gateway
      tag: v1.15.0

I'm not sure what support_arm and thirdparty are used for, they don't show up in any search results. Should I remove those too?

@zbb88888
Copy link
Copy Markdown
Collaborator

zbb88888 commented Nov 4, 2025

I'm not sure what support_arm and thirdparty are used for

you can search it in the code, to check if something is using

@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. and removed size:S This PR changes 10-29 lines, ignoring generated files. labels Nov 4, 2025
Signed-off-by: Bryan Lee <me@bryanl.ee>
@6ixfalls
Copy link
Copy Markdown
Contributor Author

6ixfalls commented Nov 4, 2025

@zbb88888 ready

@SkalaNetworks
Copy link
Copy Markdown
Member

@6ixfalls I'm sorry for the bikeshedding, but when I refactored the v2 Helm Chart, I didn't really plan on the current image overriding system to stay as is. It is largely a remnant of the v1 chart.

image

I think the VPC NAT gateway image should be configured in the natGw section, as this is also where the image for the BGP speaker is configured. We shouldn't use the global registry address, but just like for the BGP speaker, use the whole address specified by the user.

@coveralls
Copy link
Copy Markdown

coveralls commented Nov 4, 2025

Pull Request Test Coverage Report for Build 19064369172

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 21.541%

Totals Coverage Status
Change from base Build 19054987369: 0.0%
Covered Lines: 10940
Relevant Lines: 50787

💛 - Coveralls

Signed-off-by: Bryan Lee <me@bryanl.ee>
@SkalaNetworks
Copy link
Copy Markdown
Member

Thank you, looks good to me!

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Nov 6, 2025
@oilbeater oilbeater merged commit 5374572 into kubeovn:master Nov 6, 2025
74 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chart Helm Chart feature New network feature lgtm This PR has been approved by a maintainer size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants