Add SimInfos as hostlabels for migrating cellular suites
SimInfos is a list of SimInfo, converting as hostlabels
BUG=b:317121870
TEST=Unit tests
Change-Id: Ieba8987b91b70901b48a71c8e2094194888dfa90
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/dev-util/+/5190608
Reviewed-by: Derek Beckett <dbeckett@chromium.org>
Commit-Queue: Varun Srivastav <varunsrivastav@google.com>
Tested-by: Varun Srivastav <varunsrivastav@google.com>
(cherry picked from commit 8e5df5d72410262774a2ec034d3acb6f79798c34)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/dev-util/+/5314741
Auto-Submit: Varun Srivastav <varunsrivastav@google.com>
diff --git a/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info.go b/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info.go
index 979bb54..5d51357 100644
--- a/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info.go
+++ b/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info.go
@@ -47,6 +47,7 @@
PowerUnitHostName string
PowerUnitOutlet string
HydraHostName string
+ SimInfos []string
}
// joinHostAndPort joins host and port to a single address.
@@ -103,9 +104,13 @@
}
cacheInfo := dut.GetCacheServer()
-
addr := joinHostAndPort(chromeOS.Ssh)
+ var SimInfos []string
+ if chromeOS.GetSimInfos() != nil && len(chromeOS.GetSimInfos()) > 0 {
+ SimInfos = simInfoConverter(chromeOS.GetSimInfos())
+ }
+
// Servo address.
var servo string
var servoHostname string
@@ -273,6 +278,7 @@
PowerUnitHostName: powerUnitHostName,
PowerUnitOutlet: powerUnitOutlet,
HydraHostName: hydraHostName,
+ SimInfos: SimInfos,
}, nil
}
@@ -359,9 +365,65 @@
labels = append(labels, fmt.Sprintf("working_bluetooth_btpeer:%v", dut.BTPeers))
}
+ if dut.SimInfos != nil && len(dut.SimInfos) > 0 {
+ labels = append(labels, dut.SimInfos...)
+ }
+
return attrMap, labels, nil
}
+// simInfoConverter converts SIMInfo labels to Autotest labels
+// converter logic is copied from go/src/infra/libs/skylab/inventory/autotest/labels/siminfo.go
+func simInfoConverter(simInfos []*labapi.SIMInfo) []string {
+ var labels []string
+ for _, s := range simInfos {
+ sim_id := ""
+ if v := s.GetSlotId(); v != 0 {
+ sim_id = strconv.Itoa(int(v))
+ lv := "sim_slot_id:" + sim_id
+ labels = append(labels, lv)
+ }
+ if v := s.GetType(); v != *labapi.SIMType_SIM_UNKNOWN.Enum() {
+ lv := "sim_" + sim_id + "_type:" + v.String()
+ labels = append(labels, lv)
+ }
+ if eid := s.GetEid(); eid != "" {
+ lv := "sim_" + sim_id + "_eid:" + eid
+ labels = append(labels, lv)
+ }
+ if s.GetTestEsim() {
+ lv := "sim_" + sim_id + "_test_esim:True"
+ labels = append(labels, lv)
+ }
+ lv := "sim_" + sim_id + "_num_profiles:" + strconv.Itoa(len(s.GetProfileInfo()))
+ labels = append(labels, lv)
+ for j, p := range s.GetProfileInfo() {
+ profile_id := strconv.Itoa(j)
+ if k := p.GetIccid(); k != "" {
+ lv := "sim_" + sim_id + "_" + profile_id + "_iccid:" + k
+ labels = append(labels, lv)
+ }
+ if k := p.GetSimPin(); k != "" {
+ lv := "sim_" + sim_id + "_" + profile_id + "_pin:" + k
+ labels = append(labels, lv)
+ }
+ if k := p.GetSimPuk(); k != "" {
+ lv := "sim_" + sim_id + "_" + profile_id + "_puk:" + k
+ labels = append(labels, lv)
+ }
+ if k := p.GetCarrierName(); k != *labapi.NetworkProvider_NETWORK_OTHER.Enum() {
+ lv := "sim_" + sim_id + "_" + profile_id + "_carrier_name:" + k.String()
+ labels = append(labels, lv)
+ }
+ if k := p.GetOwnNumber(); k != "" {
+ lv := "sim_" + sim_id + "_" + profile_id + "_own_number:" + k
+ labels = append(labels, lv)
+ }
+ }
+ }
+ return labels
+}
+
// FillAndroidInfo extraction Android information from a device.
func FillAndroidInfo(device *api.CrosTestRequest_Device) *AndroidInfo {
android := device.Dut.GetAndroid()
diff --git a/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info_test.go b/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info_test.go
index 2a10499..c4b1dec 100644
--- a/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info_test.go
+++ b/src/chromiumos/test/execution/cmd/cros-test/internal/device/dut_info_test.go
@@ -72,6 +72,14 @@
ServoHostname: "c6-r9-r7-labstation",
ServoPort: "9996",
Phase: "PHASE_UNSPECIFIED",
+ SimInfos: []string{
+ "sim_slot_id:1", "sim_1_num_profiles:1", "sim_1_0_iccid:1", "sim_1_0_pin:1111",
+ "sim_1_0_puk:49830420", "sim_1_0_carrier_name:NETWORK_TMOBILE",
+ "sim_1_0_own_number:6507891159", "sim_slot_id:2", "sim_2_type:SIM_PHYSICAL",
+ "sim_2_num_profiles:1", "sim_2_0_iccid:2", "sim_2_0_pin:2222",
+ "sim_2_0_puk:49830420", "sim_2_0_carrier_name:NETWORK_ATT",
+ "sim_2_0_own_number:6507891159",
+ },
},
{
Addr: "[0:0:0:0:0:ffff:7f00:1]:2",
@@ -116,6 +124,34 @@
Port: 9996,
},
},
+ SimInfos: []*labapi.SIMInfo{
+ {
+ SlotId: 1,
+ Type: *labapi.SIMType_SIM_UNKNOWN.Enum(),
+ ProfileInfo: []*labapi.SIMProfileInfo{
+ {
+ Iccid: "1",
+ SimPin: "1111",
+ SimPuk: "49830420",
+ CarrierName: *labapi.NetworkProvider_NETWORK_TMOBILE.Enum(),
+ OwnNumber: "6507891159",
+ },
+ },
+ },
+ {
+ SlotId: 2,
+ Type: *labapi.SIMType_SIM_PHYSICAL.Enum(),
+ ProfileInfo: []*labapi.SIMProfileInfo{
+ {
+ Iccid: "2",
+ SimPin: "2222",
+ SimPuk: "49830420",
+ CarrierName: *labapi.NetworkProvider_NETWORK_ATT.Enum(),
+ OwnNumber: "6507891159",
+ },
+ },
+ },
+ },
},
},
},
@@ -210,6 +246,14 @@
HwIDList: []string{"hwid_component:hwid123"},
CacheServer: "cache1:8001",
HWID: "Atlas 123-34",
+ SimInfos: []string{
+ "sim_slot_id:1", "sim_1_num_profiles:1", "sim_1_0_iccid:1", "sim_1_0_pin:1111",
+ "sim_1_0_puk:49830420", "sim_1_0_carrier_name:NETWORK_TMOBILE",
+ "sim_1_0_own_number:6507891159", "sim_slot_id:2", "sim_2_type:SIM_PHYSICAL",
+ "sim_2_num_profiles:1", "sim_2_0_iccid:2", "sim_2_0_pin:2222",
+ "sim_2_0_puk:49830420", "sim_2_0_carrier_name:NETWORK_ATT",
+ "sim_2_0_own_number:6507891159",
+ },
},
}
input := []*api.CrosTestRequest_Device{
@@ -257,6 +301,34 @@
Sku: "123",
HwidComponent: []string{"hwid123"},
Hwid: "Atlas 123-34",
+ SimInfos: []*labapi.SIMInfo{
+ {
+ SlotId: 1,
+ Type: *labapi.SIMType_SIM_UNKNOWN.Enum(),
+ ProfileInfo: []*labapi.SIMProfileInfo{
+ {
+ Iccid: "1",
+ SimPin: "1111",
+ SimPuk: "49830420",
+ CarrierName: *labapi.NetworkProvider_NETWORK_TMOBILE.Enum(),
+ OwnNumber: "6507891159",
+ },
+ },
+ },
+ {
+ SlotId: 2,
+ Type: *labapi.SIMType_SIM_PHYSICAL.Enum(),
+ ProfileInfo: []*labapi.SIMProfileInfo{
+ {
+ Iccid: "2",
+ SimPin: "2222",
+ SimPuk: "49830420",
+ CarrierName: *labapi.NetworkProvider_NETWORK_ATT.Enum(),
+ OwnNumber: "6507891159",
+ },
+ },
+ },
+ },
},
},
CacheServer: &labapi.CacheServer{Address: &labapi.IpEndpoint{Address: "cache1", Port: 8001}},