Skip to main content
Version: 24.08

Operation View

Datachain kit banner

Data Chain KIT

Local deployment of IRS with minimum dependencies setup

Please note that this demo is currently based on IRS version 5.4.0

Step 1: Prerequisites

  1. Docker is installed and the Docker deamon is running with at least 8GB of memory
  2. helm is installed
  3. Any Kubernetes cluster is installed and running, eg. Minikube
  4. kubectl is installed

Step 2: Add the IRS helm repository

helm repo add irs https://eclipse-tractusx.github.io/item-relationship-service

Step 3: Installing the IRS

1. Start the cluster

To deploy IRS on kubernetes with helm run

helm install irs-local irs/item-relationship-service -f your-values.yaml
1.1 Get the Status of the deployment

Helm can give you feedback on the release status:

helm list
NAME            NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
irs-local default 1 2024-08-01 10:24:46.8811785 +0200 CEST deployed item-relationship-service-7.4.0 5.4.0

Kubectl can give you feedback on how the status of the deployment currently is, there should be two pods deployed - IRS and Minio:

kubectl get pods
NAME                                                   READY   STATUS    RESTARTS   AGE
irs-local-item-relationship-service-5bdcd5854d-gq976 1/1 Running 0 47s
irs-local-minio-6f6c58cfbd-j8jkg 1/1 Running 0 47s

2. Forward Ports

When the deployment has been finished please use the command to forward the port:

kubectl port-forward svc/irs-local-item-relationship-service 8080:8080

After that you can access the Swagger UI page:

Testing the Item Relationship Service

You can use any approach to access exposed by IRS API endpoints, for example mentioned above Swagger UI page. There is also prepared Insomnia collection with example calls to IRS, see IRS_Request_Collection.json

Valid Global Asset Ids for testing

IRS is loading with mocked data from Testdata file, see CX_Testdata.json

Valid test requests for testing

You can use these snippets for testing purposes.

{
"bomLifecycle": "asBuilt",
"direction": "downward",
"depth": 10,
"auditContractNegotiation": false,
"key": {
"globalAssetId": "urn:uuid:951f1ebf-ebcf-427c-8a4d-7fe1f67c8d58",
"bpn": "BPNL00000003B0Q0"
}
}
{
"aspects": [
"urn:samm:io.catenax.serial_part:3.0.0#SerialPart"
],
"depth": 1,
"key": {
"globalAssetId": "urn:uuid:951f1ebf-ebcf-427c-8a4d-7fe1f67c8d58",
"bpn": "BPNL00000003B0Q0"
}
}