-
Notifications
You must be signed in to change notification settings - Fork 106
feat: Make sidecar container image configurable in Helm Chart for air-gapped environments #1651
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
@enj 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs. I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review. |
…ironments Co-authored-by: enj <7001223+enj@users.noreply.github.com>
|
||
_See [helm install](https://helm.sh/docs/helm/helm_install/) for command documentation._ | ||
|
||
## Air-gapped Environments |
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.
@copilot Separate section for air-gapped environments isn't required.
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.
Removed the air-gapped environments section from the documentation as requested. The functionality is still available through the simplified proxy image configuration. (46d7b56)
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.
@copilot Revert all the changes in the charts/
directory. Chart changes are only to be done in manifest_staging/charts
and will be promoted to charts dir at the time of release.
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.
Reverted all changes in the charts/
directory. All chart modifications are now only in manifest_staging/charts
and third_party/open-policy-agent/gatekeeper/helmify/static/
as requested. (46d7b56)
| podDisruptionBudget.minAvailable | The minimum number of pods that must be available for the webhook to be considered available | `1` | | ||
| podDisruptionBudget.maxUnavailable | The maximum number of pods that may be unavailable for the webhook to be considered available | `nil` | | ||
| proxy.image.registry | The registry for the proxy sidecar image | `mcr.microsoft.com/oss/azure/workload-identity` | | ||
| proxy.image.repository | The repository for the proxy sidecar image | `proxy` | |
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.
@copilot just proxy.image.repository
is sufficient to hold the whole path for image, no need for proxy.image.registry
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.
Simplified the proxy configuration to use only proxy.image.repository
containing the full image path, removing the separate proxy.image.registry
field. The configuration is now cleaner and more straightforward. (46d7b56)
@copilot review feedback: #1651 (review) |
…g, remove air-gapped section Co-authored-by: aramase <10608509+aramase@users.noreply.github.com>
This PR adds support for configuring proxy sidecar container images in the Helm chart to enable deployments in air-gapped environments with custom container registries.
Problem
Previously, the proxy sidecar and init container images were hardcoded to use
mcr.microsoft.com/oss/azure/workload-identity
registry during build time via LDFLAGS. While the webhook code already supportedPROXY_IMAGE
andPROXY_INIT_IMAGE
environment variables, the Helm chart didn't expose these configurations, preventing users in air-gapped environments from using custom registries.Solution
Added comprehensive proxy image configuration to the Helm chart following existing image configuration patterns:
New Helm Values
Usage Examples
Default behavior (unchanged):
helm install workload-identity-webhook azure-workload-identity/workload-identity-webhook \ --set azureTenantID="your-tenant-id"
Air-gapped deployment:
Custom image with specific tag:
Implementation Details
third_party/open-policy-agent/gatekeeper/helmify/
PROXY_IMAGE
andPROXY_INIT_IMAGE
environment variablesmanifest_staging/charts
directory (will be promoted tocharts
at release time)Backward Compatibility
✅ Fully backward compatible - existing deployments continue to work without any changes. When proxy image values are not specified, the webhook falls back to build-time defaults injected via LDFLAGS.
Testing
Fixes #1335.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.