From 3a6e6bbb774cf19bca9f754f962f91493bf19923 Mon Sep 17 00:00:00 2001 From: Spencer Schrock Date: Tue, 26 Nov 2024 09:10:25 -0800 Subject: [PATCH] add integration workflow Signed-off-by: Spencer Schrock --- .github/workflows/integration.yml | 47 +++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/workflows/integration.yml diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml new file mode 100644 index 00000000..c197b5a1 --- /dev/null +++ b/.github/workflows/integration.yml @@ -0,0 +1,47 @@ +# Copyright 2024 The Sigstore Authors +# +# 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: Run intregration tests +on: + pull_request: + branches: [main] + types: [opened, synchronize] + paths-ignore: + - '**/*.md' + - '*.md' + workflow_dispatch: + +permissions: {} + +defaults: + run: + shell: bash + +jobs: + model-signing-integration-test: + name: Signing with Python ${{ matrix.python-version }} on ${{ startsWith(matrix.os, 'macos-') && 'macOS' || startsWith(matrix.os, 'windows-') && 'Windows' || 'Linux' }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false # Don't cancel other jobs if one fails + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + python-version: ['3.10', '3.11', '3.12', '3.13'] + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: Set up Hatch + uses: pypa/hatch@257e27e51a6a5616ed08a39a408a21c35c9931bc + - name: Run integration tests + run: | + set -euxo pipefail + hatch test -c -py ${{ matrix.python-version }} -m integration