Skip to content

wip

wip #10

Workflow file for this run

name: Experiment centralized testing
on:
pull_request:
paths:
- 'packages/gapic-generator/**'
- '.github/workflows/prerelease-radar.yml'
env:
SYNTHTOOL_TEMPLATES: /home/runner/synthtool/synthtool/gcp/templates
jobs:
test-canary:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
canary:
- google-cloud-redis
- google-cloud-kms
- google-cloud-speech
- google-cloud-dialogflow
- google-cloud-dataproc
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: '3.14'
allow-prereleases: true
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version: '1.26.x'
- name: Install protoc
uses: arduino/setup-protoc@v3
with:
version: "25.3"
- name: Install pandoc
run: |
mkdir -p /tmp/pandoc
curl -fsSL --retry 5 -o /tmp/pandoc.tar.gz https://github.com/jgm/pandoc/releases/download/3.8.2/pandoc-3.8.2-linux-amd64.tar.gz
tar -xvf /tmp/pandoc.tar.gz -C /tmp/pandoc --strip-components=1
echo "/tmp/pandoc/bin" >> $GITHUB_PATH
- name: Clone Synthtool Templates
run: |
git clone --recurse-submodules --single-branch https://github.com/googleapis/synthtool.git /home/runner/synthtool
- name: Install Librarian
run: |
version=$(sed -n 's/^version: *//p' librarian.yaml)
go run "github.com/googleapis/librarian/cmd/librarian@${version}" install
- name: Generate Canary via Librarian
run: |
version=$(sed -n 's/^version: *//p' librarian.yaml)
go run "github.com/googleapis/librarian/cmd/librarian@${version}" generate ${{ matrix.canary }}
- name: Install Nox
run: |
python -m pip install --upgrade pip setuptools wheel
python -m pip install nox
- name: Run Unit Tests
run: |
# Library check: Execute directly from the generated package directory
cd packages/${{ matrix.canary }}
nox -s unit-3.14
- name: Run lint and and mypy
run: |
# Library check: Execute directly from the generated package directory
cd packages/${{ matrix.canary }}
nox -s mypy-3.14 lint
- name: Run Prerelease and Core Deps
run: |
cd packages/${{ matrix.canary }}
# Point the Nox engine to the newly generated package directory
nox -s prerelease_deps core_deps_from_source -- ../${{ matrix.canary }}