Howdy folks, In the TripleO meeting two weeks ago, it came up that tripleo-quickstart is being used as a CI tool in RDO. This came about organically, because we needed to use RDO CI to self-gate quickstart (it relies on having a baremetal virthost). It displaced another ansible based CI tool there (khaleesi) and most(all?) of the extra functionality from that tool (upgrades, scale, baremetal, etc.) has been moved into discrete ansible roles that are able to plugin to quickstart.[1]
We are still left with two different tool sets, where one should suffice (and focus CI efforts in one place). I see two different ways to resolve this. 1. Actively work on making the tripleo-ci scripts consumable external to tripleo-ci. We have a project in RDO (WeiRDO)[2] that is consuming upstream CI for packstack and puppet, so it is not totally far-fetched to add support for TripleO jobs. Pros: - All CI development just happens directly in tripleo-ci and RDO just inherits that work. Cons: - This is totally untried, and therefore a totally unknown amount of work. - It is all or nothing in that there is no incremental path to get the CI scripts working outside of CI. - We have to rewrite a bunch of working ansible code in bash which IMO is the wrong direction for a modern CI system. 2. Actively work on making tripleo-ci consume the ansible work in tripleo-quickstart and the external role ecosystem around it. Pros: - This could be done incrementally, replacing a single function from tripleo.sh with an invocation of tripleo-quickstart that performs that function instead. - We would be able to pull in a lot of extra functionality via these external roles for free(ish). Cons: - Similarly unknown amount of work to completely switch. - CI development would be done in multiple repos, though each would have discrete and well defined functionality. Personally, I don't think we should do anything drastic with CI until after we release Newton, so we don't add any risk of impacting new features that haven't landed yet. I do think it would be a good goal for Ocata to have a CI system in TripleO that is consumable outside of TripleO. In any case, this email is simply to garner feedback if other's think this is a worthy thing to pursue and opinions on how we can get there. [1] https://github.com/redhat-openstack?utf8=%E2%9C%93&query=ansible-role-tripleo (note not all of these are actively used/developed) [2] https://github.com/rdo-infra/weirdo __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: [email protected]?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
