
* Update hcsshim to v0.8.14 * Update go-winio to v0.4.16 This brings in some vhd package changes from winio, and the compute storage api bindings for the shim. This is to facilitate some coming functionality for the windows snapshotter as well as possibly for future work down the line for the windows differ. Signed-off-by: Daniel Canter <dcanter@microsoft.com>
28 lines
789 B
Go
28 lines
789 B
Go
package computestorage
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/Microsoft/hcsshim/internal/interop"
|
|
"github.com/Microsoft/hcsshim/internal/oc"
|
|
"go.opencensus.io/trace"
|
|
"golang.org/x/sys/windows"
|
|
)
|
|
|
|
// GetLayerVhdMountPath returns the volume path for a virtual disk of a writable container layer.
|
|
func GetLayerVhdMountPath(ctx context.Context, vhdHandle windows.Handle) (path string, err error) {
|
|
title := "hcsshim.GetLayerVhdMountPath"
|
|
ctx, span := trace.StartSpan(ctx, title)
|
|
defer span.End()
|
|
defer func() { oc.SetSpanStatus(span, err) }()
|
|
|
|
var mountPath *uint16
|
|
err = hcsGetLayerVhdMountPath(vhdHandle, &mountPath)
|
|
if err != nil {
|
|
return "", fmt.Errorf("failed to get vhd mount path: %s", err)
|
|
}
|
|
path = interop.ConvertAndFreeCoTaskMemString(mountPath)
|
|
return path, nil
|
|
}
|