All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH OSSTEST v2] Add some sanity checks for presence of Repos configuration
@ 2015-06-23  9:54 Ian Campbell
  2015-06-23  9:56 ` Dario Faggioli
  0 siblings, 1 reply; 2+ 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] 2+ messages in thread

* Re: [PATCH OSSTEST v2] Add some sanity checks for presence of Repos configuration
  2015-06-23  9:54 [PATCH OSSTEST v2] Add some sanity checks for presence of Repos configuration Ian Campbell
@ 2015-06-23  9:56 ` Dario Faggioli
  0 siblings, 0 replies; 2+ messages in thread
From: Dario Faggioli @ 2015-06-23  9:56 UTC (permalink / raw)
  To: Ian Campbell; +Cc: ian.jackson, xen-devel


[-- Attachment #1.1: Type: text/plain, Size: 911 bytes --]

On Tue, 2015-06-23 at 10:54 +0100, Ian Campbell wrote:
> 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
>
Reviewed-and-Tested-by: Dario Faggioli <dario.faggioli@citrix.com>

Dario

-- 
<<This happens because I choose it to happen!>> (Raistlin Majere)
-----------------------------------------------------------------
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)

[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

[-- Attachment #2: Type: text/plain, Size: 126 bytes --]

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

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

end of thread, other threads:[~2015-06-23  9:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-23  9:54 [PATCH OSSTEST v2] Add some sanity checks for presence of Repos configuration Ian Campbell
2015-06-23  9:56 ` Dario Faggioli

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.