apache / apache/polaris

Can't add additional backend services to Helm chart ingress

Open
#3,017 5 comments 0 reactions 0 assignees View on GitHub
bug stale
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.