* [PATCH OSSTEST v2] make-flight: Support specifying a mini-os tree+revision
@ 2016-01-19 12:48 Ian Campbell
2016-01-19 14:26 ` Ian Jackson
0 siblings, 1 reply; 2+ messages in thread
From: Ian Campbell @ 2016-01-19 12:48 UTC (permalink / raw)
To: ian.jackson, xen-devel; +Cc: Ian Campbell
This is useful for standalone or adhoc use as well as (presumably)
bisection.
There is no ap-* or cr-daily-* integration here because I didn't need
it (i.e. I'm not intending to create a new mini-os branch here).
In order to cope with Xen <= 4.5 where extras/mini-os exists but is
part of xen.git and not something cloned from elsewhere add a
$optional argument (itself optional) to dir_identify_vcs which if true
causes dir_identify_vcs to return 'none' instead of failing.
Previously dir_identify_vcs failed with:
bash: line 5: fail: command not found
because the fail command is undefined. Instead echo fail and use that
to trigger the $optional handling.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
---
v2: Adjust dir_identify_vcs handling of an unknown vcs
---
Osstest/TestSupport.pm | 13 ++++++++-----
mfi-common | 4 +++-
ts-xen-build | 8 ++++++++
3 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 9a90c2e..2141905 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1319,21 +1319,24 @@ END
store_vcs_revision($which, $rev, $vcs);
}
-sub dir_identify_vcs ($$) {
- my ($ho,$dir) = @_;
- return target_cmd_output($ho, <<END);
+sub dir_identify_vcs ($$;$) {
+ my ($ho,$dir,$optional) = @_;
+ my $vcs = target_cmd_output($ho, <<END);
set -e
if ! test -e $dir; then echo none; exit 0; fi
cd $dir
(test -e .git && echo git) ||
(test -d .hg && echo hg) ||
- (echo >&2 'unable to determine vcs'; fail)
+ (echo >&2 'unable to determine vcs'; echo fail)
END
+ die "unable to determine vcs" if !$optional && $vcs eq 'fail';
+ $vcs = 'none' if $vcs eq 'fail';
+ return $vcs;
}
sub store_revision ($$$;$) {
my ($ho,$which,$dir,$optional) = @_;
- my $vcs= dir_identify_vcs($ho,$dir);
+ my $vcs= dir_identify_vcs($ho,$dir,$optional);
return if $optional && $vcs eq 'none';
my $rev= vcs_dir_revision($ho,$dir,$vcs);
store_vcs_revision($which,$rev,$vcs);
diff --git a/mfi-common b/mfi-common
index b739c7d..a705573 100644
--- a/mfi-common
+++ b/mfi-common
@@ -191,6 +191,7 @@ create_build_jobs () {
tree_xen=$TREE_XEN \
tree_seabios=$TREE_SEABIOS \
tree_ovmf=$TREE_OVMF \
+ tree_minios=$TREE_MINIOS \
$RUNVARS $BUILD_RUNVARS $BUILD_XEN_RUNVARS $arch_runvars \
$suite_runvars \
host_hostflags=$build_hostflags \
@@ -198,7 +199,8 @@ create_build_jobs () {
revision_qemu=$REVISION_QEMU \
revision_qemuu=$REVISION_QEMU_UPSTREAM \
revision_seabios=$REVISION_SEABIOS \
- revision_ovmf=$REVISION_OVMF
+ revision_ovmf=$REVISION_OVMF \
+ revision_minios=$REVISION_MINIOS
done
if [ x$want_prevxen = xy ] ; then
diff --git a/ts-xen-build b/ts-xen-build
index bc4e41a..8f92729 100755
--- a/ts-xen-build
+++ b/ts-xen-build
@@ -85,6 +85,12 @@ END
(nonempty($r{revision_ovmf}) ? <<END : '').
echo >>.config OVMF_UPSTREAM_REVISION='$r{revision_ovmf}'
END
+ (nonempty($r{tree_minios}) ? <<END : '').
+ echo >>.config MINIOS_UPSTREAM_URL='$r{tree_minios}'
+END
+ (nonempty($r{revision_minios}) ? <<END : '').
+ echo >>.config MINIOS_UPSTREAM_REVISION='$r{revision_minios}'
+END
(nonempty($earlyprintk) ? <<END : '').
echo >>.config CONFIG_EARLY_PRINTK=$earlyprintk
END
@@ -147,11 +153,13 @@ END
sub collectversions () {
my $tools="$builddir/xen/tools";
+ my $extras="$builddir/xen/extras";
store_revision($ho, 'qemu', "$tools/ioemu-dir", 1);
store_revision($ho, 'qemu', "$tools/qemu-xen-traditional-dir", 1);
store_revision($ho, 'qemuu', "$tools/qemu-xen-dir", 1);
store_revision($ho, 'seabios', "$tools/firmware/seabios-dir", 1);
store_revision($ho, 'ovmf', "$tools/firmware/ovmf-dir", 1);
+ store_revision($ho, 'minios', "$extras/mini-os", 1);
}
sub divide () {
--
2.6.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH OSSTEST v2] make-flight: Support specifying a mini-os tree+revision
2016-01-19 12:48 [PATCH OSSTEST v2] make-flight: Support specifying a mini-os tree+revision Ian Campbell
@ 2016-01-19 14:26 ` Ian Jackson
0 siblings, 0 replies; 2+ messages in thread
From: Ian Jackson @ 2016-01-19 14:26 UTC (permalink / raw)
To: Ian Campbell; +Cc: xen-devel
Ian Campbell writes ("[PATCH OSSTEST v2] make-flight: Support specifying a mini-os tree+revision"):
> This is useful for standalone or adhoc use as well as (presumably)
> bisection.
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-01-19 14:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-19 12:48 [PATCH OSSTEST v2] make-flight: Support specifying a mini-os tree+revision Ian Campbell
2016-01-19 14:26 ` Ian Jackson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.