mirror of
https://github.com/versity/versitygw.git
synced 2026-07-20 06:52:21 +00:00
feat: add windows functional test coverage and fix some windows behavior
This change adds Windows functional test execution in CI and updates backend handling so windows filesystem error/path semantics map correctly to expected S3 outcomes. The only meta supported on windows right now is sidecar, so the tests in windows mode also skip sidecar skips. Future work is to address the skips and/or more clearly document the unsupported/incompatible behavior on windows. The windows support will still remain best effort, but these tests should at least flag when future changes introduce incompatible behavior on windows.
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
name: functional tests (windows)
|
||||
permissions: {}
|
||||
on: pull_request
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: RunTestsWindows
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: 'stable'
|
||||
id: go
|
||||
|
||||
- name: Get Dependencies
|
||||
run: go mod download
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
$version = if (Test-Path VERSION) { Get-Content VERSION } else { git describe --abbrev=0 --tags HEAD }
|
||||
$build = git rev-parse --short HEAD
|
||||
$time = (Get-Date -Format "yyyy-MM-dd_hh:mm:sstt")
|
||||
go build -ldflags "-X=main.Build=$build -X=main.BuildTime=$time -X=main.Version=$version" `
|
||||
-o versitygw.exe -cover -race ./cmd/versitygw
|
||||
shell: pwsh
|
||||
|
||||
- name: Run Tests
|
||||
run: pwsh -File .\runtests.ps1
|
||||
shell: pwsh
|
||||
|
||||
- name: Coverage Report
|
||||
run: go tool covdata percent -i="$env:TEMP\covdata"
|
||||
shell: pwsh
|
||||
Reference in New Issue
Block a user