Clojurians
#clojure-uk
<
2018-06-29
>

This page is not created by, affiliated with, or supported by Slack Technologies, Inc.

thomas07:06:42

mogge :smirk_cat:

guy08:06:26

morning!

alex.lynham09:06:15

wow busy for a friday!

thomas10:06:11

@alex.lynham maybe we are all working from 'home'... and thus have time to chat :wink:

peterwestmacott10:06:27

morning from home!

yogidevbear13:06:17

Morning (also from home)

yogidevbear13:06:37

How is Friday treating everyone today?

dominicm13:06:52

I made cookies, for breakfast.

guy13:06:58

Feels like my brain is being slowly squished by a vice

guy13:06:02

but otherwise pretty good

agile_geek13:06:06

That’s fine then…not like you need it anyway! :smiling_imp:

guy15:06:45

very true :sob:

alex.lynham14:06:49

started yesterday with "surely this build doesn't need to be this complex" and now a day later who knows

alex.lynham14:06:02

for not much clear reason

alex.lynham14:06:40

Gitlab CI < Travis

dominicm14:06:00

o rly? I've heard much to the opposite, please tell me more.

alex.lynham08:06:07

You can't interactively debug, it runs as root by default, their built in services (read dbs) don't work as well as the travis ones, it's impossible to get a complicated build working without causing a mess for other team members somewhere and imo their notification model is worse... That's just off the top of my head mind you

dominicm08:06:12

Interesting.

alex.lynham11:06:57

yeah, the interactive builds is the biggest one b/c remote debugging is huge in terms of iterating a change to the build and then just taking the commands and reifying them into the travisfile imo

mccraigmccraig14:06:58

throwing a third carcass into the cauldron, we're using codefresh for our CI - it's pretty straightforward docker composition, works nicely

dominicm14:06:46

@mccraigmccraig also tell me more :slightly_smiling_face: do you like docker? it seems gross :smile:

mccraigmccraig14:06:44

it probably depends on what you are using them for - containers are great for deployment and probably less great for development. we only use them for deployment

dominicm14:06:23

I'd heard a lot of bad things about them for deployment, particularly around data loss.

mccraigmccraig14:06:30

that doesn't make much sense to me... you don't store data in a container - it's just a way of packaging code and dependencies and isolating them from other containers

mccraigmccraig14:06:13

containers certainly make it easy for dc/os or k8s to deploy application components in a cluster, and in the codefresh case make it easy to deploy a fresh cluster of e.g. database instance and client for every CI run

dominicm14:06:36

My experience with docker for dev particularly is that there's always some bug that makes it not work. Right now I have to mount cgroups manually before it will work, because reasons. chroot always works however, not totally against the concept, just the common implementation. I had hoped rkt would improve things.

mccraigmccraig14:06:24

huh, i've never had that problem (mounting cgroups manually) and i've used docker and other container impls extensively on two flavours of linux and macos... there certainly used to be bugs which got in the way (being unable to set sysctls was a problem for me for a while, but you can do it now)

mccraigmccraig14:06:06

that said, i've never really tried to use it for dev - the closest i come to that is the landing-pad environment on our dc/os cluster uses docker to run a service console

dominicm14:06:58

When using LXC without cgmanager, /sys/fs/cgroup/systemd is needed. And I don't need cgmanager otherwise. Particularly as cgmanager is deprecated...

dominicm14:06:44

One time I lost xxxs of GBs to docker because it lost track of volumes, and it had no idea about them. Of course the storage format didn't let me distinguish important vs unimportant, so rm -rf all of them!

mccraigmccraig14:06:57

ahh... generally you should regard docker managed volumes as ephemeral - mount from the host/cluster/network filesystem for persistent stuff

mccraigmccraig14:06:28

docker volumes would indeed be crap for data-storage

dominicm14:06:18

Anyway, I've digressed into my vendetta against docker :smile:. What does codefresh do well?

mccraigmccraig15:06:14

just basic CI stuff: hooks in to github/bitbucket, runs a build (in a container, you can mount persistent filesystems for your .m2 or whatever), runs a docker composition for running tests (in our case, a fresh cassandra container and our app container), packages successful builds to a docker repo, reporting through the webui, and alerting on failures etc

dominicm15:06:46

docker builds docker? :smile:

mccraigmccraig15:06:20

i like docker - it's great for packaging and isolation, and it's pleasingly unixy... definitely use mounts for persistent things you want to find again though :grimacing:

cfeckardt15:06:32

@dominicm have you seen docker/dind? - docker inside docker

jasonbell19:06:54

Evening - Now I've mentioned it on Twitter I wanted to mention it here too. Today was my final day at Mastodon C, after three years it's time for some new challenges. @otfrom can still call me all the names under the sun here from now on :slightly_smiling_face: