This is sort of a PSA for something that has been available for quite a while. I run a Jenkins job locally that does RPM builds of proposed changes to a number of TripleO repos. This can be helpful if you want to test a change locally as it means you don't have to pull the code down and do a build yourself. Just sudo yum install -y https://repos.fedorapeople.org/repos/openstack-m/jenkins/rpm-build/333121/4/instack-undercloud-999.9.9-99999.noarch.rpm
(for example) and you've got the change installed. These rpms are versioned 999.9.9 to make sure they should never be superseded by a package from a regular repo.
Installing the packages in an overcloud image is a bit more difficult, but most of the packages don't end up on the overcloud anyway. It should be possible to use virt-customize to inject a package though.
Note that this is just my personal Jenkins server that I maintain on a best-effort basis, so that's why it isn't in any sort of official docs. At the moment I'm building packages for:
If you're interested in having packages built for another project just let me know.
Finally, here's where you can find the built rpms: https://repos.fedorapeople.org/repos/openstack-m/jenkins/rpm-build Find the Gerrit change number and drill down to the latest patch set.