diff --git a/.github/workflows/example_test.yml b/.github/workflows/example_test.yml new file mode 100644 index 000000000..94b73818f --- /dev/null +++ b/.github/workflows/example_test.yml @@ -0,0 +1,172 @@ +name: Test Examples + +on: + pull_request: + branches: [ main ] + paths-ignore: + - '.github/ISSUE_TEMPLATE/**' + - '.github/CODE_OF_CONDUCT.md' + - '.github/CODING_CONVENTIONS.md' + - '.github/CONTRIBUTING.md' + - '.github/dependabot.yml' + - '.github/pull_request_template.md' + - '.github/SECURITY.md' + - 'docs/**' + - 'README.md' + - '.gitattributes' + - '.gitignore' + - 'LICENSE' + - 'NOTICE' + +jobs: + test-basyx-client: + runs-on: ubuntu-latest + name: Test BaSyx Client Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Client Example + run: docker compose -f examples/BaSyxClient/docker-compose.yml up -d + + - name: Stop BaSyx Client Example + run: docker compose -f examples/BaSyxClient/docker-compose.yml down + + test-basyx-databridge: + runs-on: ubuntu-latest + name: Test BaSyx DataBridge Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx DataBridge Example + run: docker compose -f examples/BaSyxDatabridge/docker-compose.yml up -d + + - name: Stop BaSyx DataBridge Example + run: docker compose -f examples/BaSyxDatabridge/docker-compose.yml down + + test-basyx-dynamic-rbac: + runs-on: ubuntu-latest + name: Test BaSyx Dynamic RBAC Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Dynamic RBAC Example + run: docker compose -f examples/BaSyxDynamicRBAC/docker-compose.yml up -d + + - name: Stop BaSyx Dynamic RBAC Example + run: docker compose -f examples/BaSyxDynamicRBAC/docker-compose.yml down + + test-basyx-kafka: + runs-on: ubuntu-latest + name: Test BaSyx Kafka Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Kafka Example + run: docker compose -f examples/BaSyxKafka/docker-compose.yml up -d + + - name: Stop BaSyx Kafka Example + run: docker compose -f examples/BaSyxKafka/docker-compose.yml down + + test-basyx-minimal: + runs-on: ubuntu-latest + name: Test BaSyx Minimal Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Minimal Example + run: docker compose -f examples/BaSyxMinimal/docker-compose.yml up -d + + - name: Stop BaSyx Minimal Example + run: docker compose -f examples/BaSyxMinimal/docker-compose.yml down + + test-basyx-nginx: + runs-on: ubuntu-latest + name: Test BaSyx NGINX Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx NGINX Example + run: docker compose -f examples/BaSyxNGINX/docker-compose.yml up -d + + - name: Stop BaSyx NGINX Example + run: docker compose -f examples/BaSyxNGINX/docker-compose.yml down + + test-basyx-operation-delegation: + runs-on: ubuntu-latest + name: Test BaSyx Operation Delegation Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Operation Delegation Example + run: docker compose -f examples/BaSyxOperationDelegation/docker-compose.yml up -d + + - name: Stop BaSyx Operation Delegation Example + run: docker compose -f examples/BaSyxOperationDelegation/docker-compose.yml down + + test-basyx-secured: + runs-on: ubuntu-latest + name: Test BaSyx Secured Example + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'adopt' + cache: maven + + - name: Start BaSyx Secured Example + run: docker compose -f examples/BaSyxSecured/docker-compose.yml up -d + + - name: Stop BaSyx Secured Example + run: docker compose -f examples/BaSyxSecured/docker-compose.yml down \ No newline at end of file diff --git a/examples/BaSyxSecured/.env b/examples/BaSyxSecured/.env index 53a5297ee..e51030e94 100644 --- a/examples/BaSyxSecured/.env +++ b/examples/BaSyxSecured/.env @@ -1,3 +1,3 @@ -BASYX_VERSION=2.0.0-milestone-04 -AAS_WEBUI_VERSION=v2-241220 +BASYX_VERSION=2.0.0-SNAPSHOT +AAS_WEBUI_VERSION=SNAPSHOT KEYCLOAK_VERSION=24.0.4 diff --git a/examples/BaSyxSecured/basyx/rules/aas_discovery_rbac_rules.json b/examples/BaSyxSecured/basyx/rules/aas_discovery_rbac_rules.json index 23eb2d992..07eb089ac 100644 --- a/examples/BaSyxSecured/basyx/rules/aas_discovery_rbac_rules.json +++ b/examples/BaSyxSecured/basyx/rules/aas_discovery_rbac_rules.json @@ -39,5 +39,19 @@ } ] } + }, + { + "role": "admin", + "action": ["CREATE", "READ", "UPDATE", "DELETE"], + "targetInformation": { + "@type": "aas-discovery-service", + "aasIds": "*", + "assetIds": [ + { + "name": "*", + "value": "*" + } + ] + } } ]