These are chat archives for got-lambda/expression

28th
Dec 2016
Jean-Louis Giordano
@Jell
Dec 28 2016 09:32
so I think I'm slowly catching the docker fever. It's quite nice when you have to deal with global deps in your projects since you can setup those in a container without having to hack around stuff (like say different haskell versions)
Magnus Therning
@magthe
Dec 28 2016 09:48
yupp, it's rather nice for that sort of situations
even though when it comes to haskell I belive stack would give you what you describe above :)
Jean-Louis Giordano
@Jell
Dec 28 2016 09:49
ah :) I should really try stack at some point, I'm so outdated with my cabal sandboxes
but what about upgrading stack then? :p
Magnus Therning
@magthe
Dec 28 2016 09:50
:) yes... though AFAIK cabal is moving in the direction of stack in some respects
and you can use stack to build docker images, I think (I've never tried it)
you use stack to upgrade stack, of course! ;)
I'm currently trying to have only stack installed, i.e. no system ghc, no system libs, no system haskell nothing!
Jean-Louis Giordano
@Jell
Dec 28 2016 09:52
cool! I will try to move towards that direction as well
Magnus Therning
@magthe
Dec 28 2016 09:52
(except for a few tools implemented in haskell to get my emacs to work)
Jean-Louis Giordano
@Jell
Dec 28 2016 09:52
except mac os is still a PITA at this point
(looking forward to a better implementation of Docker for Mac)
Magnus Therning
@magthe
Dec 28 2016 09:53
I can recommend Linux ;)
Jean-Louis Giordano
@Jell
Dec 28 2016 09:53
I'm stuck with boot2docker in a VM for now because Docker for Mac's filesystem is too slow
Magnus Therning
@magthe
Dec 28 2016 09:53
nicer UI too! :p
Jean-Louis Giordano
@Jell
Dec 28 2016 09:53
yeah I would switch to linux in a bind, but I'm setting up a dev env and I want our designers to be able to use mac
(kind of jerk move to force them to linux :p)
Magnus Therning
@magthe
Dec 28 2016 09:54
haha, yes, I suppose ;)
Jean-Louis Giordano
@Jell
Dec 28 2016 09:54
so I'm pushing docker on mac for now :p
Magnus Therning
@magthe
Dec 28 2016 09:54
so are you exporting your dev env so the designers can replicate it?
and using docker for that purpose?
Jean-Louis Giordano
@Jell
Dec 28 2016 09:55
working on it at least :p for now we do that using vagrant
but vagrant is quite clunky, heavy and painful
Magnus Therning
@magthe
Dec 28 2016 09:55
vagrant with VMs?
Jean-Louis Giordano
@Jell
Dec 28 2016 09:55
yes
Magnus Therning
@magthe
Dec 28 2016 09:55
vbox, vmware, xen?
Jean-Louis Giordano
@Jell
Dec 28 2016 09:55
virtualbox
we have a base dev image
that we setup using packer
Magnus Therning
@magthe
Dec 28 2016 09:56
ah, ok, that is a nice route to go though
Jean-Louis Giordano
@Jell
Dec 28 2016 09:56
yeah it's ok, but it's clunky
devils is in the details
Magnus Therning
@magthe
Dec 28 2016 09:56
and docker might be an easier way to achieve the same basic idea
Jean-Louis Giordano
@Jell
Dec 28 2016 09:56
like forwarding file-system events for auto-testing
Magnus Therning
@magthe
Dec 28 2016 09:57
s/easier/lighter at least
Jean-Louis Giordano
@Jell
Dec 28 2016 09:57
exactly
no even easier because it's trivial to use existing images from 3rd parties
like postgres & redis
also, with docker-compose it's easier to setup an integration test with all our projects combined
and my docker configs are less than 1/5 of the vagrant configs
I've been running on a docker dev env for the whole week, feels great :)
set that up at work with the help of @suvash
Magnus Therning
@magthe
Dec 28 2016 10:03
cool
I've so far not had to look into any sort of orchestration, but I'm kind of looking for use cases of it so I have an excuse :)
Jean-Louis Giordano
@Jell
Dec 28 2016 10:07
:) our evil plan with @suvash is to start with using docker for dev then slowly move to using containers for deploys and new projects as well
(depending on how the whole thing feels)
once we have a containers infrastructure in prod, we're one step closer to putting haskell in production
:p
Magnus Therning
@magthe
Dec 28 2016 10:08
yes, I can see that being a nice setup... in general, building containers in containers, then pass the built containers to test, finally pass them to deployment, nicely automatable
Jean-Louis Giordano
@Jell
Dec 28 2016 10:11
yeah that's the plan. Docker dev setup is MVP for containers, then I think replacing Travis CI with a custom CI (because we're starting to feel the limitations of travis as well and our travis config file is bigger than our Dockerfiles :p ), then we can start figuring out how to deploy those containers with zero downtime and stuff
I'm pretty excited :)
Magnus Therning
@magthe
Dec 28 2016 10:18
I'd be excited too :)
I can recommend Gitlab CI, though I suspect the config for it would be rather large too
Jean-Louis Giordano
@Jell
Dec 28 2016 10:20
@suvash was looking at buildkite https://buildkite.com/
looks somewhat similar?
Magnus Therning
@magthe
Dec 28 2016 10:24
nope
Jean-Louis Giordano
@Jell
Dec 28 2016 10:24
:p ok then
will have a look :)
Magnus Therning
@magthe
Dec 28 2016 10:25
the main questions I have when looking at things like buildkite are: what format are my pipelines in? where do they live? are they version controlled?
Suvash Thapaliya
@suvash
Dec 28 2016 10:25
GitLab CI is nice, but (I'm assuming) it works better when using GitLab itself. Sorta like Travis built right into GitLab.
Magnus Therning
@magthe
Dec 28 2016 10:26
I have a really hard time seeing the point of keeping the CI control in graphical format and outside of version control
Suvash Thapaliya
@suvash
Dec 28 2016 10:26
:+1:
Magnus Therning
@magthe
Dec 28 2016 10:26
@suvash, yupp, that's true... so if you are tied to github, then gitlabci isn't a good fit
Suvash Thapaliya
@suvash
Dec 28 2016 10:26
I don't understand why people put up with Jenkins etc.
Magnus Therning
@magthe
Dec 28 2016 10:28
@suvash, true that! and I don't understand why buildkite doesn't provide the answers on the landing page
Suvash Thapaliya
@suvash
Dec 28 2016 10:28
It's better to think of Buildkite as Bash execution service, that you can use to build rather complex pipelines. You will need to run your own build worker machines though, which is good because you can scale on your own.
and not have to rely on limited number of 3rd party workers.
Magnus Therning
@magthe
Dec 28 2016 10:29
yes
same with GitlabCI, I guess buildkite does have scalable runners as well, e.g. via Amazon?
Suvash Thapaliya
@suvash
Dec 28 2016 10:30
yeah. and configurable via API.
I was looking into GitLab CI, but we're locked to Github atm.
otherwise looks rather neat.
I have some thoughts on this, we should chat at the next meetup :D
Magnus Therning
@magthe
Dec 28 2016 10:35
:)
we have such limited needs at the moment that a local gitlab instance and two ci runners (one in docker, one on the target hardware for a few tests) is enough
gitlab itself runs in docker too
Suvash Thapaliya
@suvash
Dec 28 2016 10:45
:+1:
man, that git push is gonna be super fast. :clap: