mirror of
https://github.com/kemko/nomad.git
synced 2026-01-01 16:05:42 +03:00
fix for: > This is a scheduled Windows Server 2019 brownout. > The Windows Server 2019 image will be removed on 2025-06-30. > For more details, see actions/runner-images#12045
119 lines
3.3 KiB
YAML
119 lines
3.3 KiB
YAML
name: test-windows
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
- release/**
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'CHANGELOG.md'
|
|
- '.changelog/**'
|
|
- '.tours/**'
|
|
- 'contributing/**'
|
|
- 'demo/**'
|
|
- 'dev/**'
|
|
- 'e2e/**'
|
|
- 'integrations/**'
|
|
- 'pkg/**'
|
|
- 'scripts/**'
|
|
- 'terraform/**'
|
|
- 'ui/**'
|
|
- 'website/**'
|
|
push:
|
|
branches:
|
|
- main
|
|
- release/**
|
|
paths-ignore:
|
|
- 'README.md'
|
|
- 'CHANGELOG.md'
|
|
- '.changelog/**'
|
|
- '.tours/**'
|
|
- 'contributing/**'
|
|
- 'demo/**'
|
|
- 'dev/**'
|
|
- 'e2e/**'
|
|
- 'integrations/**'
|
|
- 'pkg/**'
|
|
- 'scripts/**'
|
|
- 'terraform/**'
|
|
- 'ui/**'
|
|
- 'website/**'
|
|
|
|
env:
|
|
VAULT_VERSION: 1.4.1
|
|
jobs:
|
|
test-windows:
|
|
runs-on: 'windows-2022-16core'
|
|
env:
|
|
GOTESTSUM_PATH: c:\tmp\test-reports
|
|
steps:
|
|
- name: Docker Info
|
|
run: docker version
|
|
- run: git config --global core.autocrlf false
|
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
- name: Setup go
|
|
uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34 # v5.3.0
|
|
with:
|
|
go-version-file: ".go-version"
|
|
- name: Show installed Go version
|
|
shell: bash
|
|
run: |-
|
|
export PATH=/c/go/bin:/c/gopath/bin:$PATH
|
|
go version
|
|
- uses: "./.github/actions/install-vault"
|
|
with:
|
|
version: "$VAULT_VERSION"
|
|
- run: vault version
|
|
- run: choco install make
|
|
- name: Install golang dependencies
|
|
shell: bash
|
|
run: |-
|
|
make deps
|
|
- name: Pre-download docker test image
|
|
shell: bash
|
|
run: |-
|
|
docker pull docker.mirror.hashicorp.services/hashicorpdev/busybox-windows:ltsc2022
|
|
- name: Build nomad
|
|
shell: bash
|
|
run: |-
|
|
go install .
|
|
- name: Run tests with gotestsum
|
|
shell: bash
|
|
env:
|
|
BUSYBOX_IMAGE: docker.mirror.hashicorp.services/hashicorpdev/busybox-windows:ltsc2022
|
|
run: |-
|
|
# Only test docker driver tests for now
|
|
export PATH=/c/go/bin:/c/gopath/bin:$PATH
|
|
gotestsum --format=short-verbose \
|
|
--junitfile results.xml \
|
|
github.com/hashicorp/nomad/drivers/docker \
|
|
github.com/hashicorp/nomad/drivers/rawexec \
|
|
github.com/hashicorp/nomad/drivers/shared/executor \
|
|
github.com/hashicorp/nomad/client/lib/fifo \
|
|
github.com/hashicorp/nomad/client/logmon \
|
|
github.com/hashicorp/nomad/client/allocrunner/taskrunner/template \
|
|
github.com/hashicorp/nomad/client/allocdir \
|
|
github.com/hashicorp/nomad/plugins/base
|
|
- uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
|
|
with:
|
|
name: results.xml
|
|
path: results.xml
|
|
|
|
handle-failure:
|
|
permissions:
|
|
contents: read
|
|
id-token: write
|
|
needs:
|
|
- test-windows
|
|
if: always() && github.event_name == 'push' && contains(needs.*.result, 'failure')
|
|
uses: ./.github/workflows/test-failure-notification.yml
|
|
secrets: inherit
|
|
with:
|
|
actor: ${{ github.triggering_actor }}
|
|
git-branch: ${{ github.ref_name }}
|
|
workflow-run-id: ${{ github.run_id }}
|
|
workflow-name: ${{ github.workflow }}
|
|
|
|
permissions:
|
|
contents: read
|