$30 off During Our Annual Pro Sale. View Details »

Nobody likes you Jenkins

Andy Gale
October 14, 2015

Nobody likes you Jenkins

Take the hassle out of CI by using online CI instead. Rid yourself of that high-maintenance chancer butler.

Andy Gale

October 14, 2015
Tweet

More Decks by Andy Gale

Other Decks in Technology

Transcript

  1. Nobody likes you Jenkins
    Andy Gale

    View Slide

  2. Andy Gale
    @techandygale on Twitter
    Bristol Rovers fan #UTG
    Bristol DevOps Organiser
    What do you do?
    Owner and DevOps Consultant at Hello Future

    View Slide

  3. Hello Future
    • @hellofutur3 on Twitter
    • DevOps, Continuous Delivery, Chef, Docker and
    cloud automation consultancy
    • Web application development
    • We now have availability for DevOps Consultancy
    if you’re after some
    What do we do?

    View Slide

  4. Nobody likes you Jenkins

    View Slide

  5. Butler sad face

    View Slide

  6. • We actually really like Jenkins at Hello Future
    • Use it loads
    • We advise our customers how to use it
    • We even do managed Jenkins hosting for our customers
    • And we’d be happy to set up and/or run a managed
    Jenkins for you
    Why do you hate Jenkins?
    I actually don’t

    View Slide

  7. Butler happy face
    *He looks very ill doesn’t he?

    View Slide

  8. • Jenkins is very flexible, plugins for everything
    • Jenkins is often used for anything task orientated
    • Jenkins is used for things that it probably
    shouldn’t be
    • Jenkins can be complicated to set up
    So what’s the big problem, Gale?

    View Slide

  9. Use Jenkins for what it’s designed for!

    View Slide

  10. What shouldn’t I use it for?
    Well that’s up to you but here are some alternatives

    View Slide

  11. Simple to set up Jenkins alternatives

    View Slide

  12. machine:
    php:
    version: 5.5.11
    Most let you just include a .yml file or similar and
    define your PHP version etc. This is obviously easier
    than setting up Jenkins. Unless you really hate YAML.
    Simple to set up Jenkins alternatives

    View Slide

  13. View Slide

  14. • Easy to set up, don’t need to deal with that high-maintenance
    butler
    • Don’t need to pay for hosting Jenkins or have it running on a
    box under someone’s desk
    • Can probably run smaller and open source projects for free
    • Automated deployments to many popular tools like Heroku,
    AWS Elastic Beanstalk & Code Deploy, Capistrano, custom
    scripts etc
    Simple to set up Jenkins alternatives
    Pros

    View Slide

  15. Simple to set up Jenkins alternatives
    • Can be inflexible
    • Need things like Docker support to be added rather than just
    installing it yourself and running a command as part of the or a
    post-build action
    • Limited SCM support for anything but Github (sometimes
    Bitbucket)
    • You may struggle to find one that combines supports for the
    various technologies that you use
    Cons

    View Slide

  16. I’m not a task runner

    View Slide

  17. You’re going to have a bad time

    View Slide

  18. A great tool for replacing SSH or Jenkins with a
    glorious easy to use interface

    View Slide

  19. • Allows you to create jobs to do on-demand as
    well as scheduled tasks
    • Can automatically discover nodes from Chef/
    Salt/AWS APIs (based on roles etc)
    • Prevent yourself from SSHing to servers and
    messing things up!

    View Slide

  20. • Self service jobs for developers, IT Operations and
    support staff
    • Agentless (uses SSH or winrm)
    • Has an API
    • Failure, in progress, pending and success statuses
    • You can run Rundeck jobs from Jenkins jobs (i.e.
    deploying after a successful build)

    View Slide

  21. View Slide

  22. View Slide

  23. Nodes filtering links
    1. Clicking the single node view icon filters the list down to just that node.
    2. Find nodes with this Tag (e,g just nodes with tagged "www").
    3. Find nodes with this Attribute name (e.g., any node with the "web:pid" attribute).
    4. Find nodes with this Attribute value (e.g., any node with attribute "web:state=RUNNING" ).

    View Slide

  24. Summary
    • Don’t hate on Jenkins, use it for what it’s good at
    • Maybe you don’t need to have a full Jenkins install,
    there are simple alternatives which you might
    eventually out grow but are good for startups
    • Consider running task in a task runner
    • Hello Future can help set this all up for you!

    View Slide