Skip to content

Commit

Permalink
Merge pull request #1416 from eclipse-tractusx/release/0.8.0-rc1
Browse files Browse the repository at this point in the history
Release version 0.8.0-rc1
  • Loading branch information
wolf4ood authored Jul 11, 2024
2 parents bdaa973 + e80f9cc commit 04bb4e1
Show file tree
Hide file tree
Showing 95 changed files with 1,565 additions and 811 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/draft-new-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ jobs:
run: |-
# replace the project's (default) version, could be overwritten later with the -Pversion=... flag
sed -i 's/version=.*/version=${{ github.event.inputs.version }}/g' gradle.properties
# replace the openapi version with the upcoming one
sed -i 's#tractusx-edc/.*/swagger.yaml#tractusx-edc/${{ github.event.inputs.version }}/swagger.yaml#g' .tractusx
env:
GITHUB_PACKAGE_USERNAME: ${{ github.actor }}
GITHUB_PACKAGE_PASSWORD: ${{ secrets.GITHUB_TOKEN }}
Expand Down
28 changes: 9 additions & 19 deletions .github/workflows/publish-swaggerhub.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,20 +28,13 @@ on:
downstream-version:
required: false
type: string
upstream-version:
required: false
type: string

workflow_dispatch:
inputs:
downstream-version:
required: false
description: "Version of the Tractus-X EDC API to be should be published"
type: string
upstream-version:
required: false
description: "Version of upstream EDC which is to be used"
type: string

jobs:
swagger-api:
Expand All @@ -61,31 +54,28 @@ jobs:
run: |
npm i -g swaggerhub-cli
- name: Extract versions
- name: Extract version
run: |
if [ -z ${{ inputs.downstream-version }} ]; then
export DOWNSTREAM_VERSION=$(grep "version" gradle.properties | awk -F= '{print $2}')
else
export DOWNSTREAM_VERSION=${{ inputs.downstream-version }}
fi
if [ -z ${{ inputs.upstream-version }} ]; then
export UPSTREAM_VERSION=$(grep "edc = " gradle/libs.versions.toml | awk -F= '{print $2}' | jq -r)
else
export UPSTREAM_VERSION=${{ inputs.upstream-version }}
fi
echo "DOWNSTREAM_VERSION=$DOWNSTREAM_VERSION" >> "$GITHUB_ENV"
echo "UPSTREAM_VERSION=$UPSTREAM_VERSION" >> "$GITHUB_ENV"
- name: Resolve TX EDC API Spec
shell: bash
run: |
./gradlew resolve
- name: Download upstream API specs
run: |
curl -X GET https://eclipse-edc.github.io/Connector/openapi/management-api/${{ env.UPSTREAM_VERSION }}/management-api.yaml > resources/openapi/yaml/upstream-management-api.yaml
curl -X GET https://eclipse-edc.github.io/Connector/openapi/control-api/${{ env.UPSTREAM_VERSION }}/control-api.yaml > resources/openapi/yaml/upstream-control-api.yaml
- name: Download upstream API specs for control-plane and data-plane
run: |
./gradlew :edc-controlplane:edc-controlplane-base:downloadOpenapi
cp edc-controlplane/edc-controlplane-base/build/docs/openapi/* resources/openapi/yaml/
./gradlew :edc-dataplane:edc-dataplane-base:downloadOpenapi
cp edc-dataplane/edc-dataplane-base/build/docs/openapi/* resources/openapi/yaml/
- name: Merge API specs
run: |
Expand Down
2 changes: 2 additions & 0 deletions .tractusx
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
product: "Tractus-X EDC"
leadingRepository: "https://github.com/eclipse-tractusx/tractusx-edc"
repositories: []
openApiSpecs:
- "https://api.swaggerhub.com/apis/eclipse-tractusx-bot/tractusx-edc/0.7.3/swagger.yaml"
636 changes: 316 additions & 320 deletions DEPENDENCIES

Large diffs are not rendered by default.

44 changes: 43 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ allprojects {
implementation("org.slf4j:slf4j-api:2.0.13")
// this is used to counter version conflicts between the JUnit version pulled in by the plugin,
// and the one expected by IntelliJ
testImplementation(platform("org.junit:junit-bom:5.10.2"))
testImplementation(platform("org.junit:junit-bom:5.10.3"))

constraints {
implementation("org.yaml:snakeyaml:2.2") {
Expand Down Expand Up @@ -204,6 +204,27 @@ subprojects {
.dependsOn(copyLegalDocs)
}
}

tasks.register("downloadOpenapi") {
outputs.dir(project.layout.buildDirectory.dir("docs/openapi"))
doLast {
val destinationDirectory = layout.buildDirectory.asFile.get().toPath()
.resolve("docs").resolve("openapi")

configurations.asMap.values
.asSequence()
.filter { it.isCanBeResolved }
.map { it.resolvedConfiguration.firstLevelModuleDependencies }.flatten()
.map { childrenDependencies(it) }.flatten()
.distinct()
.forEach { dep ->
downloadYamlArtifact(dep, "management-api", destinationDirectory);
downloadYamlArtifact(dep, "observability-api", destinationDirectory);
downloadYamlArtifact(dep, "public-api", destinationDirectory);
}
}
}

}

nexusPublishing {
Expand All @@ -216,3 +237,24 @@ nexusPublishing {
tasks.check {
dependsOn(tasks.named<JacocoReport>("testCodeCoverageReport"))
}


fun childrenDependencies(dependency: ResolvedDependency): List<ResolvedDependency> {
return listOf(dependency) + dependency.children.map { child -> childrenDependencies(child) }.flatten()
}

fun downloadYamlArtifact(dep: ResolvedDependency, classifier: String, destinationDirectory: java.nio.file.Path) {
try {
val managementApi = dependencies.create(dep.moduleGroup, dep.moduleName, dep.moduleVersion, classifier = classifier, ext = "yaml")
configurations
.detachedConfiguration(managementApi)
.resolve()
.forEach { file ->
destinationDirectory
.resolve("${dep.moduleName}.yaml")
.toFile()
.let(file::copyTo)
}
} catch (_: Exception) {
}
}
4 changes: 2 additions & 2 deletions charts/tractusx-connector-azure-vault/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,13 @@ type: application
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)

version: 0.7.3
version: 0.8.0-rc1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.

appVersion: "0.7.3"
appVersion: "0.8.0-rc1"
home: https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector
sources:
- https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector
Expand Down
14 changes: 11 additions & 3 deletions charts/tractusx-connector-azure-vault/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# tractusx-connector-azure-vault

![Version: 0.7.3](https://img.shields.io/badge/Version-0.7.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.7.3](https://img.shields.io/badge/AppVersion-0.7.3-informational?style=flat-square)
![Version: 0.8.0-rc1](https://img.shields.io/badge/Version-0.8.0--rc1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.8.0-rc1](https://img.shields.io/badge/AppVersion-0.8.0--rc1-informational?style=flat-square)

A Helm chart for Tractus-X Eclipse Data Space Connector. The connector deployment consists of two runtime consists of a
Control Plane and a Data Plane. Note that _no_ external dependencies such as a PostgreSQL database and Azure KeyVault are included.
Expand Down Expand Up @@ -44,7 +44,7 @@ Combined, run this shell command to start the in-memory Tractus-X EDC runtime:

```shell
helm repo add tractusx-edc https://eclipse-tractusx.github.io/charts/dev
helm install my-release tractusx-edc/tractusx-connector-azure-vault --version 0.7.3 \
helm install my-release tractusx-edc/tractusx-connector-azure-vault --version 0.8.0-rc1 \
-f <path-to>/tractusx-connector-azure-vault-test.yaml \
--set vault.azure.name=$AZURE_VAULT_NAME \
--set vault.azure.client=$AZURE_CLIENT_ID \
Expand Down Expand Up @@ -74,10 +74,18 @@ helm install my-release tractusx-edc/tractusx-connector-azure-vault --version 0.
| controlplane.autoscaling.targetMemoryUtilizationPercentage | int | `80` | targetAverageUtilization of memory provided to a pod |
| controlplane.bdrs.cache_validity_seconds | int | `600` | Time that a cached BPN/DID resolution map is valid in seconds, default is 600 seconds (10 min) |
| controlplane.bdrs.server.url | string | `nil` | URL of the BPN/DID Resolution Service |
| controlplane.catalog | object | `{"crawler":{"initialDelay":null,"num":null,"period":null,"targetsFile":null},"enabled":false}` | configuration for the built-in federated catalog crawler |
| controlplane.catalog.crawler.initialDelay | string | `nil` | Initial delay for the crawling to start. Leave blank for a random delay |
| controlplane.catalog.crawler.num | string | `nil` | Number of desired crawlers. Final number might be different, based on number of crawl targets |
| controlplane.catalog.crawler.period | string | `nil` | Period between two crawl runs in seconds. Default is 60 seconds. |
| controlplane.catalog.crawler.targetsFile | string | `nil` | File path to a JSON file containing TargetNode entries |
| controlplane.catalog.enabled | bool | `false` | Flag to globally enable/disable the FC feature |
| controlplane.debug.enabled | bool | `false` | Enables java debugging mode. |
| controlplane.debug.port | int | `1044` | Port where the debuggee can connect to. |
| controlplane.debug.suspendOnStart | bool | `false` | Defines if the JVM should wait with starting the application until someone connected to the debugging port. |
| controlplane.endpoints | object | `{"control":{"path":"/control","port":8083},"default":{"path":"/api","port":8080},"management":{"authKey":"password","path":"/management","port":8081},"metrics":{"path":"/metrics","port":9090},"protocol":{"path":"/api/v1/dsp","port":8084}}` | endpoints of the control plane |
| controlplane.endpoints | object | `{"catalog":{"path":"/catalog","port":8085},"control":{"path":"/control","port":8083},"default":{"path":"/api","port":8080},"management":{"authKey":"password","path":"/management","port":8081},"metrics":{"path":"/metrics","port":9090},"protocol":{"path":"/api/v1/dsp","port":8084}}` | endpoints of the control plane |
| controlplane.endpoints.catalog.path | string | `"/catalog"` | path for incoming catalog cache query requests |
| controlplane.endpoints.catalog.port | int | `8085` | port for incoming catalog cache query requests |
| controlplane.endpoints.control | object | `{"path":"/control","port":8083}` | control api, used for internal control calls. can be added to the internal ingress, but should probably not |
| controlplane.endpoints.control.path | string | `"/control"` | path for incoming api calls |
| controlplane.endpoints.control.port | int | `8083` | port for incoming api calls |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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 ##
Expand Down Expand Up @@ -320,6 +325,30 @@ 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 }}

- name: "TX_EDC_CATALOG_NODE_LIST_FILE"
value: {{ .Values.controlplane.catalog.crawler.targetsFile }}

######################################
## Additional environment variables ##
######################################
Expand Down
24 changes: 22 additions & 2 deletions charts/tractusx-connector-azure-vault/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -141,13 +141,33 @@ 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
server:
# -- 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:
# -- File path to a JSON file containing TargetNode entries
targetsFile:

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
Expand Down Expand Up @@ -592,12 +612,12 @@ 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
Expand Down
4 changes: 2 additions & 2 deletions charts/tractusx-connector-memory/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.7.3
version: 0.8.0-rc1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "0.7.3"
appVersion: "0.8.0-rc1"
home: https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector-memory
sources:
- https://github.com/eclipse-tractusx/tractusx-edc/tree/main/charts/tractusx-connector-memory
14 changes: 11 additions & 3 deletions charts/tractusx-connector-memory/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# tractusx-connector-memory

![Version: 0.7.3](https://img.shields.io/badge/Version-0.7.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.7.3](https://img.shields.io/badge/AppVersion-0.7.3-informational?style=flat-square)
![Version: 0.8.0-rc1](https://img.shields.io/badge/Version-0.8.0--rc1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.8.0-rc1](https://img.shields.io/badge/AppVersion-0.8.0--rc1-informational?style=flat-square)

A Helm chart for Tractus-X Eclipse Data Space Connector based on memory. Please only use this for development or testing purposes, never in production workloads!

Expand Down Expand Up @@ -41,7 +41,7 @@ Combined, run this shell command to start the in-memory Tractus-X EDC runtime:

```shell
helm repo add tractusx-edc https://eclipse-tractusx.github.io/charts/dev
helm install my-release tractusx-edc/tractusx-connector-memory --version 0.7.3 \
helm install my-release tractusx-edc/tractusx-connector-memory --version 0.8.0-rc1 \
-f <path-to>/tractusx-connector-memory-test.yaml \
--set vault.secrets="client-secret:$YOUR_CLIENT_SECRET"
```
Expand Down Expand Up @@ -74,10 +74,18 @@ helm install my-release tractusx-edc/tractusx-connector-memory --version 0.7.3 \
| runtime.autoscaling.targetMemoryUtilizationPercentage | int | `80` | targetAverageUtilization of memory provided to a pod |
| runtime.bdrs.cache_validity_seconds | int | `600` | Time that a cached BPN/DID resolution map is valid in seconds, default is 600 seconds (10 min) |
| runtime.bdrs.server.url | string | `nil` | URL of the BPN/DID Resolution Service |
| runtime.catalog | object | `{"crawler":{"initialDelay":null,"num":null,"period":null,"targetsFile":null},"enabled":false}` | configuration for the built-in federated catalog crawler |
| runtime.catalog.crawler.initialDelay | string | `nil` | Initial delay for the crawling to start. Leave blank for a random delay |
| runtime.catalog.crawler.num | string | `nil` | Number of desired crawlers. Final number might be different, based on number of crawl targets |
| runtime.catalog.crawler.period | string | `nil` | Period between two crawl runs in seconds. Default is 60 seconds. |
| runtime.catalog.crawler.targetsFile | string | `nil` | File path to a JSON file containing TargetNode entries |
| runtime.catalog.enabled | bool | `false` | Flag to globally enable/disable the FC feature |
| runtime.debug.enabled | bool | `false` | Enables java debugging mode. |
| runtime.debug.port | int | `1044` | Port where the debuggee can connect to. |
| runtime.debug.suspendOnStart | bool | `false` | Defines if the JVM should wait with starting the application until someone connected to the debugging port. |
| runtime.endpoints | object | `{"control":{"path":"/control","port":8083},"default":{"path":"/api","port":8080},"management":{"authKey":"password","path":"/management","port":8081},"protocol":{"path":"/api/v1/dsp","port":8084},"proxy":{"authKey":"password","path":"/proxy","port":8186},"public":{"path":"/api/public","port":8086}}` | endpoints of the controlplane |
| runtime.endpoints | object | `{"catalog":{"path":"/catalog","port":8085},"control":{"path":"/control","port":8083},"default":{"path":"/api","port":8080},"management":{"authKey":"password","path":"/management","port":8081},"protocol":{"path":"/api/v1/dsp","port":8084},"proxy":{"authKey":"password","path":"/proxy","port":8186},"public":{"path":"/api/public","port":8086}}` | endpoints of the controlplane |
| runtime.endpoints.catalog.path | string | `"/catalog"` | path for incoming catalog cache query requests |
| runtime.endpoints.catalog.port | int | `8085` | port for incoming catalog cache query requests |
| runtime.endpoints.control | object | `{"path":"/control","port":8083}` | control api, used for internal control calls. can be added to the internal ingress, but should probably not |
| runtime.endpoints.control.path | string | `"/control"` | path for incoming api calls |
| runtime.endpoints.control.port | int | `8083` | port for incoming api calls |
Expand Down
Loading

0 comments on commit 04bb4e1

Please sign in to comment.