xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration
@ 2015-06-23  9:54 Ian Campbell
  2015-06-23 10:00 ` Ian Campbell
  2015-06-25 10:36 ` Ian Jackson
  0 siblings, 2 replies; 3+ messages in thread
From: Ian Campbell @ 2015-06-23  9:54 UTC (permalink / raw)
  To: ian.jackson; +Cc: Dario.Faggioli, Ian Campbell, xen-devel

By providing an explicit fetch method in cri-getconfig which checks
things.

Without this then anything which uses cr-daily-branch produces the
rather cryptic:

    + test -f daily.xsettings
    ++ ./ap-print-url xen-unstable
    with-lock-ex ./ap-print-url: /lock: Permission denied
    + treeurl=
    FAILED rc=255

Which has caught out one or two people using standalone mode.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Dario.Faggioli@citrix.com
---
v2: README wrapping
    Move into a cri-getconfig helper (invalidating Dario's T-a-a-b)
---
 README         |  5 +++++
 cri-getconfig  | 15 +++++++++++++++
 cri-lock-repos |  2 +-
 standalone     |  7 +++++++
 4 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/README b/README
index 44e2989..c3508a3 100644
--- a/README
+++ b/README
@@ -422,6 +422,11 @@ Stash
 Images
 Logs
 
+Repos              Full path to a temporary directory where repositories
+                   can be cloned. This is needed for anything which uses
+                   cr-daily-branch, including "./standalone make-flight"
+                   and "standalone-generate-dump-flight-runvars".
+
 DebianSuite
 GuestDebianSuite   defaults to DebianSuite
 
diff --git a/cri-getconfig b/cri-getconfig
index a19b900..0589bf0 100644
--- a/cri-getconfig
+++ b/cri-getconfig
@@ -24,3 +24,18 @@ getconfig () {
                 print $c{"'$1'"} or die $!;
         '
 }
+
+getrepos() {
+	local repos=`getconfig Repos`
+	if [ -z "$repos" ] ; then
+		echo "Repos must be configured in $config" >&2
+		exit 1
+	fi
+	if [ ! -d "$repos" ] ; then
+		# Is likely an absolute path, so don't create automatically,
+		# just in case...
+		echo "Repos $repos does not exist" >&2
+		exit 1
+	fi
+	echo $repos
+}
diff --git a/cri-lock-repos b/cri-lock-repos
index 7d10c87..c8269f3 100644
--- a/cri-lock-repos
+++ b/cri-lock-repos
@@ -19,7 +19,7 @@
 
 . cri-common
 
-repos=`getconfig Repos`
+repos=`getrepos`
 repos_lock="$repos/lock"
 
 if [ "x$OSSTEST_REPOS_LOCK_LOCKED" != "x$repos_lock" ]; then
diff --git a/standalone b/standalone
index 91d18b5..c89347f 100755
--- a/standalone
+++ b/standalone
@@ -142,6 +142,12 @@ need_host() {
     fi
 }
 
+check_repos() {
+    # We don't care about the answer, just the error checking and
+    # logging to stderr.
+    OSSTEST_CONFIG=$config getrepos >/dev/null
+}
+
 ensure_logs() {
     if [ ! -d "logs" ] ; then
 	mkdir "logs"
@@ -171,6 +177,7 @@ case $op in
 	;;
 
     make-flight)
+        check_repos
         need_flight
 
         if [ $# -lt 1 ] ; then
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration
  2015-06-23  9:54 [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration Ian Campbell
@ 2015-06-23 10:00 ` Ian Campbell
  2015-06-25 10:36 ` Ian Jackson
  1 sibling, 0 replies; 3+ messages in thread
From: Ian Campbell @ 2015-06-23 10:00 UTC (permalink / raw)
  To: ian.jackson; +Cc: Dario.Faggioli, xen-devel

On Tue, 2015-06-23 at 10:54 +0100, Ian Campbell wrote:

Sorry for this, I hit "v, CR, 2" instead of "v, 2, CR" and apparently
didn't get to Ctrl-C quick enough.

This is the same as v2 which followed shortly after.

Ian.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration
  2015-06-23  9:54 [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration Ian Campbell
  2015-06-23 10:00 ` Ian Campbell
@ 2015-06-25 10:36 ` Ian Jackson
  1 sibling, 0 replies; 3+ messages in thread
From: Ian Jackson @ 2015-06-25 10:36 UTC (permalink / raw)
  To: Ian Campbell; +Cc: Dario.Faggioli, xen-devel

Ian Campbell writes ("[PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration"):
> By providing an explicit fetch method in cri-getconfig which checks
> things.
> 
> Without this then anything which uses cr-daily-branch produces the
> rather cryptic:
> 
>     + test -f daily.xsettings
>     ++ ./ap-print-url xen-unstable
>     with-lock-ex ./ap-print-url: /lock: Permission denied
>     + treeurl=
>     FAILED rc=255
> 
> Which has caught out one or two people using standalone mode.

Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-06-25 10:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-23  9:54 [PATCH OSSTEST v] Add some sanity checks for presence of Repos configuration Ian Campbell
2015-06-23 10:00 ` Ian Campbell
2015-06-25 10:36 ` Ian Jackson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).