Including an additional element is inconvenient

Bug #1503669 reported by Steven Hardy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Won't Fix
Medium
Jaume Devesa

Bug Description

Currently we have several handy options to overcloud image build in tripleoclient, for example you might want to do this:

git clone https://github.com/openstack/tripleo-puppet-elements.git

<hack on a fancy-new-element element>

export NODE_DIST=centos7

openstack overcloud image build --type overcloud-full --tripleo-puppet-elements /home/stack/tripleo-puppet-elements --overcloud-full-dib-extra-args "fancy-new-element"

However, this doesn't work as expected - the extra-args overwrites the internally defined extra-args instead of appending to them, so we don't build all of the normal openstack elements into the image. Same problem when you export OVERCLOUD_FULL_DIB_EXTRA_ARGS.

To support third-party integrators who may want to build their additional elements into the image, we need a simple way to append extra elements to those normally built, or at least an obvious way to see what is normally defined internally (such as a warning when you call with the overcloud-full-dib-extra-args option, showing the list of elements overwritten so they can be cut/pasted into the CLI).

Brad P. Crochet (brad-9)
Changed in tripleo:
assignee: nobody → Brad P. Crochet (brad-9)
Revision history for this message
Steven Hardy (shardy) wrote :

Note the workaround is to derive the list of extra args from the logs, and pass in a fully qualified list, e.g:

openstack overcloud image build --type overcloud-full --tripleo-puppet-elements /home/stack/tripleo-puppet-elements --overcloud-full-dib-extra-args "overcloud-full overcloud-controller overcloud-compute overcloud-ceph-storage ntp sysctl hosts baremetal dhcp-all-interfaces os-collect-config heat-config-puppet heat-config-script puppet-modules hiera os-net-config stable-interface-names grub2-deprecated "

Clearly this will be fragile because folks won't know if the internally defined list changes.

Jaume Devesa (devvesa)
Changed in tripleo:
assignee: Brad P. Crochet (brad-9) → Jaume Devesa (devvesa)
Revision history for this message
Steven Hardy (shardy) wrote :

I think this is actually fixed by https://review.openstack.org/#/c/229778/

I made some notes of how I pulled and tested that via building a local delorean package:

http://paste.openstack.org/show/475605/

Ben Nemec (bnemec)
Changed in tripleo:
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Ben Nemec (bnemec) wrote :

IMHO https://review.openstack.org/#/c/229778/ mitigates the problem, but I'd still like to see the behavior of overcloud-full-dib-extra-args fixed. It's clearly wrong based on the name of the option, and third-party integrators aren't necessarily going to want their extra elements running on ramdisk image builds, which is what that change will do. I'm fine with both options existing because I think there are valid use cases for both, but I don't know that one can replace the other.

Revision history for this message
Brad P. Crochet (brad-9) wrote :

I would like to think that this is basically fixed by the use of tripleo-build-images. The yaml definition files are *far* superior to the imperative building approach. There are two final reviews to really have this switched: https://review.openstack.org/#/c/336312/ and https://review.openstack.org/#/c/337669/

Brad P. Crochet (brad-9)
Changed in tripleo:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.