From patchwork Mon Nov 14 12:33:34 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anthony PERARD X-Patchwork-Id: 9427429 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 032D46047D for ; Mon, 14 Nov 2016 12:36:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id F103A286BB for ; Mon, 14 Nov 2016 12:36:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E3F7428921; Mon, 14 Nov 2016 12:36:50 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BF38C286BB for ; Mon, 14 Nov 2016 12:36:49 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6GSd-0008Do-00; Mon, 14 Nov 2016 12:34:06 +0000 Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c6GSb-0008D6-97 for xen-devel@lists.xen.org; Mon, 14 Nov 2016 12:34:05 +0000 Received: from [85.158.137.68] by server-12.bemta-3.messagelabs.com id 0E/1B-28947-C3FA9285; Mon, 14 Nov 2016 12:34:04 +0000 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrAIsWRWlGSWpSXmKPExsXitHSDva71es0 IgwOH9CyWfFzM4sDocXT3b6YAxijWzLyk/IoE1oz7uz+yFkz3qVixqo+5gXGJfRcjB4eEgL/E /0/ZXYycHGwCBhIrpl9lBLFFBGQlVnfNYQexmQUiJF7cWMUGYgsLxEv8+7aJCcRmEVCVaDmyj QXE5hWwlbi29BIriC0hIC+x8PwRJpDxnAJ2Ej97ZUHCQkAlnU+7GCFsNYkbC5dBtQpKnJz5hA VilYTEwRcvmCEu45b4220/gZFvFpKqWUiqFjAyrWLUKE4tKkst0jUy0UsqykzPKMlNzMzRNTQ w1stNLS5OTE/NSUwq1kvOz93ECAynegYGxh2Mr477HWKU5GBSEuWNj9SMEOJLyk+pzEgszogv Ks1JLT7EKMPBoSTB+2ktUE6wKDU9tSItMwcY2DBpCQ4eJRGING9xQWJucWY6ROoUozHHm10vH zBxdCz69IBJiCUvPy9VSpz3D0ipAEhpRmke3CBYxF1ilJUS5mVkYGAQ4ilILcrNLEGVf8Uozs GoJMw7G2QKT2ZeCdy+V0CnMAGdsstcA+SUkkSElFQD4zpj5b0Xv9s9OKwWIpaSv3SX5cvlJ+R 2N13WcnzStmvLrawVx6YvXuZ3T+vE6aaLP70OHFgaYRAj/bl/SXWvnOqs951uvGw9JhxrYzdG SutFnTU47fsoIFD9YGJG4ZPDL7q2KE4udNj3a941Ezm59E2Ox5v0v8k9qjprtk9+9xd18wgXp xhrEyWW4oxEQy3mouJEAPkZVu2zAgAA X-Env-Sender: prvs=119cd6670=anthony.perard@citrix.com X-Msg-Ref: server-14.tower-31.messagelabs.com!1479126840!70834817!2 X-Originating-IP: [66.165.176.63] X-SpamReason: No, hits=0.0 required=7.0 tests=sa_preprocessor: VHJ1c3RlZCBJUDogNjYuMTY1LjE3Ni42MyA9PiAzMDYwNDg=\n, received_headers: No Received headers X-StarScan-Received: X-StarScan-Version: 9.0.16; banners=-,-,- X-VirusChecked: Checked Received: (qmail 14179 invoked from network); 14 Nov 2016 12:34:03 -0000 Received: from smtp02.citrix.com (HELO SMTP02.CITRIX.COM) (66.165.176.63) by server-14.tower-31.messagelabs.com with RC4-SHA encrypted SMTP; 14 Nov 2016 12:34:03 -0000 X-IronPort-AV: E=Sophos;i="5.31,638,1473120000"; d="scan'208";a="398025287" From: Anthony PERARD To: Date: Mon, 14 Nov 2016 12:33:34 +0000 Message-ID: <20161114123334.5585-4-anthony.perard@citrix.com> X-Mailer: git-send-email 2.10.2 In-Reply-To: <20161114123334.5585-1-anthony.perard@citrix.com> References: <20161114123334.5585-1-anthony.perard@citrix.com> MIME-Version: 1.0 X-DLP: MIA1 Cc: Anthony PERARD , Ian Jackson Subject: [Xen-devel] [OSSTEST PATCH v7 3/3] Create a flight to test OpenStack with xen-unstable and libvirt X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" X-Virus-Scanned: ClamAV using ClamSMTP This patch should create a flight "openstack-nova", with those jobs: build-amd64 build-amd64-xsm build-amd64-pvops build-amd64-libvirt test-amd64-amd64-devstack test-amd64-amd64-devstack-xsm About the runvars revision_* of test-*-*-devstack: only REVISION_OPENSTACK_NOVA is set, the others are unset. Empty revision_* runvar would clone the default branch, which should be master for every openstack repos. Signed-off-by: Anthony PERARD --- Changes in V7: - metaprograming - reindent Change in V6: - rebased Change in V5: - rename flight openstack to openstack-nova - add -xsm variant of the test - run test-devstack only on openstack-nova flight Change in V4: - also skip build-*-oldkern in make flight - fix select_xenbranch - set revision_*=$REVISION_OPENSTACK_* in make-flight (was revision_*=master before) only REVISION_OPENSTACK_NOVA is set, the others are unset. empty revision_* runvar would clone the default branch, which should be master for every openstack repos Change in V3: - Switch to "track" Nova tree instead of devstack. Nova is the service we care about from a Xen point of view. Also it is updated much more often than devstack. - Use TREE_OPENSTACK_ as prefix for all trees variables. - Change the filter, keep only *-devstack jobs. - Add stuff into ./ap-push - Add stuff into ./cr-daily-branch. - Add 'openstack' into ./cr-for-branches. --- ap-common | 18 ++++++++++++++++++ ap-fetch-version | 4 ++++ ap-fetch-version-old | 5 +++++ ap-print-url | 3 +++ ap-push | 5 +++++ cr-daily-branch | 8 ++++++++ cr-for-branches | 2 +- cri-common | 1 + make-flight | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 93 insertions(+), 1 deletion(-) diff --git a/ap-common b/ap-common index cbb815c..26534a5 100644 --- a/ap-common +++ b/ap-common @@ -54,6 +54,23 @@ : ${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 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 +99,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..a714ee2 100755 --- a/ap-fetch-version +++ b/ap-fetch-version @@ -106,6 +106,10 @@ ovmf) repo_tree_rev_fetch_git ovmf \ $TREE_OVMF_UPSTREAM master $LOCALREV_OVMF ;; +openstack-nova) + repo_tree_rev_fetch_git openstack-nova \ + $TREE_OPENSTACK_NOVA master $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..6dddbb7 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,10 @@ ovmf) repo_tree_rev_fetch_git ovmf \ $BASE_TREE_OVMF xen-tested-master $BASE_LOCALREV_OVMF ;; +openstack-nova) + repo_tree_rev_fetch_git openstack-nova \ + $BASE_TREE_OPENSTACK_NOVA xen-tested-master $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..6f4e6b1 100755 --- a/ap-print-url +++ b/ap-print-url @@ -67,6 +67,9 @@ ovmf) osstest) echo none:; ;; +openstack-nova) + echo $TREE_OPENSTACK_NOVA + ;; *) echo >&2 "branch $branch ?" exit 1 diff --git a/ap-push b/ap-push index a27ccc2..136d1b6 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,10 @@ ovmf) cd $repos/ovmf git push $TREE_OVMF $revision:refs/heads/xen-tested-master ;; +openstack-nova) + cd $repos/openstack-nova + git push $TREE_OPENSTACK_NOVA $revision:refs/heads/xen-tested-master + ;; 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 158554d..45a2f69 100755 --- a/cr-daily-branch +++ b/cr-daily-branch @@ -207,6 +207,10 @@ 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-nova OPENSTACK_NOVA + export REVISION_OPENSTACK_NOVA +fi if [ "x$branch" != "xxen-unstable" ]; then export REVISION_LINUX_OLD=disable @@ -260,6 +264,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 5e8b1a4..ebe8986 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-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 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-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 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-nova ${EXTRA_BRANCHES}} export BRANCHES fetchwlem=$wlem diff --git a/cri-common b/cri-common index ac360de..f48dfa5 100644 --- a/cri-common +++ b/cri-common @@ -82,6 +82,7 @@ select_xenbranch () { ovmf) tree=ovmf; xenbranch=xen-unstable ;; distros-*) tree=none; xenbranch=xen-unstable ;; osstest) tree=osstest; xenbranch=xen-unstable ;; + openstack-nova) tree=openstack-nova; xenbranch=xen-unstable ;; esac if [ "x$tree" = xlinux ]; then linuxbranch=$branch diff --git a/make-flight b/make-flight index a374884..344e9e6 100755 --- a/make-flight +++ b/make-flight @@ -167,6 +167,17 @@ job_create_test_filter_callback () { *) return 1;; esac ;; + openstack-nova) + case "$job" in + *-devstack) ;; + *-devstack-xsm) ;; + *) return 1;; + esac + case $dom0arch in + amd64) ;; + *) return 1;; + esac + ;; *) case "$job" in *-qemuu-*) @@ -198,6 +209,12 @@ arch_branch_filter_callback () { rumprun) return 1;; seabios) return 1;; ovmf) return 1;; + openstack-nova) return 1;; + esac + ;; + i386) + case "$branch" in + openstack-nova) return 1;; esac ;; i386|amd64) @@ -606,6 +623,35 @@ do_pv_debian_tests () { $endfmt$dom0arch } +do_openstack_tests () { + local xsms=$(xenbranch_xsm_variants) + local openstack_trees=(cinder devstack glance keystone nova + requirements tempest) + + + if [ $dom0arch != amd64 ]; then + return + fi + if [ $branch != openstack-nova ]; then + return + fi + + local os_runvars="" + for tree in ${openstack_trees[@]}; do + eval "os_runvars+=\" tree_$tree=\${TREE_OPENSTACK_${tree^^}}\"" + eval "os_runvars+=\" revision_$tree=\${REVISION_OPENSTACK_${tree^^}}\"" + done + + for xsm in $xsms ; do + job_create_test test-$xenarch$kern-$dom0arch-devstack \ + test-devstack libvirt $xenarch $dom0arch \ + $os_runvars \ + dom0_mem=4000 \ + enable_xsm=$xsm \ + all_hostflags=$most_hostflags + done +} + test_matrix_do_one () { do_pv_debian_tests @@ -753,6 +799,8 @@ test_matrix_do_one () { do_pvgrub_tests do_xtf_tests + + do_openstack_tests } if [ x$buildflight = x ]; then