5 ms·
I call mine make.sh. Now get off my lawn!
by redis_mlc 6y ago
I call mine make.sh.
Now get off my lawn!
- monkeybutton 6y agoHey! I started with C projects and make scripts and I long for the simplicity of those days! Obtuse web front ends, bunches of build server pools segregated by random capabilities, job queues clogged by competing developer teams and on and on is no fun.
- saurik 6y agoI wouldn't want something called "make.sh" to install tooling on the computer, though, and that is an important step of CI stuff.
- aprdm 6y agoRun it in a docker container so that it does the same in your computer and in the CI worker. make prepare make build make test make release Working the same waylocally and in jenkins makes things very easy. What it does is up to the team but make prepare usually pulls some docker image and install dependencies, make build builds something inside the docker image, make test runs test inside it and make release publishes the docker img
- laumars 6y agoOr use a CI/CD tool that natively supports Docker, like Concourse. Added bonus is that pipelines are defined in YAML rather than web GUI so you can version control the pipelines themselves and not just any build or test suites.
- aprdm 6y agoJenkins pipelines are written in Groovy and you do not need to use the web ui, everything is exposed via its API (i.e: new job creation). I have heard good things about Concourse, want to give it a try in the future!
- laumars 6y ago> Jenkins pipelines are written in Groovy and you do not need to use the web ui, everything is exposed via its API (i.e: new job creation). There's several ways you can codify Jenkins pipelines, Groovy being just one of them. But ultimately it's secondary to the main design of Jenkins. I'm not taking anything away from Jenkins as a solution - it has been invaluable over the years. But the way we write, test and deploy software has changed since Jenkins rose in popularity and as such we need to rely on different workflows that utilise different tooling. While Jenkins can be used in that way, I'd sooner use something which was primarily designed to be configured via code and used docker by default rather than something that requires enforcement to follow those best practices. That doesn't necessarily mean Concourse, there's Travis, Circle CI, AWS CodeBuild and a bunch of others that all default to that kind of workflow too, but it does mean I'm unlikely to ever advocate Jenkins again in future jobs.
- aprdm 6y agoWhile you’re not wrong I do use jenkins inside docker and use ansible to configure it, it is a bit different than other more modern tools but works fine. I have yet to see other tools be as flexible (perforce , git, legacy tools, docker, 100s of workers across datacenters etc.)
- laumars 6y agoI’m yet to see a CI/CD tool that can’t do all of that. What you’re describing there is the bare minimum I’d expect any CI/CD solution to do. I guess there might be some hobby platforms for indie devs but they’re not really the use case we are discussing when talking about Jenkins and Concourse.
- XorNot 6y agoI've bounced off concourse several times now. The promise is great, but the setup is absurdly complex and at the end I'm stuck with CI in Docker containers (I usually want 1 or more VMs)
- 6y ago
- redis_mlc 6y agoI think you missed the plot here. make.sh is instead of Docker, CI workers, fancy stuff, etc. :) It's for developers who care more about results than resume-padding.