Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-16692

Installer panics when controlPlane.platform is empty in install-config.yaml

    XMLWordPrintable

Details

    • -
    • Important
    • No
    • Rejected
    • False
    • Hide

      None

      Show
      None
    • Release Note Not Required

    Description

      Description of problem:

      When running the installer on OSP with:
      
      [...]
      controlPlane:
        name: master
        platform: {}
        replicas: 3
      [...]
      
      in the install-config.yaml, it panics:
      
      DEBUG OpenShift Installer 4.14.0-0.nightly-2023-07-20-215234
      DEBUG Built from commit 1e9209ac80ed2cb4ba5663f519e51161a1d8858a
      DEBUG Fetching Metadata...
      DEBUG Loading Metadata...
      DEBUG   Loading Cluster ID...
      DEBUG     Loading Install Config...
      DEBUG       Loading SSH Key...
      DEBUG       Loading Base Domain...
      DEBUG         Loading Platform...
      DEBUG       Loading Cluster Name...
      DEBUG         Loading Base Domain...
      DEBUG         Loading Platform...
      DEBUG       Loading Networking...
      DEBUG         Loading Platform...
      DEBUG       Loading Pull Secret...
      DEBUG       Loading Platform...
      panic: runtime error: invalid memory address or nil pointer dereference
      [signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x3956f6d]goroutine 1 [running]:
      github.com/openshift/installer/pkg/types/conversion.convertOpenStack(0xc000464dc0)
              /go/src/github.com/openshift/installer/pkg/types/conversion/installconfig.go:172 +0x1cd
      github.com/openshift/installer/pkg/types/conversion.ConvertInstallConfig(0xc000464dc0)
              /go/src/github.com/openshift/installer/pkg/types/conversion/installconfig.go:47 +0x2af
      github.com/openshift/installer/pkg/asset/installconfig.(*AssetBase).LoadFromFile(0xc000a18180, {0x20f8c650?, 0xc000696b40?})                                                                                                                 
              /go/src/github.com/openshift/installer/pkg/asset/installconfig/installconfigbase.go:64 +0x32b
      github.com/openshift/installer/pkg/asset/installconfig.(*InstallConfig).Load(0xc000a18180, {0x20f8c650?, 0xc000696b40?})                                                                                                                     
              /go/src/github.com/openshift/installer/pkg/asset/installconfig/installconfig.go:118 +0x2e
      github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc0008f3f20, {0x20f95950, 0xc0002f9a40}, {0xc000af060c, 0x4})                                                                                                              
              /go/src/github.com/openshift/installer/pkg/asset/store/store.go:263 +0x35f
      github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc0008f3f20, {0x20f95920, 0xc00040cf60}, {0x819d89a, 0x2})                                                                                                                 
              /go/src/github.com/openshift/installer/pkg/asset/store/store.go:246 +0x256
      github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc0008f3f20, {0x7fed58b9ec98, 0x25ba8530}, {0x0, 0x0})                                                                                                                     
              /go/src/github.com/openshift/installer/pkg/asset/store/store.go:246 +0x256
      github.com/openshift/installer/pkg/asset/store.(*storeImpl).fetch(0xc0008f3f20, {0x7fed58b9ec98, 0x25ba8530}, {0x0, 0x0})                                                                                                                    
              /go/src/github.com/openshift/installer/pkg/asset/store/store.go:200 +0x1a9
      github.com/openshift/installer/pkg/asset/store.(*storeImpl).Fetch(0x7ffd6b4992ff?, {0x7fed58b9ec98, 0x25ba8530}, {0x25b8ea80, 0x8, 0x8})                                                                                                     
              /go/src/github.com/openshift/installer/pkg/asset/store/store.go:76 +0x48
      main.runTargetCmd.func1({0x7ffd6b4992ff, 0x6})
              /go/src/github.com/openshift/installer/cmd/openshift-install/create.go:260 +0x126
      main.runTargetCmd.func2(0x25b96920?, {0xc0002f8100?, 0x4?, 0x4?})
              /go/src/github.com/openshift/installer/cmd/openshift-install/create.go:290 +0xe7
      github.com/spf13/cobra.(*Command).execute(0x25b96920, {0xc0002f80c0, 0x4, 0x4})
              /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:920 +0x847
      github.com/spf13/cobra.(*Command).ExecuteC(0xc000a0c000)
              /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:1040 +0x3bd
      github.com/spf13/cobra.(*Command).Execute(...)
              /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:968
      main.installerMain()
              /go/src/github.com/openshift/installer/cmd/openshift-install/main.go:61 +0x2b0
      main.main()
              /go/src/github.com/openshift/installer/cmd/openshift-install/main.go:38 +0xff
      

      Version-Release number of selected component (if applicable):

      4.14.0-0.nightly-2023-07-20-215234

      How reproducible:

      Always

      Steps to Reproduce:

      1. Create the install-config.yaml with an empty controlPlane.platform
      2. Run the installer
      

      Actual results:

      Panic

      Expected results:

      Controlled error message if the platform is strictly necessary, otherwise a successful installation.

      Additional info:

       

      Attachments

        Issue Links

          Activity

            People

              maandre@redhat.com Martin André
              juriarte@redhat.com Jon Uriarte
              Jon Uriarte Jon Uriarte
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: