Skip to content

Commit

Permalink
Increases CI Speed (eclipse-basyx#406)
Browse files Browse the repository at this point in the history
* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes workflow

* Changes Dirties Context

* Changes workflow

* Changes POM

* Refactors Workflow

* Changes Workflow

* Changes Workflow

* Changes Workflow

* Changes Workflow

* Adds missing file & Changes Workflow

* Fixes bug

* Renames Steps

* Fixes bug

* Fixes bug

* Adds Healthcheck to Submodel Service

* Changes Healthcheck of Submodel Service

* Changes Step Names to be more readable

* Adds missing Test

Renames env Variable

* Adds AASX File Server Tests

* Reverts Cosmetics

* Reverts docker-compose.yml
  • Loading branch information
FriedJannik authored Sep 9, 2024
1 parent 13251a6 commit 2e65055
Show file tree
Hide file tree
Showing 26 changed files with 1,428 additions and 112 deletions.
245 changes: 245 additions & 0 deletions .github/workflows/basyx_test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,245 @@
name: Build and Test BaSyx

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/**'
- 'examples/**'
- 'README.md'
- '.gitattributes'
- '.gitignore'
- 'LICENSE'
- 'NOTICE'

env:
MVN_ARGS_BUILD_BASYX: -DskipTests -T1C

jobs:
test-basyx-common:
runs-on: ubuntu-latest
name: BaSyx Core Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Environment
run: mvn test -f "basyx.common/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasxfileserver:
runs-on: ubuntu-latest
name: AASX FileServer Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Environment
run: mvn test -f "basyx.aasxfileserver/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasenvironment:
runs-on: ubuntu-latest
name: AAS Environment Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Environment
run: mvn test -f "basyx.aasenvironment/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasrepository:
runs-on: ubuntu-latest
name: AAS Repository Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Repository
run: mvn test -f "basyx.aasrepository/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasservice:
runs-on: ubuntu-latest
name: AAS Service Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Service
run: mvn test -f "basyx.aasservice/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-submodelrepository:
runs-on: ubuntu-latest
name: Submodel Repository Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test Submodel Repository
run: mvn test -f "basyx.submodelrepository/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-submodelservice:
runs-on: ubuntu-latest
name: Submodel Service Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test Submodel Service
run: mvn test -f "basyx.submodelservice/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-conceptdescriptionrepository:
runs-on: ubuntu-latest
name: Concept Description Repository Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test Concept Description Repository
run: mvn test -f "basyx.conceptdescriptionrepository/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-submodelregistry:
runs-on: ubuntu-latest
name: Submodel Registry Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test Submodel Registry
run: mvn test -f "basyx.submodelregistry/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasregistry:
runs-on: ubuntu-latest
name: AAS Registry Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Registry
run: mvn test -f "basyx.aasregistry/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
test-basyx-aasdiscoveryservice:
runs-on: ubuntu-latest
name: AAS Discovery Service Test
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 environment
run: docker compose --project-directory ./ci up -d --wait
- name: Build BaSyx
run: mvn clean install ${MVN_ARGS_BUILD_BASYX}
- name: Test AAS Discovery Service
run: mvn test -f "basyx.aasdiscoveryservice/pom.xml"
- name: Stop environment
if: always()
run: docker compose --project-directory ./ci down
Loading

0 comments on commit 2e65055

Please sign in to comment.