Skip to content

Testing isolation

Testing isolation #20

Workflow file for this run

# Copyright 2024 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: 🛠️ Test
on:
push:
branches: main
pull_request:
workflow_dispatch: # Manual runs
jobs:
find-tests:
runs-on: ubuntu-latest
outputs:
affected: ${{steps.find-affected.outputs.affected}}
# defaults:
# run:
# working-directory: .github/testing
steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-node@v4
# with:
# node-version: '20.x'
# - run: npm ci
# - run: npm run build
# - id: find-affected
# run: echo "affected=$(npm run --silent affected)" >> "$GITHUB_OUTPUT"
- id: find-affected
run: echo "affected=$MATRIX" >> "$GITHUB_OUTPUT"
env:
MATRIX: '[{"language": "python", "package": "A", "tests": ["a"]}, {"language": "nodejs", "package": "B", "tests": ["b"]]'
Python:
needs: find-tests
runs-on: ubuntu-latest
strategy:
matrix: ${{fromJson(needs.find-tests.outputs.affected)}}
steps:
# - uses: actions/checkout@v4
# - run: echo "matrix=${{needs.find-tests.outputs.affected}}"
- run: echo "python=${{matrix.python}}"
- run: echo "package=${{matrix.package}}"
- run: echo "tests=${{matrix.tests}}"