feat: add ingress provider selection #49#59
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Adds ingress provider selection + recommendation to Beacon’s install flow, and persists the chosen strategy into generated Helm values so ingress enablement/class naming are scaffolded consistently.
Changes:
- Introduces ingress provider selection (
none,nginx,traefik) into interactive install prompts and configuration summary. - Adds a kubectl-context-based recommendation mechanism for a default ingress provider when it can be inferred.
- Persists ingress provider state into Helm chart
values.yamlvia stub placeholders and generator replacements.
Reviewed changes
Copilot reviewed 12 out of 12 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/Unit/Install/InstallConfigurationCollectorTest.php | Verifies default ingress provider behavior and recommendation injection into defaults/prompts. |
| tests/Unit/Install/IngressProviderRecommendationRepositoryTest.php | Covers recommendation logic based on kubectl config current-context. |
| tests/Unit/Helm/HelmChartGeneratorTest.php | Ensures rendered Helm values include ingress provider/enabled/className. |
| tests/Feature/InstallCommandTest.php | Updates install prompt expectations and verifies generated chart values include provider. |
| stubs/helm/values.yaml.stub | Adds ingress placeholders for provider/enabled/className in chart values. |
| src/Install/InstallConfigurationCollector.php | Adds ingress recommendation wiring + prompt step when Helm is selected. |
| src/Install/InstallConfiguration.php | Adds ingress provider options, validation, labels, and Helm value helpers. |
| src/Install/IngressProviderRecommendationRepository.php | New repository to infer provider from kubectl current context. |
| src/Install/IngressProviderRecommendation.php | New value object for validated ingress recommendation data. |
| src/Helm/HelmChartGenerator.php | Injects ingress placeholders into Helm stub replacements. |
| src/Commands/InstallCommand.php | Includes ingress selection in the install summary output for Helm installs. |
| README.md | Documents the new ingress provider prompt and persistence behavior. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Testing
Closes #49