Travis vs Circle vs Jenkins

IPC 2017

building stuff

Photo by Michael Himbeault on Flickr

Copyright Sybren Stuvel and licensed for reuse under this Creative Commons License.

http://www.l2jserver.com/forum/viewtopic.php?t=31413

http://www.l2jserver.com/forum/viewtopic.php?t=31413

http://www.l2jserver.com/forum/viewtopic.php?t=31413

http://www.l2jserver.com/forum/viewtopic.php?t=31413

http://www.l2jserver.com/forum/viewtopic.php?t=31413

BE BETTER

Automation

CONTINUOUS INTEGRATION

CONTINUOUS DELIVERY

CONTINUOUS DEPLOYMENT

Any questions ?

Miro Svrtan

trainer / senior developer / contractor

 

ZgPHP organizer

 

@msvrtan

Travis CI

Jenkins CI

Circle CI

Which one TO pick?

We don't wanna do ops

WE NEED TO KEEP IT HOME

Jenkins

but...

enterprise on-premise 

jump on quickly

Setup Circle ci

Add circle.yml

Circle CI

pricing

  • private projects
    • 1 container free
    • $50 per container/month
  • public projects
    • 4 containers free
    • $50 per container/month

MULTI VERSION TESTING

We have our own orm

Setup TRAVIS ci

.travis.yml

JOB page

Travis ci

pricing

  • private projects
    • 100 builds free
    • $69 for 1 concurent job
    • $129 for 2 concurent jobs
    • ...
  • public projects
    • 4 concurent jobs free

Travis ci

public vs private repos

  • separate web sites
  • waiting queue time on private < public

PARALLELIZE TESTS

CUSTOMIZABLE JOBS

PIPELINE

Docker

source code management support

Works with github?

Works with BITBUCKET?

Works with GITLAB?

Works with basic git repo?

Works with *anything* you can throw at it?

Quick feedback on critical + long tests

Quick feedback on critical+ long tests

TIME BASED (CRON)

Any questions on this part?

or 'Still no questions?'

Clean builds vs performance

Clean build

Dirty builds

Just continous delivery

- 1 click style

Just continous delivery

- slack style

Just continous delivery

- slack style

Continuos deployment

Debug build

Debug build

  • it's your server :)

Debug build

  • debug in beta (add it to .travis.yml where you want a break point)
  • add AWS S3 bucket for logs/artifacts

Debug build

  • enable ssh
  • access to logs/artifacts directly

saas warnings

saas - the good parts

self hosted - good parts

Thank you

Miro Svrtan

@msvrtan

questions?