Can't add additional backend services to Helm chart ingress
- Dominant language
- Java
- Stars
- 2.1k
- Forks
- 522
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 137
Description
### Describe the bug
The current ingress only allows to expose the Polaris service, since the `backend.service.name` is "hardcoded" as the service name and port is set as the polaris service port. Seen the code snippet below
```
- host: {{ .host | quote }}
http:
paths:
{{- range .paths }}
- path: {{ .path }}
pathType: {{ .pathType }}
backend:
service:
name: {{ $fullName }}
port:
number: {{ $svcPort }}
```
This prevent user from exposing other backend services like the management service. We might want to allow user to expose additional services besides the core service.
### To Reproduce
I want to configure the value.yaml to expose both polaris service and management service
```
ingress:
className: "somename"
enabled: true
hosts:
- host: chart-example.local
paths:
- path: /polaris
pathType: Prefix
backend:
service:
name: polaris-release
port: 8081
- path: /polaris-mgmt
pathType: Prefix
backend:
service:
name: polaris-release-mgmt
port: 8082
```
### Actual Behavior
It would result as
```
- host: chart-example.local
http:
paths:
- path: /polaris
pathType: Prefix
backend:
service:
name: polaris-release
port:
number: 8181
- path: /polaris-mgmt
pathType: Prefix
backend:
service:
name: polaris-release
port:
number: 8181
```
### Expected Behavior
```
- host: chart-example.local
http:
paths:
- path: /polaris
pathType: Prefix
backend:
service:
name: polaris-release
port:
number: 8181
- path: /polaris-mgmt
pathType: Prefix
backend:
service:
name: polaris-release-mgmt
port:
number: 8182
```
### Additional context
_No response_
### System information
OS: MacOS
Polaris version: 1.2.0
Storage: S3
Contributor guide
Research direction
Inspect the Helm chart's ingress template and values.yaml, focusing on how each host path is rendered into a backend service name and port. Render the chart with separate Polaris and management paths; done means the generated ingress preserves the configured service names and ports for each path.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- helm, kubernetes
- Domain
- devops, infrastructure
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100