[pkg-haskell-tools] 05/05: make-all: Create a temporary repository

Joachim Breitner nomeata at moszumanska.debian.org
Fri Aug 14 09:03:21 UTC 2015


This is an automated email from the git hooks/post-receive script.

nomeata pushed a commit to branch master
in repository pkg-haskell-tools.

commit e24417951ca7e35d782822466cee661552df4006
Author: Joachim Breitner <mail at joachim-breitner.de>
Date:   Fri Aug 14 11:02:37 2015 +0200

    make-all: Create a temporary repository
    
    instad of relying on --extra-repository
---
 src/make-all.hs | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/src/make-all.hs b/src/make-all.hs
index 1e57bce..fa232a3 100644
--- a/src/make-all.hs
+++ b/src/make-all.hs
@@ -8,6 +8,7 @@ import Data.List.Split
 import Data.Maybe
 import Control.Monad
 import Text.Read
+import System.Directory (createDirectory, copyFile)
 import qualified System.Directory
 import System.Directory.Extra (listFiles)
 import System.Exit
@@ -385,9 +386,24 @@ shakeMain conf@(Conf {..}) = do
             let fixup = tmpdir </> "fixup.sh"
             liftIO $ writeFile fixup  $ fixupScript localDepPkgs
 
+            -- Create a dummy repository
+            let repoDir = tmpdir </> "repo"
+            liftIO $ createDirectory repoDir
+            forM_ localDebs $ \p -> liftIO $ copyFile ("lab" </> p) (repoDir </> p)
+            unit $ cmd (Cwd repoDir) (FileStdout (repoDir </> "Packages"))
+                ["dpkg-scanpackages", "."]
+
             -- Run sbuild
             Exit c <- cmd (Cwd targetDir) (EchoStdout False)
-                ["sbuild", "-c", schrootName,"-A","--no-apt-update","--dist", distribution, "--chroot-setup-commands=bash "++fixup, dsc] ["--extra-package="++d | d <- localDebs ]
+                ["sbuild"
+                , "-c", schrootName
+                , "-A"
+                , "--no-apt-update"
+                , "--dist", distribution
+                , "--chroot-setup-commands=bash " ++ fixup
+                , "--extra-repository=deb [trusted=yes] file://" ++ repoDir ++ " ./"
+                , dsc
+                ]
             if (c == ExitSuccess)
             then do
                 -- Add the sources to the changes file. We do not simply pass

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-haskell/pkg-haskell-tools.git



More information about the Pkg-haskell-commits mailing list