MCPcopy Create free account
hub / github.com/NVIDIA/gpu-operator / TestGetDriverSpecMultipleNodePools

Function TestGetDriverSpecMultipleNodePools

internal/state/driver_test.go:967–1035  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

965}
966
967func TestGetDriverSpecMultipleNodePools(t *testing.T) {
968 cr := &nvidiav1alpha1.NVIDIADriver{
969 ObjectMeta: metav1.ObjectMeta{
970 UID: apitypes.UID("test-uid-multipools"),
971 },
972 Spec: nvidiav1alpha1.NVIDIADriverSpec{
973 DriverType: nvidiav1alpha1.GPU,
974 UsePrecompiled: ptr.To(true),
975 Repository: "nvcr.io/nvidia",
976 Image: "driver",
977 Version: "535.104.05",
978 Manager: nvidiav1alpha1.DriverManagerSpec{
979 Repository: "nvcr.io/nvidia/cloud-native",
980 Image: "k8s-driver-manager",
981 Version: "v0.6.2",
982 },
983 },
984 }
985
986 pool1 := nodePool{
987 osRelease: "ubuntu",
988 osVersion: "22.04",
989 kernel: "5.15.0-generic",
990 nodeSelector: map[string]string{
991 "feature.node.kubernetes.io/kernel-version.full": "5.15.0-generic",
992 "feature.node.kubernetes.io/system-os_release.VERSION_ID": "22.04",
993 },
994 }
995
996 var err error
997 pool1.osTag, err = getOSTag(pool1.osRelease, pool1.osVersion)
998 require.NoError(t, err)
999
1000 pool2 := nodePool{
1001 osRelease: "ubuntu",
1002 osVersion: "20.04",
1003 kernel: "5.4.0-generic",
1004 nodeSelector: map[string]string{
1005 "feature.node.kubernetes.io/kernel-version.full": "5.4.0-generic",
1006 "feature.node.kubernetes.io/system-os_release.VERSION_ID": "20.04",
1007 },
1008 }
1009
1010 pool2.osTag, err = getOSTag(pool2.osRelease, pool2.osVersion)
1011 require.NoError(t, err)
1012
1013 spec1, err := getDriverSpec(cr, pool1)
1014 require.NoError(t, err)
1015 spec2, err := getDriverSpec(cr, pool2)
1016 require.NoError(t, err)
1017
1018 // Verify each spec has correct values
1019 assert.Equal(t, "nvcr.io/nvidia/driver:535.104.05-5.15.0-generic-ubuntu22.04", spec1.ImagePath)
1020 assert.Equal(t, "nvcr.io/nvidia/driver:535.104.05-5.4.0-generic-ubuntu20.04", spec2.ImagePath)
1021 assert.Equal(t, "ubuntu22.04", spec1.OSVersion)
1022 assert.Equal(t, "ubuntu20.04", spec2.OSVersion)
1023
1024 // Verify NodeSelectors are independent

Callers

nothing calls this directly

Calls 2

getOSTagFunction · 0.85
getDriverSpecFunction · 0.85

Tested by

no test coverage detected