[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [OSSTEST PATCH v14 22/24] New branch openstack-ocata



Testing of the Ocata stable branch of OpenStack against Xen unstable.

OpenStack have many different repo which should be clone/fetch at
roughly the same time. This does not matter much for a stable branch of
OpenStack, but during development they can be a proposed patch for a
repo that depends on a proposed patch in an other repo, so a patch with
a dependency will not be commited into master before its dependency is
commited in the other repo.

Since the concept of pushing multiple repo at once with osstest doesn't
exist, and is going to be complicated, this is not done by this patch,
and the simpler approach of pushing the main tree only is taken here.
This also mean that we cannot use the output of the branch
openstack-ocata as a baseline in an other branch.

Also, grabbing the revisions of every tree is simply done by setting the
runvars REVISION_* to the stable branch name to "origin/stable/ocata",
except Tempest does not have stable branch and is able to test any
OpenStack version.

Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
---

Notes:
    Been able to track every necessary for OpenStack would require something
    in osstest to push to multiple branches, but I'm not going to do that in
    this series. I can see to try this later.
    
    I've also looked at grabbing a revision of every tree, but this is also
    a bit complicated. It probably requires ./ap-fetch-version to work with
    parameter like 'openstack-ocata-cinder' (openstack-$release-$tree) but
    there would not be any changes in ap-fetch-version-old or ap-push.
    
    V14:
      I've check with standalone-generate-dump-flight-runvars that only a
      new branch openstack-ocata is generated.

 ap-common            | 19 +++++++++++++++++++
 ap-fetch-version     |  6 ++++++
 ap-fetch-version-old |  8 ++++++++
 ap-print-url         |  3 +++
 ap-push              |  7 +++++++
 cr-daily-branch      | 31 +++++++++++++++++++++++++++++++
 cr-for-branches      |  2 +-
 cri-common           |  1 +
 8 files changed, 76 insertions(+), 1 deletion(-)

diff --git a/ap-common b/ap-common
index bc7c03c..72496fd 100644
--- a/ap-common
+++ b/ap-common
@@ -54,6 +54,24 @@
 : ${PUSH_TREE_OVMF:=$XENBITS:/home/xen/git/osstest/ovmf.git}
 : ${BASE_TREE_OVMF:=git://xenbits.xen.org/osstest/ovmf.git}
 
+define_openstack_trees() {
+    local openstack_trees=(cinder glance keystone neutron nova requirements
+        tempest)
+    local tree
+    local url
+
+    : ${GIT_OPENSTACK_ORG:=git://git.openstack.org}
+    : ${TREE_OPENSTACK_DEVSTACK:=$GIT_OPENSTACK_ORG/openstack-dev/devstack.git}
+    for tree in "${openstack_trees[@]}"; do
+        url=$GIT_OPENSTACK_ORG/openstack/$tree.git
+        eval ": \${TREE_OPENSTACK_${tree^^}:=$url}"
+    done
+}
+
+define_openstack_trees
+: 
${PUSH_TREE_OPENSTACK_NOVA:=$XENBITS:/home/xen/git/osstest/openstack-nova.git}
+: ${BASE_TREE_OPENSTACK_NOVA:=git://xenbits.xen.org/osstest/openstack-nova.git}
+
 : ${TREE_LINUXFIRMWARE:=git://xenbits.xen.org/osstest/linux-firmware.git}
 : ${PUSH_TREE_LINUXFIRMWARE:=$XENBITS:/home/osstest/ext/linux-firmware.git}
 : 
${UPSTREAM_TREE_LINUXFIRMWARE:=$GIT_KERNEL_ORG/pub/scm/linux/kernel/git/firmware/linux-firmware.git}
@@ -82,6 +100,7 @@ fi
 : ${LOCALREV_SEABIOS:=daily-cron.$branch}
 : ${LOCALREV_OVMF:=daily-cron.$branch}
 : ${LOCALREV_XTF:=daily-cron.$branch}
+: ${LOCALREV_OPENSTACK_NOVA:=daily-cron.$branch}
 
 : ${TREEBASE_LINUX_XCP:=http://hg.uk.xensource.com/carbon/trunk/linux-2.6.27}
 
diff --git a/ap-fetch-version b/ap-fetch-version
index a107c93..1d86351 100755
--- a/ap-fetch-version
+++ b/ap-fetch-version
@@ -106,6 +106,12 @@ ovmf)
        repo_tree_rev_fetch_git ovmf \
                $TREE_OVMF_UPSTREAM master $LOCALREV_OVMF
        ;;
+openstack-ocata)
+        openstack_release=${branch#openstack-}
+        repo_tree_rev_fetch_git "openstack-nova" \
+                "$TREE_OPENSTACK_NOVA" "stable/$openstack_release" \
+                "$LOCALREV_OPENSTACK_NOVA"
+        ;;
 osstest)
         if [ "x$OSSTEST_USE_HEAD" = "xy" ] ; then
            git update-ref -m "Arranging to test HEAD" \
diff --git a/ap-fetch-version-old b/ap-fetch-version-old
index 3cbc176..a0b8c08 100755
--- a/ap-fetch-version-old
+++ b/ap-fetch-version-old
@@ -35,6 +35,7 @@ check_ap_fetch_placeholders
 : ${BASE_LOCALREV_XTF:=daily-cron.$branch.old}
 : ${BASE_LOCALREV_OVMF:=daily-cron.$branch.old}
 : ${BASE_TAG_LIBVIRT:=xen-tested-master}
+: ${BASE_LOCALREV_OPENSTACK_NOVA:=daily-cron.$branch.old}
 
 if info_linux_tree "$branch"; then
        repo_tree_rev_fetch_git linux \
@@ -114,6 +115,13 @@ ovmf)
        repo_tree_rev_fetch_git ovmf \
                $BASE_TREE_OVMF xen-tested-master $BASE_LOCALREV_OVMF
        ;;
+openstack-ocata)
+        openstack_release="${branch##*-}"
+        repo_tree_rev_fetch_git openstack-nova \
+                "$BASE_TREE_OPENSTACK_NOVA" \
+                "xen-tested-stable-$openstack_release" \
+                "$BASE_LOCALREV_OPENSTACK_NOVA"
+        ;;
 osstest)
        if [ "x$OSSTEST_USE_HEAD" != "xy" ] ; then
            git fetch -f $HOME/testing.git production:ap-fetch
diff --git a/ap-print-url b/ap-print-url
index 93c14b3..cfba1d4 100755
--- a/ap-print-url
+++ b/ap-print-url
@@ -67,6 +67,9 @@ ovmf)
 osstest)
        echo none:;
        ;;
+openstack-ocata)
+       echo $TREE_OPENSTACK_NOVA
+       ;;
 *)
        echo >&2 "branch $branch ?"
        exit 1
diff --git a/ap-push b/ap-push
index a27ccc2..e5c061a 100755
--- a/ap-push
+++ b/ap-push
@@ -41,6 +41,7 @@ TREE_RUMPRUN=$PUSH_TREE_RUMPRUN
 TREE_SEABIOS=$PUSH_TREE_SEABIOS
 TREE_OVMF=$PUSH_TREE_OVMF
 TREE_XTF=$PUSH_TREE_XTF
+TREE_OPENSTACK_NOVA=$PUSH_TREE_OPENSTACK_NOVA
 
 if info_linux_tree "$branch"; then
        cd $repos/linux
@@ -129,6 +130,12 @@ ovmf)
        cd $repos/ovmf
        git push $TREE_OVMF $revision:refs/heads/xen-tested-master
        ;;
+openstack-ocata)
+        cd $repos/openstack-nova
+        openstack_release=${branch#openstack-}
+        git push $TREE_OPENSTACK_NOVA \
+                $revision:refs/heads/xen-tested-stable-$openstack_release
+        ;;
 osstest)
        git push $HOME/testing.git $revision:production
        if [ x"$TREEBRANCH_OSSTEST_UPSTREAM" != x ] ; then
diff --git a/cr-daily-branch b/cr-daily-branch
index 39483cd..c3de124 100755
--- a/cr-daily-branch
+++ b/cr-daily-branch
@@ -207,6 +207,33 @@ if [ "x$REVISION_LINUXFIRMWARE" = x ]; then
        determine_version REVISION_LINUXFIRMWARE linuxfirmware LINUXFIRMWARE
         export REVISION_LINUXFIRMWARE
 fi
+if [ "x$REVISION_OPENSTACK_NOVA" = x ]; then
+        determine_version REVISION_OPENSTACK_NOVA openstack-ocata 
OPENSTACK_NOVA
+        export REVISION_OPENSTACK_NOVA
+fi
+# Set REVISION for every tree that openstack is going to use and that have a
+# stable branch (tempest does not)
+determine_openstack_version() {
+        local openstack_tree="$1"
+        local openstack_release
+        local openstack_branch
+
+        if ! eval [ "x\$REVISION_OPENSTACK_${openstack_tree^^}" = x ]; then
+                return
+        fi
+        case "$branch" in
+        openstack-ocata)
+                openstack_release=${branch#openstack-}
+                openstack_branch="origin/stable/${branch##*-}"
+                eval "REVISION_OPENSTACK_${openstack_tree^^}=$openstack_branch"
+                export "REVISION_OPENSTACK_${openstack_tree^^}"
+                ;;
+        esac
+}
+for openstack_tree in cinder devstack glance keystone neutron requirements; do
+        determine_openstack_version "$openstack_tree"
+done
+
 
 case "$tree" in
 xen)
@@ -255,6 +282,10 @@ ovmf)
        realtree=ovmf
        NEW_REVISION=$REVISION_OVMF
        ;;
+openstack-nova)
+       realtree=openstack-nova
+       NEW_REVISION=$REVISION_OPENSTACK_NOVA
+       ;;
 *)
        NEW_REVISION=''
        wantpush=false
diff --git a/cr-for-branches b/cr-for-branches
index a691273..ed76d70 100755
--- a/cr-for-branches
+++ b/cr-for-branches
@@ -31,7 +31,7 @@ scriptoptions="$1"; shift
 LOGFILE=tmp/cr-for-branches.log
 export LOGFILE
 
-: ${BRANCHES:=osstest xen-4.0-testing xen-4.1-testing xen-4.2-testing 
xen-4.3-testing xen-4.4-testing xen-4.5-testing xen-4.6-testing xen-4.7-testing 
xen-4.8-testing xen-4.9-testing xen-unstable qemu-mainline 
qemu-upstream-unstable qemu-upstream-4.2-testing qemu-upstream-4.3-testing 
qemu-upstream-4.4-testing qemu-upstream-4.5-testing qemu-upstream-4.6-testing 
qemu-upstream-4.7-testing qemu-upstream-4.8-testing qemu-upstream-4.9-testing 
linux-linus linux-4.9 linux-4.1 linux-3.18 linux-3.16 linux-3.14 linux-3.10 
linux-3.4 linux-arm-xen seabios ovmf xtf ${EXTRA_BRANCHES}}
+: ${BRANCHES:=osstest xen-4.0-testing xen-4.1-testing xen-4.2-testing 
xen-4.3-testing xen-4.4-testing xen-4.5-testing xen-4.6-testing xen-4.7-testing 
xen-4.8-testing xen-4.9-testing xen-unstable qemu-mainline 
qemu-upstream-unstable qemu-upstream-4.2-testing qemu-upstream-4.3-testing 
qemu-upstream-4.4-testing qemu-upstream-4.5-testing qemu-upstream-4.6-testing 
qemu-upstream-4.7-testing qemu-upstream-4.8-testing qemu-upstream-4.9-testing 
linux-linus linux-4.9 linux-4.1 linux-3.18 linux-3.16 linux-3.14 linux-3.10 
linux-3.4 linux-arm-xen seabios ovmf xtf openstack-ocata ${EXTRA_BRANCHES}}
 export BRANCHES
 
 fetchwlem=$wlem
diff --git a/cri-common b/cri-common
index 903fb4e..751a362 100644
--- a/cri-common
+++ b/cri-common
@@ -82,6 +82,7 @@ select_xenbranch () {
        ovmf)                   tree=ovmf;      xenbranch=xen-unstable ;;
        distros-*|examine)      tree=none;      xenbranch=xen-unstable ;;
        osstest)                tree=osstest;   xenbranch=xen-unstable ;;
+       openstack-ocata)   tree=openstack-nova; xenbranch=xen-unstable ;;
        esac
        if [ "x$tree" = xlinux ]; then
                linuxbranch=$branch
-- 
Anthony PERARD


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.