Skip to content

Allow deletion of views created by CREATE VIEW queries #94

Allow deletion of views created by CREATE VIEW queries

Allow deletion of views created by CREATE VIEW queries #94

Workflow file for this run

name: build and test
on:
push:
branches:
- main
pull_request:
jobs:
build:
name: Build
strategy:
matrix:
os: [ "ubuntu-latest", "macos-latest" ]
go-version: [ "1.24.0" ]
runs-on: ${{ matrix.os }}
steps:
- name: checkout
uses: actions/checkout@v4
- name: setup Go ${{ matrix.go-version }}
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
cache: true
- name: cache for linux
uses: actions/cache@v3
if: runner.os == 'Linux'
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: cache for macOS
uses: actions/cache@v3
if: runner.os == 'macOS'
with:
path: |
~/Library/Caches/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: download modules
run: |
go mod download
- uses: rui314/setup-mold@v1
- name: build
run: make emulator/build
env:
CC: clang
CXX: clang++
VERSION: test
- name: show version
run: |
./bigquery-emulator --version
- name: show linking info
if: runner.os == 'Linux'
run: |
ldd bigquery-emulator || true
test:
needs: build
name: Test
strategy:
matrix:
os: [ "ubuntu-latest", "macos-latest" ]
go-version: [ "1.24.0" ]
runs-on: ${{ matrix.os }}
steps:
- name: setup Go ${{ matrix.go-version }}
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: checkout
uses: actions/checkout@v4
- name: cache for linux
uses: actions/cache@v3
if: runner.os == 'Linux'
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: cache for macOS
uses: actions/cache@v3
if: runner.os == 'macOS'
with:
path: |
~/Library/Caches/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: download modules
run: |
go mod download
- name: test
run: go test -v ./... -count=1
env:
CC: clang
CXX: clang++
python-integration-test:
needs: build
name: Python Integration Test
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: setup docker buildx
uses: docker/setup-buildx-action@v3
- name: build docker image
uses: docker/build-push-action@v6
with:
context: .
load: true
tags: bigquery-emulator:test
platforms: linux/amd64
push: false
- name: setup python
uses: actions/setup-python@v5
with:
python-version-file: test/python/.python-version
- name: install uv
uses: astral-sh/setup-uv@v5
- name: cache uv dependencies
uses: actions/cache@v4
with:
path: ~/.cache/uv
key: ${{ runner.os }}-uv-${{ hashFiles('test/python/uv.lock') }}
restore-keys: |
${{ runner.os }}-uv-
- name: sync dependencies
run: uv sync
working-directory: test/python
- name: run integration tests
run: uv run pytest -v
working-directory: test/python
env:
BIGQUERY_EMULATOR_REPOSITORY: bigquery-emulator
BIGQUERY_EMULATOR_VERSION: test