Skip to content

Commit f8efe46

Browse files
authored
Merge pull request #248 from eclipse-tractusx/feat/r25.03
Feat/r25.03: Added API walkthrough and helm charts for int
2 parents e5b1aac + 7b6004a commit f8efe46

26 files changed

+2306
-27
lines changed
Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
name: Bug Report
2+
description: Report a bug or unexpected behavior in Tractus-X IdentityHub / IssuerService
3+
title: "[BUG] <short description>"
4+
labels: ["bug", "triage"]
5+
assignees: []
6+
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Thank you for reporting a bug! Please fill in as much detail as possible to help us reproduce and fix the issue.
12+
13+
- type: dropdown
14+
id: component
15+
attributes:
16+
label: Affected Component
17+
description: Which component is affected?
18+
options:
19+
- IdentityHub
20+
- IssuerService
21+
- Both
22+
- Helm Charts
23+
- Documentation
24+
- Other
25+
validations:
26+
required: true
27+
28+
- type: input
29+
id: version
30+
attributes:
31+
label: Version
32+
description: Which version of Tractus-X IdentityHub are you running?
33+
placeholder: "e.g., 0.7.0"
34+
validations:
35+
required: true
36+
37+
- type: textarea
38+
id: description
39+
attributes:
40+
label: Bug Description
41+
description: A clear and concise description of what the bug is.
42+
placeholder: "Describe the unexpected behavior..."
43+
validations:
44+
required: true
45+
46+
- type: textarea
47+
id: expected
48+
attributes:
49+
label: Expected Behavior
50+
description: What did you expect to happen?
51+
placeholder: "I expected..."
52+
validations:
53+
required: true
54+
55+
- type: textarea
56+
id: actual
57+
attributes:
58+
label: Actual Behavior
59+
description: What actually happened?
60+
placeholder: "Instead, what happened was..."
61+
validations:
62+
required: true
63+
64+
- type: textarea
65+
id: steps
66+
attributes:
67+
label: Steps to Reproduce
68+
description: Provide a minimal set of steps to reproduce the issue.
69+
placeholder: |
70+
1. Call `POST /v1alpha/participants/{id}/credentialdefinitions` with payload `...`
71+
2. Then call `POST /api/sts/v1/token`
72+
3. Observe error / unexpected output
73+
validations:
74+
required: true
75+
76+
- type: textarea
77+
id: logs
78+
attributes:
79+
label: Relevant Logs / API Responses
80+
description: Paste any relevant logs, error messages, or API responses.
81+
render: shell
82+
83+
- type: dropdown
84+
id: deployment
85+
attributes:
86+
label: Deployment Type
87+
options:
88+
- Kubernetes (Helm)
89+
- Docker Compose
90+
- Local / IDE
91+
- Other
92+
validations:
93+
required: true
94+
95+
- type: textarea
96+
id: environment
97+
attributes:
98+
label: Environment
99+
description: Provide details about your environment.
100+
placeholder: |
101+
- OS: macOS 14 / Ubuntu 22.04 / ...
102+
- Java version: 21
103+
- Kubernetes version: 1.29
104+
- Database: PostgreSQL 15
105+
render: markdown
106+
107+
- type: textarea
108+
id: additional
109+
attributes:
110+
label: Additional Context
111+
description: Any other context, screenshots, or related issues.
112+
113+
- type: checkboxes
114+
id: checklist
115+
attributes:
116+
label: Checklist
117+
options:
118+
- label: I have searched existing issues and this is not a duplicate.
119+
required: true
120+
- label: I have provided a minimal reproduction case.
121+
required: false
122+
- label: I am willing to submit a pull request to fix this.
123+
required: false

charts/tractusx-identityhub/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,12 @@ type: application
3636
# This is the chart version. This version number should be incremented each time you make changes
3737
# to the chart and its templates, including the app version.
3838
# Versions are expected to follow Semantic Versioning (https://semver.org/)
39-
version: 0.1.2
39+
version: v0.2.0-rc1
4040
# This is the version number of the application being deployed. This version number should be
4141
# incremented each time you make changes to the application. Versions are not expected to
4242
# follow Semantic Versioning. They should reflect the version the application is using.
4343
# It is recommended to use it with quotes.
44-
appVersion: "0.1.0"
44+
appVersion: "v0.2.0-rc1"
4545
home: https://github.com/eclipse-tractusx/tractusx-identityhub/tree/main/charts/tractusx-identityhub
4646
sources:
4747
- https://github.com/eclipse-tractusx/tractusx-identityhub/tree/main/charts/tractusx-identityhub

charts/tractusx-identityhub/templates/ingress.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ spec:
8383
{{- range $name, $mapping := $controlEdcEndpoints }}
8484
{{- if (has $name $ingressEdcEndpoints) }}
8585
- path: {{ $mapping.path }}
86-
pathType: Prefix
86+
pathType: {{ $mapping.pathType | default "Prefix" }}
8787
backend:
8888
{{- if semverCompare ">=1.19-0" $gitVersion }}
8989
service:
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
###############################################################
2+
# Eclipse Tractus-X - identity-hub
3+
#
4+
# Copyright (c) 2025 Contributors to the Eclipse Foundation
5+
#
6+
# See the NOTICE file(s) distributed with this work for additional
7+
# information regarding copyright ownership.
8+
#
9+
# This program and the accompanying materials are made available under the
10+
# terms of the Apache License, Version 2.0 which is available at
11+
# https://www.apache.org/licenses/LICENSE-2.0.
12+
#
13+
# Unless required by applicable law or agreed to in writing, software
14+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16+
# License for the specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
# SPDX-License-Identifier: Apache-2.0
20+
###############################################################
21+
22+
---
23+
# Example values file for deploying the identity-hub with an external
24+
# HashiCorp Vault instance (i.e., the bundled dev Vault is disabled).
25+
#
26+
# Secrets referenced with the <path:...> syntax are resolved at deploy-time
27+
# by the ArgoCD Vault Plugin (AVP) or an equivalent secrets-injection tool.
28+
29+
nameOverride: identity-hub
30+
fullnameOverride: identity-hub
31+
32+
install:
33+
# -- Disable the bundled PostgreSQL subchart; use an external database instead
34+
postgresql: true
35+
# -- Disable the bundled HashiCorp Vault dev-mode subchart
36+
vault: false
37+
38+
identityhub:
39+
image:
40+
pullPolicy: Always
41+
42+
endpoints:
43+
default:
44+
port: 8081
45+
path: /api
46+
identity:
47+
port: 8082
48+
path: /api/identity
49+
# -- API key alias stored in the external vault
50+
authKeyAlias: identity-api-key
51+
credentials:
52+
port: 8083
53+
path: /api/credentials
54+
did:
55+
port: 8084
56+
path: /
57+
accounts:
58+
port: 8085
59+
path: /api/accounts
60+
authKeyAlias: accounts-api-key
61+
version:
62+
port: 8086
63+
path: /.well-known/api
64+
pathType: ImplementationSpecific
65+
sts:
66+
port: 8087
67+
path: /api/sts
68+
69+
## Ingress declaration to expose the network service.
70+
ingresses:
71+
## Single Ingress exposing all endpoints under one hostname
72+
- enabled: true
73+
# -- The hostname to be used to precisely map incoming traffic onto the underlying network service
74+
hostname: "identity-hub.int.catena-x.net"
75+
# -- Defines the [ingress class](https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-class) to use
76+
className: "nginx"
77+
# -- Additional ingress annotations to add
78+
annotations:
79+
cert-manager.io/cluster-issuer: letsencrypt-prod
80+
# -- Endpoints exposed by this ingress resource
81+
endpoints:
82+
- credentials
83+
- did
84+
- sts
85+
- identity
86+
- accounts
87+
- version
88+
# -- TLS [tls class](https://kubernetes.io/docs/concepts/services-networking/ingress/#tls) applied to the ingress resource
89+
tls:
90+
# -- Enables TLS on the ingress resource
91+
enabled: true
92+
# -- If present overwrites the default secret name
93+
secretName: "tls-secret-identity-hub"
94+
## Adds [cert-manager](https://cert-manager.io/docs/) annotations to the ingress resource
95+
certManager:
96+
# -- If preset enables certificate generation via cert-manager namespace scoped issuer
97+
issuer: ""
98+
# -- If preset enables certificate generation via cert-manager cluster-wide issuer
99+
clusterIssuer: ""
100+
101+
resources:
102+
limits:
103+
cpu: 1.5
104+
memory: 512Mi
105+
requests:
106+
cpu: 500m
107+
memory: 128Mi
108+
109+
#############################
110+
## PostgreSQL configuration
111+
#############################
112+
postgresql:
113+
nameOverride: identity-hub-postgresql
114+
fullnameOverride: identity-hub-postgresql
115+
jdbcUrl: "jdbc:postgresql://identity-hub-postgresql:5432/ih"
116+
auth:
117+
database: "ih"
118+
username: <path:identity-hub/data/db#username>
119+
password: <path:identity-hub/data/db#password>
120+
121+
####################################
122+
## External HashiCorp Vault config
123+
####################################
124+
vault:
125+
hashicorp:
126+
# -- URL of the external HashiCorp Vault instance
127+
url: <path:identity-hub/data/vault#url>
128+
# -- Authentication token for the external vault
129+
token: <path:identity-hub/data/vault#token>
130+
# -- Timeout in seconds for vault operations
131+
timeout: 30
132+
healthCheck:
133+
enabled: true
134+
standbyOk: true
135+
paths:
136+
# -- Base path for the KV secrets engine (e.g. /v1/secret)
137+
secret: <path:identity-hub/data/vault#secretPath>
138+
# -- Health check endpoint of the vault
139+
health: /v1/sys/health

charts/tractusx-identityhub/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ customCaCerts: {}
4040

4141
identityhub:
4242
image:
43-
repository: ""
43+
repository: "tractusx/identityhub"
4444
# -- [Kubernetes image pull policy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy) to use
4545
pullPolicy: IfNotPresent
4646
# -- Overrides the image tag whose default is the chart appVersion

charts/tractusx-issuerservice/Chart.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,12 @@ type: application
3636
# This is the chart version. This version number should be incremented each time you make changes
3737
# to the chart and its templates, including the app version.
3838
# Versions are expected to follow Semantic Versioning (https://semver.org/)
39-
version: 0.1.2
39+
version: v0.2.0-rc1
4040
# This is the version number of the application being deployed. This version number should be
4141
# incremented each time you make changes to the application. Versions are not expected to
4242
# follow Semantic Versioning. They should reflect the version the application is using.
4343
# It is recommended to use it with quotes.
44-
appVersion: "0.1.0"
44+
appVersion: "v0.2.0-rc1"
4545
home: https://github.com/eclipse-tractusx/tractusx-identityhub/tree/main/charts/tractusx-issuerservice
4646
sources:
4747
- https://github.com/eclipse-tractusx/tractusx-identityhub/tree/main/charts/tractusx-issuerservice
@@ -58,3 +58,7 @@ dependencies:
5858
version: 0.29.1
5959
repository: https://helm.releases.hashicorp.com
6060
condition: install.vault
61+
- condition: pgadmin4.enabled
62+
name: pgadmin4
63+
repository: https://helm.runix.net
64+
version: 1.25.x

charts/tractusx-issuerservice/templates/ingress.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ spec:
8383
{{- range $name, $mapping := $controlEdcEndpoints }}
8484
{{- if (has $name $ingressEdcEndpoints) }}
8585
- path: {{ $mapping.path }}
86-
pathType: Prefix
86+
pathType: {{ $mapping.pathType | default "Prefix" }}
8787
backend:
8888
{{- if semverCompare ">=1.19-0" $gitVersion }}
8989
service:

0 commit comments

Comments
 (0)