Implement McpTrafficListener option for protocol level debugging #279
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: E2E Tests | |
| on: | |
| push: | |
| branches: | |
| - 'release-*' | |
| pull_request: | |
| paths: | |
| - 'common/**' | |
| - 'strimzi-mcp/**' | |
| - 'systemtest/**' | |
| - 'loki-log-provider/**' | |
| - 'elasticsearch-log-provider/**' | |
| - 'metrics-prometheus/**' | |
| - 'dev/**' | |
| - '!**/*.md' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| checks: write | |
| jobs: | |
| e2e-kind: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 160 | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Set up JDK 21 | |
| uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Cache Maven packages | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: ~/.m2 | |
| key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
| restore-keys: ${{ runner.os }}-m2 | |
| - name: Create kind cluster with registry | |
| uses: strimzi/github-actions/.github/actions/dependencies/setup-kind@v2 | |
| with: | |
| controlNodes: "1" | |
| workerNodes: "1" | |
| - name: Deploy Prometheus operator | |
| run: ./dev/scripts/setup-prometheus.sh deploy | |
| - name: Deploy Loki and Promtail | |
| run: ./dev/scripts/setup-loki-kind.sh deploy | |
| - name: Deploy Elasticsearch and Fluent Bit | |
| run: ./dev/scripts/setup-elasticsearch-kind.sh deploy | |
| - name: Build MCP image and load into kind | |
| run: | | |
| ./mvnw package -pl common,metrics-prometheus,loki-log-provider,elasticsearch-log-provider,strimzi-mcp \ | |
| -DskipTests \ | |
| -Dquarkus.container-image.build=true \ | |
| -Dquarkus.container-image.tag=test | |
| kind load docker-image quay.io/streamshub/strimzi-mcp:test --name kind-cluster | |
| - name: Build Connect image and load into kind | |
| run: | | |
| ./mvnw package -pl systemtest -Pbuild-connect-image -DskipTests \ | |
| -Dconnect.image=quay.io/streamshub/mcp-connect-test:test \ | |
| -Dconnect.image.push=false \ | |
| -Dcontainer.engine=docker \ | |
| -Dcontainer.platform=linux/amd64 | |
| kind load docker-image quay.io/streamshub/mcp-connect-test:test --name kind-cluster | |
| - name: Run system tests | |
| env: | |
| MCP_IMAGE: quay.io/streamshub/strimzi-mcp:test | |
| CONNECT_IMAGE: quay.io/streamshub/mcp-connect-test:test | |
| MCP_CONNECTIVITY: NODEPORT | |
| run: | | |
| ./mvnw verify -pl systemtest \ | |
| -Psystemtest | |
| - name: Generate Allure report | |
| if: always() | |
| run: npx allure generate systemtest/target/allure-results -o allure-report | |
| - name: Post Allure report to PR | |
| uses: allure-framework/allure-action@v0 | |
| if: always() && github.event_name == 'pull_request' | |
| with: | |
| report-directory: allure-report | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload Allure report | |
| uses: actions/upload-artifact@v7.0.1 | |
| if: always() | |
| with: | |
| name: allure-report | |
| path: allure-report/ | |
| - name: Upload test logs | |
| uses: actions/upload-artifact@v7.0.1 | |
| if: failure() | |
| with: | |
| name: test-logs | |
| path: systemtest/target/test-logs/ |