Factor out 'git fetch' into a separate goal.
authorRichard W.M. Jones <rjones@redhat.com>
Mon, 7 Oct 2013 12:52:18 +0000 (13:52 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Mon, 7 Oct 2013 12:52:18 +0000 (13:52 +0100)
libguestfs_upstream.ml

index 69928da..7e32e53 100644 (file)
@@ -132,8 +132,9 @@ and tarball_created version =
   let filename = sprintf "%s/tarballs/%s" buildtmp version.tarball in
   target (file_exists filename);
 
+  require (repo_up_to_date version.branch);
+
   let repodir = sprintf "%s/repos/%s-%s" buildtmp package version.branch in
-  require (directory_exists repodir);
 
   sh "
     cp -a %s libguestfs
@@ -166,8 +167,9 @@ and commit_tested branch commit =
   target (memory_exists key);
   onrun (fun () -> memory_set key "1");
 
+  require (repo_up_to_date branch);
+
   let repodir = sprintf "%s/repos/%s-%s" buildtmp package branch in
-  require (directory_exists repodir);
 
   sh "
     cp -a %s libguestfs
@@ -186,11 +188,14 @@ and commit_tested branch commit =
     (quote (libguestfs_localconfigure `Git))
     (quote libguestfs_localenv)
 
+and repo_up_to_date branch =
+  git_force branch
+
 let () =
   (* Add a periodic job to check for new git commits and test them. *)
   every libguestfs_query_mins minutes ~name:"new libguestfs commit" (
     fun () ->
-      git_force "master";
+      require (repo_up_to_date "master");
       let commit = git_latest_commit "master" in
       require (commit_tested "master" commit);
   );
@@ -198,7 +203,7 @@ let () =
   (* Periodic job to build new tarballs. *)
   every libguestfs_query_mins minutes ~name:"new libguestfs version" (
     fun () ->
-      git_force "master";
+      require (repo_up_to_date "master");
       let version = git_latest_version "master" in
       require (website_updated version)
   )