-
Notifications
You must be signed in to change notification settings - Fork 0
Add Crossplane Azure Resource Group and Service Bus tests #21
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
# Conflicts: # charts/mycarrier-helm/values.yaml
Helm Unit Test Results - charts/mycarrier-helm135 tests 135 ✅ 1m 5s ⏱️ Results for commit 753e58c. ♻️ This comment has been updated with latest results. |
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.
Pull Request Overview
This pull request adds comprehensive Crossplane support for managing Azure Service Bus and Resource Group infrastructure through Helm charts. The changes introduce declarative infrastructure management with built-in safety mechanisms to prevent accidental deletion, along with extensive test coverage.
Key Changes:
- Added Service Bus provisioning capabilities with support for namespaces, topics, subscriptions, and filtering rules
- Implemented Resource Group management with configurable policies and metadata
- Enhanced safety with explicit blocking of "Delete" management policies across all resources
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
File | Description |
---|---|
charts/mycarrier-helm/values.yaml | Added configuration documentation for Resource Groups and Service Bus with detailed examples and safety warnings |
charts/mycarrier-helm/tests/crossplane_azure_servicebus_test.yaml | Comprehensive test suite for Service Bus (16 tests covering minimal config, rules, policies, properties, tags, annotations, name truncation) |
charts/mycarrier-helm/tests/crossplane_azure_resourcegroup_test.yaml | Complete test suite for Resource Groups (9 tests covering basic config, tags, policies, namespaces, annotations, multiple groups) |
charts/mycarrier-helm/templates/crossplane/azure/servicebus/servicebus.yaml | Service Bus template with namespace, topic, subscription, and rule resources including validation and label management |
charts/mycarrier-helm/templates/crossplane/azure/resourcegroup/resourcegroup.yaml | Resource Group template with management policy validation and metadata support |
charts/mycarrier-helm/templates/_helpers.crossplane.tpl | Helper functions for generating length-constrained Service Bus resource names |
Comments suppressed due to low confidence (2)
charts/mycarrier-helm/templates/crossplane/azure/servicebus/servicebus.yaml:1
- Boolean values in conditionals should explicitly check for truthiness. The current pattern
{{- if $topic.requiresDuplicateDetection }}
will exclude the field when the value is explicitly set tofalse
, which may not be the intended behavior. Use{{- if hasKey $topic \"requiresDuplicateDetection\" }}
to check for field presence instead.
{{- if .Values.infrastructure.azure.servicebus }}
charts/mycarrier-helm/templates/crossplane/azure/servicebus/servicebus.yaml:1
- Boolean values in conditionals should explicitly check for truthiness. The current pattern
{{- if $subscription.requiresSession }}
will exclude the field when the value is explicitly set tofalse
. Use{{- if hasKey $subscription \"requiresSession\" }}
to check for field presence instead.
{{- if .Values.infrastructure.azure.servicebus }}
This pull request introduces comprehensive support for Azure Service Bus and Resource Group provisioning via Crossplane in the Helm chart. It adds new templates, helper functions, and configuration options to enable declarative infrastructure management with fine-grained policies, naming conventions, and test coverage for Resource Groups. The most important changes are grouped below.
Azure Service Bus Support:
_helpers.crossplane.tpl
to generate unique, length-constrained names for Service Bus topics, subscriptions, and rules, ensuring Kubernetes compatibility.Azure Resource Group Enhancements:
Configuration Documentation:
values.yaml
with detailed documentation for new Resource Group configuration options, including fields for management policies, tags, annotations, and namespaces.