Skip to content

main @ 105f62aff260827282dcb2fe65eddb692ccf8eb0 #16

main @ 105f62aff260827282dcb2fe65eddb692ccf8eb0

main @ 105f62aff260827282dcb2fe65eddb692ccf8eb0 #16

Workflow file for this run

name: Go CI
on:
push:
paths:
- glide-core/src/**
- submodules/**
- go/**
- .github/workflows/go.yml
- .github/workflows/install-shared-dependencies/action.yml
- .github/workflows/test-benchmark/action.yml
- .github/workflows/lint-rust/action.yml
- .github/workflows/install-valkey/action.yml
- .github/json_matrices/**
pull_request:
paths:
- glide-core/src/**
- submodules/**
- go/**
- .github/workflows/go.yml
- .github/workflows/install-shared-dependencies/action.yml
- .github/workflows/test-benchmark/action.yml
- .github/workflows/lint-rust/action.yml
- .github/workflows/install-valkey/action.yml
- .github/json_matrices/**
workflow_dispatch:
inputs:
full-matrix:
description: "Run the full engine, host, and language version matrix"
required: false
type: boolean
default: "false"
name:
required: false
type: string
description: "(Optional) Test run name"
workflow_call:
concurrency:
group: go-${{ github.head_ref || github.ref }}
cancel-in-progress: true
run-name:
# Set custom name if job is started manually and name is given
${{ github.event_name == 'workflow_dispatch' && (inputs.name == '' && format('{0} @ {1}', github.ref_name, github.sha) || inputs.name) || '' }}
jobs:
get-matrices:
runs-on: ubuntu-latest
# Avoid running on schedule on repo forks
if: (github.event_name == 'schedule') || github.event_name == 'push' || github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch'
outputs:
engine-matrix-output: ${{ steps.get-matrices.outputs.engine-matrix-output }}
host-matrix-output: ${{ steps.get-matrices.outputs.host-matrix-output }}
version-matrix-output: ${{ steps.get-matrices.outputs.version-matrix-output }}
steps:
- uses: actions/checkout@v4
- id: get-matrices
uses: ./.github/workflows/create-test-matrices
with:
language-name: go
# Run full test matrix if job started by cron or it was explictly specified by a person who triggered the workflow
run-full-matrix: ${{ github.event.inputs.full-matrix || github.event_name == 'schedule' || 'false' }}
tests:
runs-on: ${{ matrix.host.RUNNER }}
needs: get-matrices
timeout-minutes: 35
strategy:
fail-fast: false
matrix:
engine: ${{ fromJson(needs.get-matrices.outputs.engine-matrix-output) }}
go: ${{ fromJson(needs.get-matrices.outputs.version-matrix-output) }}
host: ${{ fromJson(needs.get-matrices.outputs.host-matrix-output) }}
steps:
- uses: actions/checkout@v4
with:
submodules: recursive