I said in a previous post that I would write something up about my devtest workflow once I had it nailed down a bit more, and although it's an always-evolving thing, I think I've got a pretty good setup at this point so I figured I'd go ahead and write it up. Instead of including scripts and such here, I'm just going to link to my Github repo where all of this stuff is stored and reference those scripts in this post.
The first step is to source devtest.rc, which I generally just add to my ~/.bashrc so it always gets done when I start a new session. That sets up a bunch of environment variables that are either required or convenient for development environments. Some of them may be unnecessarily setting variables to their defaults, but this way they are handy if I need to change them for some reason. Also, note that this is for Fedora 20 - other distros may need slightly tweaked values (NODE_DIST at the very least).
Some notes about devtest.rc:
Once devtest.rc is sourced, it should be possible to run-devtest. This script is simply a wrapper that passes --trash-my-machine to devtest.sh so you don't have to type it every time. It also passes through any options to the script, so if you want to run with cached images (for example) you could run-devtest -c
.
While devtest is running, you can keep track of its progress with dtstatus. I run it with watch
so it updates every two seconds: watch dtstatus
. This just tells you which step (ramdisk, seed, undercloud, overcloud) devtest is on, and any information it has about what that step is currently doing (building images and waiting for deployment, at the moment). This is another thing I need to investigate adding to upstream TripleO.