Skip to content

Support the TileDB core Subarray API for queries #522

Support the TileDB core Subarray API for queries

Support the TileDB core Subarray API for queries #522

Workflow file for this run

name: TileDB-Go
on:
push:
tags: [ v* ]
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
golangci:
name: lint
runs-on: ubuntu-20.04
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_linux.sh
shell: bash
- name: golangci-lint
uses: golangci/golangci-lint-action@v2
continue-on-error: true
with:
# Required: the version of golangci-lint is required and must be
# specified without patch version: we always use the latest patch version.
version: v1.35.2
Linux_Test:
runs-on: ubuntu-20.04
strategy:
matrix:
# Will be checking following versions
go: ["1.19", "1.20"]
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_linux.sh
shell: bash
# Following action sets up Go and uses the strategy matrix to test on
# specific versions
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Cache dependencies
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Install dependencies
run: go get -t .
# Tests TileDB-Go
- name: Test TileDB-Go
run: go test -v ./...
Macos_Test:
runs-on: macos-11
strategy:
matrix:
# Will be checking following versions
go: ["1.19", "1.20"]
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_macos.sh
shell: bash
# Following action sets up Go and uses the strategy matrix to test on
# specific versions
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Cache dependencies
uses: actions/cache@v2
with:
path: |
~/Library/Caches/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Install dependencies
run: go get -t .
# Tests TileDB-Go
- name: Test TileDB-Go
run: go test -v ./...
Linux_Experimental_Test:
runs-on: ubuntu-20.04
strategy:
matrix:
# Will be checking following versions
go: ["1.19", "1.20"]
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_linux.sh
shell: bash
# Following action sets up Go and uses the strategy matrix to test on
# specific versions
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Cache dependencies
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}-experimental
restore-keys: |
${{ runner.os }}-go-
- name: Install dependencies
run: go get -t .
# Tests TileDB-Go
- name: Test TileDB-Go
run: go test -tags=experimental -v ./...
Macos_Experimental_Test:
runs-on: macos-11
strategy:
matrix:
# Will be checking following versions
go: ["1.19", "1.20"]
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_macos.sh
shell: bash
# Following action sets up Go and uses the strategy matrix to test on
# specific versions
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Cache dependencies
uses: actions/cache@v2
with:
path: |
~/Library/Caches/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}-experimental
restore-keys: |
${{ runner.os }}-go-
- name: Install dependencies
run: go get -t .
# Tests experimental bindings of TileDB-Go
- name: Test TileDB-Go
run: go test -tags=experimental -v ./...
Linux_Address_Sanitizer:
runs-on: ubuntu-20.04
strategy:
matrix:
# Will be checking following versions
go: ["1.19", "1.20"]
steps:
# Checks out repository
- uses: actions/checkout@v2
# Downloads TileDB-Core from release assets and install
- name: Run TileDB install script
run: ./.github/scripts/install_tiledb_linux_debug.sh
shell: bash
# Following action sets up Go and uses the strategy matrix to test on
# specific versions
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Cache dependencies
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}-asan
restore-keys: |
${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
${{ runner.os }}-go-
- name: Install dependencies
run: go get -t .
# Tests TileDB-Go
- name: Running examples using address sanitizer flags
continue-on-error: true
run: go run -tags asan ./cmd/tiledb-go-examples