From 85e63dd904c0555cec156176c810fbbb19843d82 Mon Sep 17 00:00:00 2001 From: Zack Cerza Date: Fri, 14 Feb 2014 11:32:37 -0600 Subject: [PATCH] Allow using different devstack branches Signed-off-by: Zack Cerza --- teuthology/task/devstack.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/teuthology/task/devstack.py b/teuthology/task/devstack.py index c3f81fc54d..ec157f8aea 100644 --- a/teuthology/task/devstack.py +++ b/teuthology/task/devstack.py @@ -16,6 +16,7 @@ http://ceph.com/docs/master/rbd/rbd-openstack/ log = logging.getLogger(__name__) DEVSTACK_GIT_REPO = 'https://github.com/openstack-dev/devstack.git' +DS_STABLE_BRANCHES = ("havana", "grizzly") is_devstack_node = lambda role: role.startswith('devstack') is_osd_node = lambda role: role.startswith('osd') @@ -59,7 +60,8 @@ def install(ctx, config): devstack_node = ctx.cluster.only(is_devstack_node).remotes.keys()[0] an_osd_node = ctx.cluster.only(is_osd_node).remotes.keys()[0] - install_devstack(devstack_node) + devstack_branch = config.get("branch", "master") + install_devstack(devstack_node, devstack_branch) try: configure_devstack_and_ceph(ctx, config, devstack_node, an_osd_node) yield @@ -67,12 +69,19 @@ def install(ctx, config): pass -def install_devstack(devstack_node): +def install_devstack(devstack_node, branch="master"): log.info("Cloning DevStack repo...") args = ['git', 'clone', DEVSTACK_GIT_REPO] devstack_node.run(args=args) + if branch != "master": + if branch in DS_STABLE_BRANCHES and not branch.startswith("stable"): + branch = "stable/" + branch + log.info("Checking out {branch} branch...".format(branch=branch)) + cmd = "cd devstack && git checkout " + branch + devstack_node.run(args=cmd) + log.info("Installing DevStack...") args = ['cd', 'devstack', run.Raw('&&'), './stack.sh'] devstack_node.run(args=args) -- 2.39.5