(I probably posted the first message to the wrong group.) Magnus Therning <[email protected]> writes:
> I'm trying to find ways to make our CI builds a little faster. I've > managed to sneak in some Haskell code and use `stack` to build it. The > builds happen inside clean docker images (based on Debian Jessie). I've > pre-installed `stack` itself of course, and also run a `stack setup` to > ensure the compiler is pre-installed. So far so good. > > The other day our internet connection was flaky for a few hours, which > reminded me that our builds rely on stackage.org and hackage.org being > reachable while building. It would be nice to remove that requirement. I > guess some sort of caching would be the way to go, but I'm not sure how > to go about it. > > Are there nice documents relating to this that google-fu was too weak to > find? > > What are the sophisticated Haskell shops using? After posing the same question for Clojure [1] I thought I'd attempt the same solution for stack too. That is, I'll tell the CI system to cache my `.stack-work` folder between builds. This doesn't seem to work tough. On every build stack still produces output indicating that it's downloading and building all the dependencies before building my code: ~~~ Linking /root/.stack/setup-exe-cache/x86_64-linux/tmp-setup-Simple-Cabal-1.22.5.0-ghc-7.10.3 ... extra-1.4.9: download ansi-terminal-0.6.2.3: download posix-realtime-0.0.0.4: download network-2.6.2.1: download posix-realtime-0.0.0.4: configure posix-realtime-0.0.0.4: build ansi-terminal-0.6.2.3: configure ansi-terminal-0.6.2.3: build extra-1.4.9: configure extra-1.4.9: build network-2.6.2.1: configure ansi-terminal-0.6.2.3: copy/register posix-realtime-0.0.0.4: copy/register ansi-wl-pprint-0.6.7.3: download ... more deps void-0.7.1: download void-0.7.1: configure void-0.7.1: build void-0.7.1: copy/register extensible-effects-1.11.0.4: download extensible-effects-1.11.0.4: configure extensible-effects-1.11.0.4: build extensible-effects-1.11.0.4: copy/register ... configure & building my code ~~~ Any pointers would be most welcome. [1]: http://stackoverflow.com/questions/37945677/getting-leiningen-to-cache-packages -- Magnus Therning OpenPGP: 0x927912051716CE39 email: [email protected] jabber: [email protected] twitter: magthe http://therning.org/magnus There's a big difference between making something easy to use and making it productive. — Adam Bosworth -- You received this message because you are subscribed to the Google Groups "haskell-stack" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/haskell-stack/87k2hgcfhk.fsf%40sobel.cipherstone.com. For more options, visit https://groups.google.com/d/optout.
signature.asc
Description: PGP signature
