chore(deps): bump github.com/containerd/containerd from 1.7.5 to 1.7.6 (#2750)
Bumps [github.com/containerd/containerd](https://github.com/containerd/containerd) from 1.7.5 to 1.7.6. - [Release notes](https://github.com/containerd/containerd/releases) - [Changelog](https://github.com/containerd/containerd/blob/main/RELEASES.md) - [Commits](https://github.com/containerd/containerd/compare/v1.7.5...v1.7.6) --- updated-dependencies: - dependency-name: github.com/containerd/containerd dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
parent
14b2ea5528
commit
a861fadeba
3
go.mod
3
go.mod
|
|
@ -39,7 +39,7 @@ require (
|
||||||
golang.org/x/sync v0.3.0
|
golang.org/x/sync v0.3.0
|
||||||
)
|
)
|
||||||
|
|
||||||
require github.com/containerd/containerd v1.7.5
|
require github.com/containerd/containerd v1.7.6
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/googleapis/enterprise-certificate-proxy v0.2.5 // indirect
|
github.com/googleapis/enterprise-certificate-proxy v0.2.5 // indirect
|
||||||
|
|
@ -160,6 +160,7 @@ require (
|
||||||
require (
|
require (
|
||||||
dario.cat/mergo v1.0.0 // indirect
|
dario.cat/mergo v1.0.0 // indirect
|
||||||
github.com/Azure/azure-sdk-for-go v61.3.0+incompatible // indirect
|
github.com/Azure/azure-sdk-for-go v61.3.0+incompatible // indirect
|
||||||
|
github.com/Microsoft/hcsshim v0.11.0 // indirect
|
||||||
github.com/aws/aws-sdk-go-v2/service/ecr v1.18.10 // indirect
|
github.com/aws/aws-sdk-go-v2/service/ecr v1.18.10 // indirect
|
||||||
github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.16.1 // indirect
|
github.com/aws/aws-sdk-go-v2/service/ecrpublic v1.16.1 // indirect
|
||||||
github.com/cloudflare/circl v1.3.3 // indirect
|
github.com/cloudflare/circl v1.3.3 // indirect
|
||||||
|
|
|
||||||
7
go.sum
7
go.sum
|
|
@ -90,7 +90,8 @@ github.com/GoogleCloudPlatform/docker-credential-gcr v1.5.1-0.20230328182921-62a
|
||||||
github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY=
|
github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY=
|
||||||
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
||||||
github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM=
|
github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM=
|
||||||
github.com/Microsoft/hcsshim v0.10.0-rc.8 h1:YSZVvlIIDD1UxQpJp0h+dnpLUw+TrY0cx8obKsp3bek=
|
github.com/Microsoft/hcsshim v0.11.0 h1:7EFNIY4igHEXUdj1zXgAyU3fLc7QfOKHbkldRVTBdiM=
|
||||||
|
github.com/Microsoft/hcsshim v0.11.0/go.mod h1:OEthFdQv/AD2RAdzR6Mm1N1KPCztGKDurW1Z8b8VGMM=
|
||||||
github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95 h1:KLq8BE0KwCL+mmXnjLWEAOYO+2l2AE4YMmqG1ZpZHBs=
|
github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95 h1:KLq8BE0KwCL+mmXnjLWEAOYO+2l2AE4YMmqG1ZpZHBs=
|
||||||
github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
|
github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0=
|
||||||
github.com/acomagu/bufpipe v1.0.4 h1:e3H4WUzM3npvo5uv95QuJM3cQspFNtFBzvJ2oNjKIDQ=
|
github.com/acomagu/bufpipe v1.0.4 h1:e3H4WUzM3npvo5uv95QuJM3cQspFNtFBzvJ2oNjKIDQ=
|
||||||
|
|
@ -199,8 +200,8 @@ github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u9
|
||||||
github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM=
|
github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM=
|
||||||
github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw=
|
github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw=
|
||||||
github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U=
|
github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U=
|
||||||
github.com/containerd/containerd v1.7.5 h1:i9T9XpAWMe11BHMN7pu1BZqOGjXaKTPyz2v+KYOZgkY=
|
github.com/containerd/containerd v1.7.6 h1:oNAVsnhPoy4BTPQivLgTzI9Oleml9l/+eYIDYXRCYo8=
|
||||||
github.com/containerd/containerd v1.7.5/go.mod h1:ieJNCSzASw2shSGYLHx8NAE7WsZ/gEigo5fQ78W5Zvw=
|
github.com/containerd/containerd v1.7.6/go.mod h1:SY6lrkkuJT40BVNO37tlYTSnKJnP5AXBc0fhx0q+TJ4=
|
||||||
github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM=
|
github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM=
|
||||||
github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ=
|
github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ=
|
||||||
github.com/containerd/fifo v1.1.0 h1:4I2mbh5stb1u6ycIABlBw9zgtlK8viPI9QkQNRQEEmY=
|
github.com/containerd/fifo v1.1.0 h1:4I2mbh5stb1u6ycIABlBw9zgtlK8viPI9QkQNRQEEmY=
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015 Microsoft
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
59
vendor/github.com/Microsoft/hcsshim/osversion/osversion_windows.go
generated
vendored
Normal file
59
vendor/github.com/Microsoft/hcsshim/osversion/osversion_windows.go
generated
vendored
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
package osversion
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"sync"
|
||||||
|
|
||||||
|
"golang.org/x/sys/windows"
|
||||||
|
)
|
||||||
|
|
||||||
|
// OSVersion is a wrapper for Windows version information
|
||||||
|
// https://msdn.microsoft.com/en-us/library/windows/desktop/ms724439(v=vs.85).aspx
|
||||||
|
type OSVersion struct {
|
||||||
|
Version uint32
|
||||||
|
MajorVersion uint8
|
||||||
|
MinorVersion uint8
|
||||||
|
Build uint16
|
||||||
|
}
|
||||||
|
|
||||||
|
var (
|
||||||
|
osv OSVersion
|
||||||
|
once sync.Once
|
||||||
|
)
|
||||||
|
|
||||||
|
// Get gets the operating system version on Windows.
|
||||||
|
// The calling application must be manifested to get the correct version information.
|
||||||
|
func Get() OSVersion {
|
||||||
|
once.Do(func() {
|
||||||
|
var err error
|
||||||
|
osv = OSVersion{}
|
||||||
|
osv.Version, err = windows.GetVersion()
|
||||||
|
if err != nil {
|
||||||
|
// GetVersion never fails.
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
osv.MajorVersion = uint8(osv.Version & 0xFF)
|
||||||
|
osv.MinorVersion = uint8(osv.Version >> 8 & 0xFF)
|
||||||
|
osv.Build = uint16(osv.Version >> 16)
|
||||||
|
})
|
||||||
|
return osv
|
||||||
|
}
|
||||||
|
|
||||||
|
// Build gets the build-number on Windows
|
||||||
|
// The calling application must be manifested to get the correct version information.
|
||||||
|
func Build() uint16 {
|
||||||
|
return Get().Build
|
||||||
|
}
|
||||||
|
|
||||||
|
// String returns the OSVersion formatted as a string. It implements the
|
||||||
|
// [fmt.Stringer] interface.
|
||||||
|
func (osv OSVersion) String() string {
|
||||||
|
return fmt.Sprintf("%d.%d.%d", osv.MajorVersion, osv.MinorVersion, osv.Build)
|
||||||
|
}
|
||||||
|
|
||||||
|
// ToString returns the OSVersion formatted as a string.
|
||||||
|
//
|
||||||
|
// Deprecated: use [OSVersion.String].
|
||||||
|
func (osv OSVersion) ToString() string {
|
||||||
|
return osv.String()
|
||||||
|
}
|
||||||
35
vendor/github.com/Microsoft/hcsshim/osversion/platform_compat_windows.go
generated
vendored
Normal file
35
vendor/github.com/Microsoft/hcsshim/osversion/platform_compat_windows.go
generated
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
package osversion
|
||||||
|
|
||||||
|
// List of stable ABI compliant ltsc releases
|
||||||
|
// Note: List must be sorted in ascending order
|
||||||
|
var compatLTSCReleases = []uint16{
|
||||||
|
V21H2Server,
|
||||||
|
}
|
||||||
|
|
||||||
|
// CheckHostAndContainerCompat checks if given host and container
|
||||||
|
// OS versions are compatible.
|
||||||
|
// It includes support for stable ABI compliant versions as well.
|
||||||
|
// Every release after WS 2022 will support the previous ltsc
|
||||||
|
// container image. Stable ABI is in preview mode for windows 11 client.
|
||||||
|
// Refer: https://learn.microsoft.com/en-us/virtualization/windowscontainers/deploy-containers/version-compatibility?tabs=windows-server-2022%2Cwindows-10#windows-server-host-os-compatibility
|
||||||
|
func CheckHostAndContainerCompat(host, ctr OSVersion) bool {
|
||||||
|
// check major minor versions of host and guest
|
||||||
|
if host.MajorVersion != ctr.MajorVersion ||
|
||||||
|
host.MinorVersion != ctr.MinorVersion {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
// If host is < WS 2022, exact version match is required
|
||||||
|
if host.Build < V21H2Server {
|
||||||
|
return host.Build == ctr.Build
|
||||||
|
}
|
||||||
|
|
||||||
|
var supportedLtscRelease uint16
|
||||||
|
for i := len(compatLTSCReleases) - 1; i >= 0; i-- {
|
||||||
|
if host.Build >= compatLTSCReleases[i] {
|
||||||
|
supportedLtscRelease = compatLTSCReleases[i]
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ctr.Build >= supportedLtscRelease && ctr.Build <= host.Build
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,84 @@
|
||||||
|
package osversion
|
||||||
|
|
||||||
|
// Windows Client and Server build numbers.
|
||||||
|
//
|
||||||
|
// See:
|
||||||
|
// https://learn.microsoft.com/en-us/windows/release-health/release-information
|
||||||
|
// https://learn.microsoft.com/en-us/windows/release-health/windows-server-release-info
|
||||||
|
// https://learn.microsoft.com/en-us/windows/release-health/windows11-release-information
|
||||||
|
const (
|
||||||
|
// RS1 (version 1607, codename "Redstone 1") corresponds to Windows Server
|
||||||
|
// 2016 (ltsc2016) and Windows 10 (Anniversary Update).
|
||||||
|
RS1 = 14393
|
||||||
|
// V1607 (version 1607, codename "Redstone 1") is an alias for [RS1].
|
||||||
|
V1607 = RS1
|
||||||
|
// LTSC2016 (Windows Server 2016) is an alias for [RS1].
|
||||||
|
LTSC2016 = RS1
|
||||||
|
|
||||||
|
// RS2 (version 1703, codename "Redstone 2") was a client-only update, and
|
||||||
|
// corresponds to Windows 10 (Creators Update).
|
||||||
|
RS2 = 15063
|
||||||
|
// V1703 (version 1703, codename "Redstone 2") is an alias for [RS2].
|
||||||
|
V1703 = RS2
|
||||||
|
|
||||||
|
// RS3 (version 1709, codename "Redstone 3") corresponds to Windows Server
|
||||||
|
// 1709 (Semi-Annual Channel (SAC)), and Windows 10 (Fall Creators Update).
|
||||||
|
RS3 = 16299
|
||||||
|
// V1709 (version 1709, codename "Redstone 3") is an alias for [RS3].
|
||||||
|
V1709 = RS3
|
||||||
|
|
||||||
|
// RS4 (version 1803, codename "Redstone 4") corresponds to Windows Server
|
||||||
|
// 1803 (Semi-Annual Channel (SAC)), and Windows 10 (April 2018 Update).
|
||||||
|
RS4 = 17134
|
||||||
|
// V1803 (version 1803, codename "Redstone 4") is an alias for [RS4].
|
||||||
|
V1803 = RS4
|
||||||
|
|
||||||
|
// RS5 (version 1809, codename "Redstone 5") corresponds to Windows Server
|
||||||
|
// 2019 (ltsc2019), and Windows 10 (October 2018 Update).
|
||||||
|
RS5 = 17763
|
||||||
|
// V1809 (version 1809, codename "Redstone 5") is an alias for [RS5].
|
||||||
|
V1809 = RS5
|
||||||
|
// LTSC2019 (Windows Server 2019) is an alias for [RS5].
|
||||||
|
LTSC2019 = RS5
|
||||||
|
|
||||||
|
// V19H1 (version 1903, codename 19H1) corresponds to Windows Server 1903 (semi-annual
|
||||||
|
// channel).
|
||||||
|
V19H1 = 18362
|
||||||
|
// V1903 (version 1903) is an alias for [V19H1].
|
||||||
|
V1903 = V19H1
|
||||||
|
|
||||||
|
// V19H2 (version 1909, codename 19H2) corresponds to Windows Server 1909 (semi-annual
|
||||||
|
// channel).
|
||||||
|
V19H2 = 18363
|
||||||
|
// V1909 (version 1909) is an alias for [V19H2].
|
||||||
|
V1909 = V19H2
|
||||||
|
|
||||||
|
// V20H1 (version 2004, codename 20H1) corresponds to Windows Server 2004 (semi-annual
|
||||||
|
// channel).
|
||||||
|
V20H1 = 19041
|
||||||
|
// V2004 (version 2004) is an alias for [V20H1].
|
||||||
|
V2004 = V20H1
|
||||||
|
|
||||||
|
// V20H2 corresponds to Windows Server 20H2 (semi-annual channel).
|
||||||
|
V20H2 = 19042
|
||||||
|
|
||||||
|
// V21H1 corresponds to Windows Server 21H1 (semi-annual channel).
|
||||||
|
V21H1 = 19043
|
||||||
|
|
||||||
|
// V21H2Win10 corresponds to Windows 10 (November 2021 Update).
|
||||||
|
V21H2Win10 = 19044
|
||||||
|
|
||||||
|
// V21H2Server corresponds to Windows Server 2022 (ltsc2022).
|
||||||
|
V21H2Server = 20348
|
||||||
|
// LTSC2022 (Windows Server 2022) is an alias for [V21H2Server]
|
||||||
|
LTSC2022 = V21H2Server
|
||||||
|
|
||||||
|
// V21H2Win11 corresponds to Windows 11 (original release).
|
||||||
|
V21H2Win11 = 22000
|
||||||
|
|
||||||
|
// V22H2Win10 corresponds to Windows 10 (2022 Update).
|
||||||
|
V22H2Win10 = 19045
|
||||||
|
|
||||||
|
// V22H2Win11 corresponds to Windows 11 (2022 Update).
|
||||||
|
V22H2Win11 = 22621
|
||||||
|
)
|
||||||
|
|
@ -44,6 +44,12 @@ import (
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// G is a shorthand for [GetLogger].
|
||||||
|
//
|
||||||
|
// We may want to define this locally to a package to get package tagged log
|
||||||
|
// messages.
|
||||||
|
var G = GetLogger
|
||||||
|
|
||||||
// L is an alias for the standard logger.
|
// L is an alias for the standard logger.
|
||||||
var L = &Entry{
|
var L = &Entry{
|
||||||
Logger: logrus.StandardLogger(),
|
Logger: logrus.StandardLogger(),
|
||||||
|
|
@ -169,11 +175,6 @@ func WithLogger(ctx context.Context, logger *Entry) context.Context {
|
||||||
// GetLogger retrieves the current logger from the context. If no logger is
|
// GetLogger retrieves the current logger from the context. If no logger is
|
||||||
// available, the default logger is returned.
|
// available, the default logger is returned.
|
||||||
func GetLogger(ctx context.Context) *Entry {
|
func GetLogger(ctx context.Context) *Entry {
|
||||||
return G(ctx)
|
|
||||||
}
|
|
||||||
|
|
||||||
// G is a shorthand for [GetLogger].
|
|
||||||
func G(ctx context.Context) *Entry {
|
|
||||||
if logger := ctx.Value(loggerKey{}); logger != nil {
|
if logger := ctx.Value(loggerKey{}); logger != nil {
|
||||||
return logger.(*Entry)
|
return logger.(*Entry)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,7 @@ import (
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
"github.com/Microsoft/hcsshim/osversion"
|
||||||
specs "github.com/opencontainers/image-spec/specs-go/v1"
|
specs "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
"golang.org/x/sys/windows"
|
"golang.org/x/sys/windows"
|
||||||
)
|
)
|
||||||
|
|
@ -50,15 +51,36 @@ func (m windowsmatcher) Match(p specs.Platform) bool {
|
||||||
match := m.defaultMatcher.Match(p)
|
match := m.defaultMatcher.Match(p)
|
||||||
|
|
||||||
if match && m.OS == "windows" {
|
if match && m.OS == "windows" {
|
||||||
if strings.HasPrefix(p.OSVersion, m.osVersionPrefix) {
|
// HPC containers do not have OS version filled
|
||||||
|
if p.OSVersion == "" {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
return p.OSVersion == ""
|
|
||||||
|
hostOsVersion := GetOsVersion(m.osVersionPrefix)
|
||||||
|
ctrOsVersion := GetOsVersion(p.OSVersion)
|
||||||
|
return osversion.CheckHostAndContainerCompat(hostOsVersion, ctrOsVersion)
|
||||||
}
|
}
|
||||||
|
|
||||||
return match
|
return match
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetOsVersion(osVersionPrefix string) osversion.OSVersion {
|
||||||
|
parts := strings.Split(osVersionPrefix, ".")
|
||||||
|
if len(parts) < 3 {
|
||||||
|
return osversion.OSVersion{}
|
||||||
|
}
|
||||||
|
|
||||||
|
majorVersion, _ := strconv.Atoi(parts[0])
|
||||||
|
minorVersion, _ := strconv.Atoi(parts[1])
|
||||||
|
buildNumber, _ := strconv.Atoi(parts[2])
|
||||||
|
|
||||||
|
return osversion.OSVersion{
|
||||||
|
MajorVersion: uint8(majorVersion),
|
||||||
|
MinorVersion: uint8(minorVersion),
|
||||||
|
Build: uint16(buildNumber),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Less sorts matched platforms in front of other platforms.
|
// Less sorts matched platforms in front of other platforms.
|
||||||
// For matched platforms, it puts platforms with larger revision
|
// For matched platforms, it puts platforms with larger revision
|
||||||
// number in front.
|
// number in front.
|
||||||
|
|
|
||||||
|
|
@ -196,6 +196,10 @@ func Parse(specifier string) (specs.Platform, error) {
|
||||||
p.Variant = cpuVariant()
|
p.Variant = cpuVariant()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if p.OS == "windows" {
|
||||||
|
p.OSVersion = GetWindowsOsVersion()
|
||||||
|
}
|
||||||
|
|
||||||
return p, nil
|
return p, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -218,6 +222,10 @@ func Parse(specifier string) (specs.Platform, error) {
|
||||||
p.Variant = ""
|
p.Variant = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if p.OS == "windows" {
|
||||||
|
p.OSVersion = GetWindowsOsVersion()
|
||||||
|
}
|
||||||
|
|
||||||
return p, nil
|
return p, nil
|
||||||
case 3:
|
case 3:
|
||||||
// we have a fully specified variant, this is rare
|
// we have a fully specified variant, this is rare
|
||||||
|
|
@ -227,6 +235,10 @@ func Parse(specifier string) (specs.Platform, error) {
|
||||||
p.Variant = "v8"
|
p.Variant = "v8"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if p.OS == "windows" {
|
||||||
|
p.OSVersion = GetWindowsOsVersion()
|
||||||
|
}
|
||||||
|
|
||||||
return p, nil
|
return p, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,3 +28,7 @@ func newDefaultMatcher(platform specs.Platform) Matcher {
|
||||||
Platform: Normalize(platform),
|
Platform: Normalize(platform),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetWindowsOsVersion() string {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,10 @@
|
||||||
package platforms
|
package platforms
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
specs "github.com/opencontainers/image-spec/specs-go/v1"
|
specs "github.com/opencontainers/image-spec/specs-go/v1"
|
||||||
|
"golang.org/x/sys/windows"
|
||||||
)
|
)
|
||||||
|
|
||||||
// NewMatcher returns a Windows matcher that will match on osVersionPrefix if
|
// NewMatcher returns a Windows matcher that will match on osVersionPrefix if
|
||||||
|
|
@ -32,3 +35,8 @@ func newDefaultMatcher(platform specs.Platform) Matcher {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetWindowsOsVersion() string {
|
||||||
|
major, minor, build := windows.RtlGetNtVersionNumbers()
|
||||||
|
return fmt.Sprintf("%d.%d.%d", major, minor, build)
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,9 @@ github.com/Microsoft/go-winio/internal/fs
|
||||||
github.com/Microsoft/go-winio/internal/socket
|
github.com/Microsoft/go-winio/internal/socket
|
||||||
github.com/Microsoft/go-winio/internal/stringbuffer
|
github.com/Microsoft/go-winio/internal/stringbuffer
|
||||||
github.com/Microsoft/go-winio/pkg/guid
|
github.com/Microsoft/go-winio/pkg/guid
|
||||||
|
# github.com/Microsoft/hcsshim v0.11.0
|
||||||
|
## explicit; go 1.18
|
||||||
|
github.com/Microsoft/hcsshim/osversion
|
||||||
# github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95
|
# github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95
|
||||||
## explicit; go 1.13
|
## explicit; go 1.13
|
||||||
github.com/ProtonMail/go-crypto/bitcurves
|
github.com/ProtonMail/go-crypto/bitcurves
|
||||||
|
|
@ -286,7 +289,7 @@ github.com/containerd/cgroups
|
||||||
github.com/containerd/cgroups/stats/v1
|
github.com/containerd/cgroups/stats/v1
|
||||||
github.com/containerd/cgroups/v2
|
github.com/containerd/cgroups/v2
|
||||||
github.com/containerd/cgroups/v2/stats
|
github.com/containerd/cgroups/v2/stats
|
||||||
# github.com/containerd/containerd v1.7.5
|
# github.com/containerd/containerd v1.7.6
|
||||||
## explicit; go 1.19
|
## explicit; go 1.19
|
||||||
github.com/containerd/containerd/cio
|
github.com/containerd/containerd/cio
|
||||||
github.com/containerd/containerd/defaults
|
github.com/containerd/containerd/defaults
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue