Import Windows manifest into test build, rather than copying by script

This will ensure that we can always get the current Windows OS build
version, without being put into Windows 8 compatibility mode.

Signed-off-by: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
This commit is contained in:
Paul "TBBle" Hampson 2020-07-29 03:24:46 +10:00
parent eb6354a118
commit aa56cfc0a8
5 changed files with 41 additions and 4 deletions

View File

@ -299,7 +299,6 @@ jobs:
- name: Integration 1
shell: bash
run: |
cp src/github.com/Microsoft/hcsshim/test/functional/manifest/rsrc_amd64.syso src/github.com/containerd/containerd/
cd src/github.com/containerd/containerd
export CGO_ENABLED=1
mingw32-make.exe integration

View File

@ -22,6 +22,7 @@ import (
"path/filepath"
"github.com/Microsoft/hcsshim/osversion"
_ "github.com/Microsoft/hcsshim/test/functional/manifest" // For rsrc_amd64.syso
)
const (
@ -53,9 +54,6 @@ func init() {
testImage = "mcr.microsoft.com/windows/nanoserver:1909"
case 19041: // this isn't in osversion yet, but the image should be available
testImage = "mcr.microsoft.com/windows/nanoserver:2004"
case 9200: // Missing manifest, so it's running in compatibility mode
fmt.Println("You need to copy Microsoft/hcsshim/test/functional/manifest/rsrc_amd64.syso into the containerd checkout")
panic("Running in Windows 8/Windows Server 2012 compatibility mode, failed to detect Windows build version")
default:
fmt.Println("No test image defined for Windows build version:", b)
panic("No windows test image found for this Windows build")

View File

@ -0,0 +1,4 @@
package manifest
// This is so that tests can include the .syso to manifest them to pick up the right Windows build
// TODO: Auto-generation of the .syso through rsrc or similar.

Binary file not shown.

36
vendor/github.com/Microsoft/hcsshim/test/go.mod generated vendored Normal file
View File

@ -0,0 +1,36 @@
module github.com/Microsoft/hcsshim/test
go 1.13
require (
github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5
github.com/Microsoft/hcsshim v0.8.7
github.com/blang/semver v3.1.0+incompatible // indirect
github.com/containerd/containerd v1.3.2
github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3
github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de
github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd
github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f // indirect
github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c // indirect
github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c // indirect
github.com/godbus/dbus v4.1.0+incompatible // indirect
github.com/gogo/googleapis v1.2.0 // indirect
github.com/gogo/protobuf v1.3.1
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce // indirect
github.com/hashicorp/go-multierror v0.0.0-20161216184304-ed905158d874 // indirect
github.com/imdario/mergo v0.3.8 // indirect
github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700
github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39
github.com/pkg/errors v0.8.1
github.com/sirupsen/logrus v1.4.2
github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8 // indirect
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f // indirect
go.etcd.io/bbolt v1.3.3 // indirect
golang.org/x/sync v0.0.0-20190423024810-112230192c58
google.golang.org/grpc v1.23.1
k8s.io/cri-api v0.17.3
)
replace github.com/Microsoft/hcsshim => ../