@@ -61,10 +61,15 @@ func newNVIDIAContainerRuntime(logger *logrus.Logger, cfg *config.Config, argv [
6161
6262// newSpecModifier is a factory method that creates constructs an OCI spec modifer based on the provided config.
6363func newSpecModifier (logger * logrus.Logger , cfg * config.Config , ociSpec oci.Spec , argv []string ) (oci.SpecModifier , error ) {
64- modeModifier , err := newModeModifier (logger , cfg , ociSpec , argv )
64+ mode := info .ResolveAutoMode (logger , cfg .NVIDIAContainerRuntimeConfig .Mode )
65+ modeModifier , err := newModeModifier (logger , mode , cfg , ociSpec , argv )
6566 if err != nil {
6667 return nil , err
6768 }
69+ // For CDI mode we make no additional modifications.
70+ if mode == "cdi" {
71+ return modeModifier , nil
72+ }
6873
6974 graphicsModifier , err := modifier .NewGraphicsModifier (logger , cfg , ociSpec )
7075 if err != nil {
@@ -96,8 +101,8 @@ func newSpecModifier(logger *logrus.Logger, cfg *config.Config, ociSpec oci.Spec
96101 return modifiers , nil
97102}
98103
99- func newModeModifier (logger * logrus.Logger , cfg * config.Config , ociSpec oci.Spec , argv []string ) (oci.SpecModifier , error ) {
100- switch info . ResolveAutoMode ( logger , cfg . NVIDIAContainerRuntimeConfig . Mode ) {
104+ func newModeModifier (logger * logrus.Logger , mode string , cfg * config.Config , ociSpec oci.Spec , argv []string ) (oci.SpecModifier , error ) {
105+ switch mode {
101106 case "legacy" :
102107 return modifier .NewStableRuntimeModifier (logger , cfg .NVIDIAContainerRuntimeHookConfig .Path ), nil
103108 case "csv" :
0 commit comments