libguestfs: Use python3 for builds and the Python PIP package.
[goaljobs-goals.git] / libguestfs_upstream.ml
index 5b86e04..685c1b5 100644 (file)
@@ -38,6 +38,8 @@ let rec goal website_updated version =
 
   require (tarball_created version);
   require (tarball_tested version);
+  if version.is_stable then
+    require (tarball_signed version);
 
   (* Python sdists only generated for stable releases. *)
   if version.is_stable then (
@@ -62,7 +64,7 @@ and website_rsync_done version =
   sh "
     cd %s
     ./.rsync
-  " libguestfs_website_repo
+  " websites_repo
 
 (* Goal: Tarball added to repository and checked in. *)
 and website_checked_in version =
@@ -72,16 +74,24 @@ and website_checked_in version =
 
   require (tarball_created version);
   require (tarball_tested version);
+  if version.is_stable then
+    require (tarball_signed version);
 
   sh "
     cd %s
     cp %s/tarballs/%s %s
+    if %b; then cp %s/tarballs/%s.sig %s.sig; fi
     git add %s
+    cd %s
     git add *.txt *.html
+    cd %s
     git commit -m \"Version %s\"
-  " libguestfs_website_repo
+  " libguestfs_download_repo
     buildtmp version.tarball version.urlpath
+    version.is_stable buildtmp version.tarball version.urlpath
     version.urlpath
+    libguestfs_website_repo
+    websites_repo
     version.version
 
 (* Goal: website (local copy) has been built. *)
@@ -105,12 +115,22 @@ and website_built version =
 
     ./localconfigure
     make V=1
-    make maintainer-upload-website WEBSITEDIR=%s
+    make maintainer-upload-website WEBSITESDIR=%s
   " buildtmp version.tarball
     version.package_version
     (quote (libguestfs_localconfigure `Tarball))
     (quote (libguestfs_localenv (supermin version)))
-    (quote libguestfs_website_repo)
+    (quote websites_repo)
+
+(* Goal: for stable versions, the tarball must be signed. *)
+and tarball_signed version =
+  let tar_file = sprintf "%s/tarballs/%s" buildtmp version.tarball in
+  let sig_file = tar_file ^ ".sig" in
+  target (file_exists sig_file);
+
+  require (tarball_created version);
+
+  sh "sign-tarball %s" tar_file
 
 (* Goal: the tarball has passed the required set of tests before
  * a release is allowed.
@@ -132,7 +152,13 @@ and tarball_tested version =
 
     ./localconfigure
     make V=1
-    make check-release
+    if ! make check-release; then
+      for f in `find -name test-suite.log | xargs grep -l ^FAIL:`; do
+        echo \"*** $f ***\"
+        cat $f
+      done
+      exit 1
+    fi
   " buildtmp version.tarball
     version.package_version
     (quote (libguestfs_localconfigure `Tarball))
@@ -212,7 +238,13 @@ and commit_tested branch commit =
 
     ./localconfigure
     make V=1
-    make check-release
+    if ! make check-release; then
+      for f in `find -name test-suite.log | xargs grep -l ^FAIL:`; do
+        echo \"*** $f ***\"
+        cat $f
+      done
+      exit 1
+    fi
   " repodir
     commit
     (quote (libguestfs_localconfigure `Git))
@@ -235,7 +267,7 @@ and python_website_checked_in version =
     cp %s/tarballs/%s %s
     git add %s
     git commit -m \"Python sdist version %s\"
-  " libguestfs_website_repo
+  " libguestfs_download_repo
     buildtmp version.python_tarball version.python_urlpath
     version.python_urlpath
     version.version