diff --git a/charts/tractusx-connector-azure-vault/templates/deployment-controlplane.yaml b/charts/tractusx-connector-azure-vault/templates/deployment-controlplane.yaml index 17d3dbdec..dfbd3f10d 100644 --- a/charts/tractusx-connector-azure-vault/templates/deployment-controlplane.yaml +++ b/charts/tractusx-connector-azure-vault/templates/deployment-controlplane.yaml @@ -172,6 +172,11 @@ spec: value: {{ .Values.controlplane.endpoints.protocol.path | quote }} - name: "EDC_CONTROL_ENDPOINT" value: {{ include "txdc.controlplane.url.control" .}} + - name: "WEB_HTTP_CATALOG_PORT" + value: {{ .Values.controlplane.endpoints.catalog.port | quote }} + - name: "WEB_HTTP_CATALOG_PATH" + value: {{ .Values.controlplane.endpoints.catalog.path | quote }} + ######### ## DSP ## @@ -320,6 +325,27 @@ spec: value: {{ .Values.vault.azure.certificate | quote }} {{- end }} + ############################### + ## FEDERATED CATALOG CRAWLER ## + ############################### + {{- if .Values.controlplane.catalog.crawler.period }} + - name: "EDC_CATALOG_CACHE_EXECUTION_PERIOD_SECONDS" + value: {{ .Values.controlplane.catalog.crawler.period | quote}} + {{- end }} + + {{- if .Values.controlplane.catalog.crawler.initialDelay }} + - name: "EDC_CATALOG_CACHE_EXECUTION_DELAY_SECONDS" + value: {{ .Values.controlplane.catalog.crawler.initialDelay | quote }} + {{- end }} + + {{- if .Values.controlplane.catalog.crawler.num }} + - name: "EDC_CATALOG_CACHE_PARTITION_NUM_CRAWLERS" + value: {{ .Values.controlplane.catalog.crawler.num }} + {{- end }} + + - name: "EDC_CATALOG_CACHE_EXECUTION_ENABLED" + value: {{ .Values.controlplane.catalog.enabled | quote }} + ###################################### ## Additional environment variables ## ###################################### diff --git a/charts/tractusx-connector-azure-vault/values.yaml b/charts/tractusx-connector-azure-vault/values.yaml index 702d448e7..3d9b3ceae 100644 --- a/charts/tractusx-connector-azure-vault/values.yaml +++ b/charts/tractusx-connector-azure-vault/values.yaml @@ -33,9 +33,9 @@ fullnameOverride: "" nameOverride: "" # -- Existing image pull secret to use to [obtain the container image from private registries](https://kubernetes.io/docs/concepts/containers/images/#using-a-private-registry) -imagePullSecrets: [] +imagePullSecrets: [ ] # -- Add some custom labels -customLabels: {} +customLabels: { } participant: # -- BPN Number @@ -45,7 +45,7 @@ iatp: # -- Decentralized IDentifier (DID) of the connector id: "did:web:changeme" # -- Configures the trusted issuers for this runtime - trustedIssuers: [] + trustedIssuers: [ ] sts: dim: # -- URL where connectors can request SI tokens @@ -60,7 +60,7 @@ iatp: secret_alias: # -- Add custom ca certificates to the truststore -customCaCerts: {} +customCaCerts: { } controlplane: image: @@ -70,7 +70,7 @@ controlplane: pullPolicy: IfNotPresent # -- Overrides the image tag whose default is the chart appVersion tag: "" - initContainers: [] + initContainers: [ ] debug: # -- Enables java debugging mode. enabled: false @@ -141,6 +141,12 @@ controlplane: # -- path for incoming api calls path: /metrics + catalog: + # -- port for incoming catalog cache query requests + port: 8085 + # -- path for incoming catalog cache query requests + path: /catalog + bdrs: # -- Time that a cached BPN/DID resolution map is valid in seconds, default is 600 seconds (10 min) cache_validity_seconds: 600 @@ -148,18 +154,30 @@ controlplane: # -- URL of the BPN/DID Resolution Service url: + # -- configuration for the built-in federated catalog crawler + catalog: + # -- Flag to globally enable/disable the FC feature + enabled: false + crawler: + # -- Number of desired crawlers. Final number might be different, based on number of crawl targets + num: + # -- Period between two crawl runs in seconds. Default is 60 seconds. + period: + # -- Initial delay for the crawling to start. Leave blank for a random delay + initialDelay: + service: # -- [Service type](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) to expose the running application on a set of Pods as a network service. type: ClusterIP # -- additional labels for the service - labels: {} + labels: { } # -- additional annotations for the service - annotations: {} + annotations: { } # -- additional labels for the pod - podLabels: {} + podLabels: { } # -- additional annotations for the pod - podAnnotations: {} + podAnnotations: { } # -- The [pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) defines privilege and access control settings for a Pod within the deployment podSecurityContext: seccompProfile: @@ -178,7 +196,7 @@ controlplane: drop: - ALL # -- Specifies which capabilities to add to issue specialized syscalls - add: [] + add: [ ] # -- Whether the root filesystem is mounted in read-only mode readOnlyRootFilesystem: true # -- Controls [Privilege Escalation](https://kubernetes.io/docs/concepts/security/pod-security-policy/#privilege-escalation) enabling setuid binaries changing the effective user ID @@ -189,12 +207,12 @@ controlplane: runAsUser: 10001 # Extra environment variables that will be pass onto deployment pods - env: {} + env: { } # ENV_NAME: value # -- "valueFrom" environment variable references that will be added to deployment pods. Name is templated. # ref: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#envvarsource-v1-core - envValueFrom: {} + envValueFrom: { } # ENV_NAME: # configMapKeyRef: # name: configmap-name @@ -204,12 +222,12 @@ controlplane: # key: value_key # -- [Kubernetes Secret Resource](https://kubernetes.io/docs/concepts/configuration/secret/) names to load environment variables from - envSecretNames: [] + envSecretNames: [ ] # - first-secret # - second-secret # -- [Kubernetes ConfigMap Resource](https://kubernetes.io/docs/concepts/configuration/configmap/) names to load environment variables from - envConfigMapNames: [] + envConfigMapNames: [ ] # - first-config-map # - second-config-map @@ -220,7 +238,7 @@ controlplane: # -- The hostname to be used to precisely map incoming traffic onto the underlying network service hostname: "edc-control.local" # -- Additional ingress annotations to add - annotations: {} + annotations: { } # -- EDC endpoints exposed by this ingress resource endpoints: - protocol @@ -243,7 +261,7 @@ controlplane: # -- The hostname to be used to precisely map incoming traffic onto the underlying network service hostname: "edc-control.intranet" # -- Additional ingress annotations to add - annotations: {} + annotations: { } # -- EDC endpoints exposed by this ingress resource endpoints: - management @@ -309,11 +327,11 @@ controlplane: java.util.logging.SimpleFormatter.format=[%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS] [%4$-7s] %5$s%6$s%n # -- [node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) to constrain pods to nodes - nodeSelector: {} + nodeSelector: { } # -- [tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) to configure preferred nodes - tolerations: [] + tolerations: [ ] # -- [affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) to configure which nodes the pods can be scheduled on - affinity: {} + affinity: { } url: # -- Explicitly declared url for reaching the dsp api (e.g. if ingresses not used) @@ -327,7 +345,7 @@ dataplane: pullPolicy: IfNotPresent # -- Overrides the image tag whose default is the chart appVersion tag: "" - initContainers: [] + initContainers: [ ] debug: # -- Enables java debugging mode. enabled: false @@ -367,9 +385,9 @@ dataplane: # -- [Service type](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) to expose the running application on a set of Pods as a network service. type: ClusterIP # -- additional labels for the service - labels: {} + labels: { } # -- additional annotations for the service - annotations: {} + annotations: { } # -- endpoints of the dataplane endpoints: @@ -426,9 +444,9 @@ dataplane: secretAccessKey: "" # -- additional labels for the pod - podLabels: {} + podLabels: { } # -- additional annotations for the pod - podAnnotations: {} + podAnnotations: { } # -- The [pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) defines privilege and access control settings for a Pod within the deployment podSecurityContext: seccompProfile: @@ -447,7 +465,7 @@ dataplane: drop: - ALL # -- Specifies which capabilities to add to issue specialized syscalls - add: [] + add: [ ] # -- Whether the root filesystem is mounted in read-only mode readOnlyRootFilesystem: true # -- Controls [Privilege Escalation](https://kubernetes.io/docs/concepts/security/pod-security-policy/#privilege-escalation) enabling setuid binaries changing the effective user ID @@ -458,12 +476,12 @@ dataplane: runAsUser: 10001 # -- Extra environment variables that will be pass onto deployment pods - env: {} + env: { } # ENV_NAME: value # -- "valueFrom" environment variable references that will be added to deployment pods. Name is templated. # ref: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#envvarsource-v1-core - envValueFrom: {} + envValueFrom: { } # ENV_NAME: # configMapKeyRef: # name: configmap-name @@ -473,12 +491,12 @@ dataplane: # key: value_key # -- [Kubernetes Secret Resource](https://kubernetes.io/docs/concepts/configuration/secret/) names to load environment variables from - envSecretNames: [] + envSecretNames: [ ] # - first-secret # - second-secret # -- [Kubernetes ConfigMap Resource](https://kubernetes.io/docs/concepts/configuration/configmap/) names to load environment variables from - envConfigMapNames: [] + envConfigMapNames: [ ] # - first-config-map # - second-config-map @@ -489,7 +507,7 @@ dataplane: # -- The hostname to be used to precisely map incoming traffic onto the underlying network service hostname: "edc-data.local" # -- Additional ingress annotations to add - annotations: {} + annotations: { } # -- EDC endpoints exposed by this ingress resource endpoints: - public @@ -554,11 +572,11 @@ dataplane: java.util.logging.SimpleFormatter.format=[%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS] [%4$-7s] %5$s%6$s%n # -- [node selector](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) to constrain pods to nodes - nodeSelector: {} + nodeSelector: { } # -- [tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) to configure preferred nodes - tolerations: [] + tolerations: [ ] # -- [affinity](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity) to configure which nodes the pods can be scheduled on - affinity: {} + affinity: { } url: # -- Explicitly declared url for reaching the public api (e.g. if ingresses not used) @@ -592,23 +610,23 @@ networkPolicy: controlplane: # -- Specify from rule network policy for cp (defaults to all namespaces) from: - - namespaceSelector: {} + - namespaceSelector: { } # -- Configuration of the dataplane component dataplane: # -- Specify from rule network policy for dp (defaults to all namespaces) from: - - namespaceSelector: {} + - namespaceSelector: { } serviceAccount: # -- Specifies whether a service account should be created create: true # -- Annotations to add to the service account - annotations: {} + annotations: { } # -- The name of the service account to use. # If not set and create is true, a name is generated using the fullname template name: "" # -- Existing image pull secret bound to the service account to use to [obtain the container image from private registries](https://kubernetes.io/docs/concepts/containers/images/#using-a-private-registry) - imagePullSecrets: [] + imagePullSecrets: [ ] # -- Configurations for Helm tests tests: diff --git a/charts/tractusx-connector-memory/templates/deployment-runtime.yaml b/charts/tractusx-connector-memory/templates/deployment-runtime.yaml index b63a6ff80..bb9d56d51 100644 --- a/charts/tractusx-connector-memory/templates/deployment-runtime.yaml +++ b/charts/tractusx-connector-memory/templates/deployment-runtime.yaml @@ -187,6 +187,10 @@ spec: value: {{ .Values.runtime.endpoints.public.port | quote }} - name: "WEB_HTTP_PUBLIC_PATH" value: {{ .Values.runtime.endpoints.public.path | quote }} + - name: "WEB_HTTP_CATALOG_PORT" + value: {{ .Values.runtime.endpoints.catalog.port | quote }} + - name: "WEB_HTTP_CATALOG_PATH" + value: {{ .Values.runtime.endpoints.catalog.path | quote }} ######### ## DSP ## @@ -270,13 +274,27 @@ spec: - name: "EDC_VAULT_SECRETS" value: {{ .Values.vault.secrets | quote}} - ########################### - ## AAS WRAPPER EXTENSION ## - ########################### - - name: "EDC_CP_ADAPTER_CACHE_CATALOG_EXPIRE_AFTER" - value: "0" - - name: "EDC_CP_ADAPTER_REUSE_CONTRACT_AGREEMENT" - value: "0" + + ############################### + ## FEDERATED CATALOG CRAWLER ## + ############################### + {{- if .Values.runtime.catalog.crawler.period }} + - name: "EDC_CATALOG_CACHE_EXECUTION_PERIOD_SECONDS" + value: {{ .Values.runtime.catalog.crawler.period | quote}} + {{- end }} + + {{- if .Values.runtime.catalog.crawler.initialDelay }} + - name: "EDC_CATALOG_CACHE_EXECUTION_DELAY_SECONDS" + value: {{ .Values.runtime.catalog.crawler.initialDelay | quote }} + {{- end }} + + {{- if .Values.runtime.catalog.crawler.num }} + - name: "EDC_CATALOG_CACHE_PARTITION_NUM_CRAWLERS" + value: {{ .Values.runtime.catalog.crawler.num }} + {{- end }} + + - name: "EDC_CATALOG_CACHE_EXECUTION_ENABLED" + value: {{ .Values.runtime.catalog.enabled | quote }} ###################################### ## Additional environment variables ## diff --git a/charts/tractusx-connector-memory/values.yaml b/charts/tractusx-connector-memory/values.yaml index c7c4ad63b..d69a7d79b 100644 --- a/charts/tractusx-connector-memory/values.yaml +++ b/charts/tractusx-connector-memory/values.yaml @@ -144,6 +144,12 @@ runtime: # -- authentication key, must be attached to each request as `X-Api-Key` header authKey: "password" + catalog: + # -- port for incoming catalog cache query requests + port: 8085 + # -- path for incoming catalog cache query requests + path: /catalog + token: refresh: # -- TTL in seconds for access tokens (also known as EDR token) @@ -166,6 +172,18 @@ runtime: # -- URL of the BPN/DID Resolution Service url: + # -- configuration for the built-in federated catalog crawler + catalog: + # -- Flag to globally enable/disable the FC feature + enabled: false + crawler: + # -- Number of desired crawlers. Final number might be different, based on number of crawl targets + num: + # -- Period between two crawl runs in seconds. Default is 60 seconds. + period: + # -- Initial delay for the crawling to start. Leave blank for a random delay + initialDelay: + service: # -- [Service type](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types) to expose the running application on a set of Pods as a network service. type: ClusterIP diff --git a/charts/tractusx-connector/templates/deployment-controlplane.yaml b/charts/tractusx-connector/templates/deployment-controlplane.yaml index 2bed1e934..f893654df 100644 --- a/charts/tractusx-connector/templates/deployment-controlplane.yaml +++ b/charts/tractusx-connector/templates/deployment-controlplane.yaml @@ -176,6 +176,7 @@ spec: value: {{ .Values.controlplane.endpoints.catalog.port | quote }} - name: "WEB_HTTP_CATALOG_PATH" value: {{ .Values.controlplane.endpoints.catalog.path | quote }} + ######### ## DSP ## #########