blob: 4de00cb5dcc390f7709bc0bb422c0b5c1309f910 [file] [log] [blame]
// Copyright 2024 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package helpers
import (
_go "go.chromium.org/chromiumos/config/go"
"go.chromium.org/chromiumos/config/go/test/api"
"go.chromium.org/chromiumos/test/ctpv2/common/dynamic_updates/common"
"go.chromium.org/chromiumos/test/ctpv2/common/dynamic_updates/interfaces"
"google.golang.org/protobuf/types/known/anypb"
)
// DefaultProvisionStartUpRequest outlines the default values
// typically required for starting up a provision task.
func DefaultProvisionStartUpRequest(deviceId *common.DeviceIdentifier) *interfaces.ProvisionTaskStartUpRequest {
return &interfaces.ProvisionTaskStartUpRequest{
DynamicInputs: map[string]string{
"dut": deviceId.GetDevice("dut"),
"dutServer": deviceId.GetCrosDutServer(),
},
}
}
// DefaultCrosProvisionInstallRequest sets up a cros-provision request
// with an empty metadata field, solely passing along the installPath.
func DefaultCrosProvisionInstallRequest(installPath string) *interfaces.ProvisionTaskInstallRequest {
crosProvisionMetadata, _ := anypb.New(&api.CrOSProvisionMetadata{})
return &interfaces.ProvisionTaskInstallRequest{
StaticImagePath: &_go.StoragePath{
HostType: _go.StoragePath_GS,
Path: installPath,
},
StaticMetadata: crosProvisionMetadata,
}
}
// DefaultAndroidProvisionInstallRequest sets up a android-provision request.
func DefaultAndroidProvisionInstallRequest() *interfaces.ProvisionTaskInstallRequest {
androidProvisionMetadata, _ := anypb.New(&api.AndroidProvisionRequestMetadata{
CipdPackages: []*api.CIPDPackage{
{
VersionOneof: &api.CIPDPackage_Ref{
Ref: "latest_stable",
},
AndroidPackage: api.AndroidPackage_GMS_CORE,
},
},
})
return &interfaces.ProvisionTaskInstallRequest{
StaticMetadata: androidProvisionMetadata,
}
}