When passed a non-existent flavor name (in either {compute,control_plane}.platform.openstack.flavorName or platform.openstack.computeFlavor), the Installer panics when validating the flavor. How to reproduce: ``` cat > install-config.yaml <<EOF apiVersion: v1 baseDomain: jkfd.de compute: - architecture: amd64 hyperthreading: Enabled name: worker replicas: 3 platform: openstack: type: tuasorella controlPlane: architecture: amd64 hyperthreading: Enabled name: master platform: {} replicas: 3 metadata: creationTimestamp: null name: crash networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 machineNetwork: - cidr: 10.0.0.0/16 networkType: OpenShiftSDN serviceNetwork: - 172.30.0.0/16 platform: openstack: apiFloatingIP: 128.31.25.129 apiVIP: 10.0.0.5 cloud: moc externalDNS: null externalNetwork: external ingressVIP: 10.0.0.7 publish: External pullSecret: '{"auths":{"cloud.openshift.com":{"auth":"UkVEQUNURUQ="}}}' EOF openshift-install-linux-4.6.0-0.nightly-2020-10-03-051134 create manifests # panic: runtime error: invalid memory address or nil pointer dereference # [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x2208610] # # goroutine 1 [running]: # github.com/openshift/installer/pkg/asset/installconfig/openstack/validation.validatePlatformFlavor(0xc0005d40e0, 0xc000c10320, 0xc001293770, 0x0, 0x0, 0x0) # /go/src/github.com/openshift/installer/pkg/asset/installconfig/openstack/validation/platform.go:83 +0xb0 ```
*** Bug 1891910 has been marked as a duplicate of this bug. ***
*** Bug 1891908 has been marked as a duplicate of this bug. ***
Needs backport; backport is blocked by Bug 1878900.
Checked with 4.7.0-0.nightly-2020-10-27-051128, and it still panic, so need to wait for new accepted payload to have another try. $ ./openshift-install-4.7 version ./openshift-install-4.7 4.7.0-0.nightly-2020-10-27-051128 built from commit de62b01d451857d942ac41dcfdad9385856fde9e release image registry.svc.ci.openshift.org/ocp/release@sha256:2945b52c8bf58f18a2770071acb8cece1fad38c105f28c98dbfecfe675e2f758 $ ./openshift-install-4.7 create manifests --dir /tmp/test panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x22b302f] goroutine 1 [running]: github.com/openshift/installer/pkg/asset/installconfig/openstack/validation.validateFlavor(0x0, 0xd567700, 0x8, 0x2, 0x19, 0xc000f05980, 0xc000f05980, 0x40d7d0, 0xc00111ada0) /go/src/github.com/openshift/installer/pkg/asset/installconfig/openstack/validation/machinepool.go:116 +0x4f github.com/openshift/installer/pkg/asset/installconfig/openstack/validation.ValidateMachinePool(0xc0005a0ea0, 0xc00006e8c0, 0x0, 0xc000f05950, 0x1, 0x1, 0xc000f05950) /go/src/github.com/openshift/installer/pkg/asset/installconfig/openstack/validation/machinepool.go:50 +0x71a github.com/openshift/installer/pkg/asset/installconfig/openstack.Validate(0xc000814fc0, 0x0, 0x0) /go/src/github.com/openshift/installer/pkg/asset/installconfig/openstack/validate.go:28 +0x3a5 github.com/openshift/installer/pkg/asset/installconfig.(*InstallConfig).platformValidation(0xc000599720, 0x0, 0x0) /go/src/github.com/openshift/installer/pkg/asset/installconfig/installconfig.go:188 +0x87 github.com/openshift/installer/pkg/asset/installconfig.(*InstallConfig).finish(0xc000599720, 0xd5d1fc5, 0x13, 0x1a64, 0xd2f6240) /go/src/github.com/openshift/installer/pkg/asset/installconfig/installconfig.go:148 +0x234 github.com/openshift/installer/pkg/asset/installconfig.(*InstallConfig).Load(0xc000599720, 0xe8af800, 0xc0003a3680, 0xe9a3180, 0xc000599720, 0xc000599720) /go/src/github.com/openshift/installer/pkg/asset/installconfig/installconfig.go:125 +0x1f0 github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc00068e0c0, 0xe8dad00, 0xc000599340, 0xc00064fabc, 0x4, 0xc00064fabc, 0x4, 0x0) /go/src/github.com/openshift/installer/pkg/asset/store/store.go:264 +0x455 github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc00068e0c0, 0xe8dacc0, 0xc000599280, 0xd5652a4, 0x2, 0xd5652a4, 0x2, 0x0) /go/src/github.com/openshift/installer/pkg/asset/store/store.go:247 +0x2d7 github.com/openshift/installer/pkg/asset/store.(*storeImpl).load(0xc00068e0c0, 0xe8db040, 0x155ede60, 0x0, 0x0, 0x2, 0x2, 0xe826c00) /go/src/github.com/openshift/installer/pkg/asset/store/store.go:247 +0x2d7 github.com/openshift/installer/pkg/asset/store.(*storeImpl).fetch(0xc00068e0c0, 0xe8db040, 0x155ede60, 0x0, 0x0, 0x40b4e5, 0xc060420) /go/src/github.com/openshift/installer/pkg/asset/store/store.go:201 +0xa3a github.com/openshift/installer/pkg/asset/store.(*storeImpl).Fetch(0xc00068e0c0, 0xe8db040, 0x155ede60, 0x155a7740, 0x4, 0x4, 0x5c00000000000000, 0xed736ec66) /go/src/github.com/openshift/installer/pkg/asset/store/store.go:77 +0x4b main.runTargetCmd.func1(0x7fffe976bd80, 0x9, 0xc0005991e0, 0xc000273d40) /go/src/github.com/openshift/installer/cmd/openshift-install/create.go:173 +0x135 main.runTargetCmd.func2(0x155b47a0, 0xc000598f60, 0x0, 0x2) /go/src/github.com/openshift/installer/cmd/openshift-install/create.go:200 +0xb5 github.com/spf13/cobra.(*Command).execute(0x155b47a0, 0xc000598f00, 0x2, 0x2, 0x155b47a0, 0xc000598f00) /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:846 +0x2c2 github.com/spf13/cobra.(*Command).ExecuteC(0xc00080f8c0, 0xc000c1fdf8, 0x1, 0x1) /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:950 +0x375 github.com/spf13/cobra.(*Command).Execute(...) /go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:887 main.installerMain() /go/src/github.com/openshift/installer/cmd/openshift-install/main.go:70 +0x2b8 main.main() /go/src/github.com/openshift/installer/cmd/openshift-install/main.go:50 +0x16f
It looks like my patch did not make it into that nightly build. The next one should work.
verified on $ ./openshift-install-4.7 version ./openshift-install-4.7 4.7.0-0.nightly-2020-11-09-190845 built from commit 519f21bfada103752bb78929f170580d505b92c0 release image registry.svc.ci.openshift.org/ocp/release@sha256:f7bf10489f11c05927e901310ad7d824599b385f69f12c2de61cf8c437c85fc4 $ ./openshift-install-4.7 create manifests --dir /tmp/test FATAL failed to fetch Master Machines: failed to load asset "Install Config": compute[0].platform.openstack.type: Not found: "m1.largeaoeu"
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: OpenShift Container Platform 4.7.0 security, bug fix, and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2020:5633