diff --git a/.github/actions/bbsim-tests/example-workflow.yaml b/.github/actions/bbsim-tests/example-workflow.yaml
new file mode 100644
index 0000000..3654bb6
--- /dev/null
+++ b/.github/actions/bbsim-tests/example-workflow.yaml
@@ -0,0 +1,362 @@
+---
+# SPDX-License-Identifier: Apache-2.0
+# SPDX-FileCopyrightText: 2025 Open Networking Foundation Contributors
+
+name: BBSim Tests Example
+
+on:
+  # Run on push to main branches
+  push:
+    branches:
+      - master
+      - "voltha-*"
+
+  # Run on pull requests
+  pull_request:
+    branches:
+      - master
+      - "voltha-*"
+
+  # Allow manual triggering with custom parameters
+  workflow_dispatch:
+    inputs:
+      branch:
+        description: "Branch to test"
+        required: true
+        default: "master"
+        type: choice
+        options:
+          - master
+          - voltha-2.15
+      workflow_type:
+        description: "Workflow to test"
+        required: true
+        default: "all"
+        type: choice
+        options:
+          - all
+          - dt
+          - att
+          - tt
+      log_level:
+        description: "Log level"
+        required: false
+        default: "WARN"
+        type: choice
+        options:
+          - DEBUG
+          - INFO
+          - WARN
+          - ERROR
+      with_monitoring:
+        description: "Enable monitoring"
+        required: false
+        default: false
+        type: boolean
+
+  # Run nightly
+  schedule:
+    - cron: "0 2 * * *" # 2 AM UTC daily
+
+jobs:
+  # -----------------------------------------------------------------------
+  # Job: DT Workflow Tests
+  # -----------------------------------------------------------------------
+  dt-tests:
+    name: DT Workflow Tests
+    runs-on: ubuntu-latest
+    timeout-minutes: 240
+    if: |
+      github.event_name == 'schedule' ||
+      (github.event_name == 'workflow_dispatch' &&
+       (github.event.inputs.workflow_type == 'dt' || github.event.inputs.workflow_type == 'all')) ||
+      github.event_name == 'push' ||
+      github.event_name == 'pull_request'
+
+    steps:
+      - name: Free up disk space
+        run: |
+          echo "Disk space before cleanup:"
+          df -h
+
+          # Remove unnecessary software
+          sudo rm -rf /usr/share/dotnet
+          sudo rm -rf /opt/ghc
+          sudo rm -rf /usr/local/share/boost
+          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
+
+          echo "Disk space after cleanup:"
+          df -h
+
+      - name: Run DT BBSim Tests
+        uses: opencord/shared-workflows/.github/actions/bbsim-tests@main
+        with:
+          branch: ${{ github.event.inputs.branch || 'master' }}
+          log-level: ${{ github.event.inputs.log_level || 'WARN' }}
+          with-monitoring: ${{ github.event.inputs.with_monitoring || false }}
+          test-targets: |
+            - target: functional-single-kind-dt
+              workflow: dt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+
+      - name: Upload test results
+        if: always()
+        uses: actions/upload-artifact@v4
+        with:
+          name: dt-test-results-${{ github.run_id }}
+          path: logs/
+          retention-days: 30
+
+  # -----------------------------------------------------------------------
+  # Job: ATT Workflow Tests
+  # -----------------------------------------------------------------------
+  att-tests:
+    name: ATT Workflow Tests
+    runs-on: ubuntu-latest
+    timeout-minutes: 240
+    if: |
+      github.event_name == 'schedule' ||
+      (github.event_name == 'workflow_dispatch' &&
+       (github.event.inputs.workflow_type == 'att' || github.event.inputs.workflow_type == 'all'))
+
+    steps:
+      - name: Free up disk space
+        run: |
+          echo "Disk space before cleanup:"
+          df -h
+
+          sudo rm -rf /usr/share/dotnet
+          sudo rm -rf /opt/ghc
+          sudo rm -rf /usr/local/share/boost
+          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
+
+          echo "Disk space after cleanup:"
+          df -h
+
+      - name: Run ATT BBSim Tests
+        uses: opencord/shared-workflows/.github/actions/bbsim-tests@main
+        with:
+          branch: ${{ github.event.inputs.branch || 'master' }}
+          log-level: ${{ github.event.inputs.log_level || 'WARN' }}
+          with-monitoring: ${{ github.event.inputs.with_monitoring || false }}
+          test-targets: |
+            - target: functional-single-kind-att
+              workflow: att
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+
+      - name: Upload test results
+        if: always()
+        uses: actions/upload-artifact@v4
+        with:
+          name: att-test-results-${{ github.run_id }}
+          path: logs/
+          retention-days: 30
+
+  # -----------------------------------------------------------------------
+  # Job: TT Workflow Tests
+  # -----------------------------------------------------------------------
+  tt-tests:
+    name: TT Workflow Tests
+    runs-on: ubuntu-latest
+    timeout-minutes: 240
+    if: |
+      github.event_name == 'schedule' ||
+      (github.event_name == 'workflow_dispatch' &&
+       (github.event.inputs.workflow_type == 'tt' || github.event.inputs.workflow_type == 'all'))
+
+    steps:
+      - name: Free up disk space
+        run: |
+          echo "Disk space before cleanup:"
+          df -h
+
+          sudo rm -rf /usr/share/dotnet
+          sudo rm -rf /opt/ghc
+          sudo rm -rf /usr/local/share/boost
+          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
+
+          echo "Disk space after cleanup:"
+          df -h
+
+      - name: Run TT BBSim Tests
+        uses: opencord/shared-workflows/.github/actions/bbsim-tests@main
+        with:
+          branch: ${{ github.event.inputs.branch || 'master' }}
+          log-level: ${{ github.event.inputs.log_level || 'WARN' }}
+          with-monitoring: ${{ github.event.inputs.with_monitoring || false }}
+          test-targets: |
+            - target: functional-single-kind-tt
+              workflow: tt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+
+      - name: Upload test results
+        if: always()
+        uses: actions/upload-artifact@v4
+        with:
+          name: tt-test-results-${{ github.run_id }}
+          path: logs/
+          retention-days: 30
+
+  # -----------------------------------------------------------------------
+  # Job: Multi-workflow Tests (run multiple workflows in sequence)
+  # -----------------------------------------------------------------------
+  multi-workflow-tests:
+    name: Multi-Workflow Tests
+    runs-on: ubuntu-latest
+    timeout-minutes: 480
+    if: github.event_name == 'workflow_dispatch' && github.event.inputs.workflow_type == 'all'
+
+    steps:
+      - name: Free up disk space
+        run: |
+          echo "Disk space before cleanup:"
+          df -h
+
+          sudo rm -rf /usr/share/dotnet
+          sudo rm -rf /opt/ghc
+          sudo rm -rf /usr/local/share/boost
+          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
+
+          echo "Disk space after cleanup:"
+          df -h
+
+      - name: Run All Workflow Tests
+        uses: opencord/shared-workflows/.github/actions/bbsim-tests@main
+        with:
+          branch: ${{ github.event.inputs.branch || 'master' }}
+          log-level: ${{ github.event.inputs.log_level || 'INFO' }}
+          with-monitoring: true
+          olts: "2"
+          test-targets: |
+            - target: sanity-single-kind
+              workflow: dt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+            - target: functional-single-kind-dt
+              workflow: dt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+            - target: functional-single-kind-att
+              workflow: att
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+            - target: functional-single-kind-tt
+              workflow: tt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+
+      - name: Upload test results
+        if: always()
+        uses: actions/upload-artifact@v4
+        with:
+          name: multi-workflow-test-results-${{ github.run_id }}
+          path: logs/
+          retention-days: 30
+
+  # -----------------------------------------------------------------------
+  # Job: Test Gerrit Patch
+  # -----------------------------------------------------------------------
+  test-patch:
+    name: Test Gerrit Patch
+    runs-on: ubuntu-latest
+    timeout-minutes: 240
+    # Only run when triggered manually with patch information
+    if: |
+      github.event_name == 'workflow_dispatch' &&
+      github.event.inputs.gerrit_project != '' &&
+      github.event.inputs.gerrit_refspec != ''
+
+    steps:
+      - name: Free up disk space
+        run: |
+          sudo rm -rf /usr/share/dotnet
+          sudo rm -rf /opt/ghc
+          sudo rm -rf /usr/local/share/boost
+          sudo rm -rf "$AGENT_TOOLSDIRECTORY"
+
+      - name: Test Patch with BBSim
+        uses: opencord/shared-workflows/.github/actions/bbsim-tests@main
+        with:
+          branch: ${{ github.event.inputs.branch || 'master' }}
+          gerrit-project: ${{ github.event.inputs.gerrit_project }}
+          gerrit-refspec: ${{ github.event.inputs.gerrit_refspec }}
+          log-level: DEBUG
+          test-targets: |
+            - target: sanity-single-kind
+              workflow: dt
+              flags: ""
+              teardown: true
+              logging: true
+              vgcEnabled: false
+
+      - name: Upload test results
+        if: always()
+        uses: actions/upload-artifact@v4
+        with:
+          name: patch-test-results-${{ github.run_id }}
+          path: logs/
+          retention-days: 30
+
+  # -----------------------------------------------------------------------
+  # Job: Report Results
+  # -----------------------------------------------------------------------
+  report:
+    name: Test Results Summary
+    runs-on: ubuntu-latest
+    needs: [dt-tests, att-tests, tt-tests]
+    if: always()
+
+    steps:
+      - name: Download all artifacts
+        uses: actions/download-artifact@v4
+        with:
+          path: all-results
+
+      - name: Generate summary report
+        run: |
+          echo "# BBSim Test Results Summary" >> $GITHUB_STEP_SUMMARY
+          echo "" >> $GITHUB_STEP_SUMMARY
+          echo "## Test Execution" >> $GITHUB_STEP_SUMMARY
+          echo "" >> $GITHUB_STEP_SUMMARY
+          echo "| Job | Status |" >> $GITHUB_STEP_SUMMARY
+          echo "|-----|--------|" >> $GITHUB_STEP_SUMMARY
+          echo "| DT Tests | ${{ needs.dt-tests.result }} |" >> $GITHUB_STEP_SUMMARY
+          echo "| ATT Tests | ${{ needs.att-tests.result }} |" >> $GITHUB_STEP_SUMMARY
+          echo "| TT Tests | ${{ needs.tt-tests.result }} |" >> $GITHUB_STEP_SUMMARY
+          echo "" >> $GITHUB_STEP_SUMMARY
+
+          # List available artifacts
+          echo "## Artifacts" >> $GITHUB_STEP_SUMMARY
+          echo "" >> $GITHUB_STEP_SUMMARY
+          if [ -d "all-results" ]; then
+            find all-results -type f -name "*.html" | while read file; do
+              echo "- $(basename $file)" >> $GITHUB_STEP_SUMMARY
+            done
+          fi
+
+      - name: Check overall status
+        run: |
+          if [[ "${{ needs.dt-tests.result }}" != "success" ]] || \
+             [[ "${{ needs.att-tests.result }}" != "success" && "${{ needs.att-tests.result }}" != "skipped" ]] || \
+             [[ "${{ needs.tt-tests.result }}" != "success" && "${{ needs.tt-tests.result }}" != "skipped" ]]; then
+            echo "One or more test jobs failed"
+            exit 1
+          fi
+          echo "All executed tests passed successfully"
