Need advice about which tool to choose?Ask the StackShare community!

Ansible

12K
9.3K
+ 1
1.3K
Jenkins

36.2K
28.9K
+ 1
2.2K
Add tool

Ansible vs Jenkins: What are the differences?

Ansible is a powerful tool for automation to the provision of the target environment and to then deploy the application. It helps you with configuration management, application deployment, task automation, and also IT orchestration. It can run tasks in a sequence and create a chain of events happening on different servers or devices. Jenkins is a popular tool for IT automation and used for Continuous Integration/Continuous Delivery (CI/CD) to provision the target environment. A must use if the machine environment and deployment process are straightforward. You can add a custom script that will deploy as the final build step.

Decisions about Ansible and Jenkins
Stephen Badger | Vital Beats
Senior DevOps Engineer at Vital Beats | 2 upvotes 路 38.7K views

Within our deployment pipeline, we have a need to deploy to multiple customer environments, and manage secrets specifically in a way that integrates well with AWS, Kubernetes Secrets, Terraform and our pipelines ourselves.

Jenkins offered us the ability to choose one of a number of credentials/secrets management approaches, and models secrets as a more dynamic concept that GitHub Actions provided.

Additionally, we are operating Jenkins within our development Kubernetes cluster as a kind of system-wide orchestrator, allowing us to use Kubernetes pods as build agents, avoiding the ongoing direct costs associated with GitHub Actions minutes / per-user pricing. Obviously as a consequence we take on the indirect costs of maintain Jenkins itself, patching it, upgrading etc. However our experience with managing Jenkins via Kubernetes and declarative Jenkins configuration has led us to believe that this cost is small, particularly as the majority of actual building and testing is handled inside docker containers and Kubernetes, alleviating the need for less supported plugins that may make Jenkins administration more difficult.

See more

Jenkins is a pretty flexible, complete tool. Especially I love the possibility to configure jobs as a code with Jenkins pipelines.

CircleCI is well suited for small projects where the main task is to run continuous integration as quickly as possible. Travis CI is recommended primarily for open-source projects that need to be tested in different environments.

And for something a bit larger I prefer to use Jenkins because it is possible to make serious system configuration thereby different plugins. In Jenkins, I can change almost anything. But if you want to start the CI chain as soon as possible, Jenkins may not be the right choice.

See more
Pros of Ansible
Pros of Jenkins
  • 272
    Agentless
  • 203
    Great configuration
  • 191
    Simple
  • 172
    Powerful
  • 149
    Easy to learn
  • 66
    Flexible
  • 54
    Doesn't get in the way of getting s--- done
  • 33
    Makes sense
  • 29
    Super efficient and flexible
  • 27
    Powerful
  • 11
    Dynamic Inventory
  • 8
    Backed by Red Hat
  • 7
    Works with AWS
  • 6
    Cloud Oriented
  • 6
    Easy to maintain
  • 4
    Procedural or declarative, or both
  • 4
    Simple and powerful
  • 4
    Easy
  • 4
    Simple
  • 4
    Because SSH
  • 4
    Multi language
  • 3
    Consistency
  • 3
    Vagrant provisioner
  • 2
    Masterless
  • 2
    Merge hash to get final configuration similar to hiera
  • 2
    Fast as hell
  • 2
    Well-documented
  • 2
    Debugging is simple
  • 1
    Work on windows, but difficult to manage
  • 520
    Hosted internally
  • 463
    Free open source
  • 313
    Great to build, deploy or launch anything async
  • 243
    Tons of integrations
  • 208
    Rich set of plugins with good documentation
  • 108
    Has support for build pipelines
  • 71
    Open source and tons of integrations
  • 63
    Easy setup
  • 61
    It is open-source
  • 54
    Workflow plugin
  • 11
    Configuration as code
  • 10
    Very powerful tool
  • 9
    Many Plugins
  • 8
    Git and Maven integration is better
  • 8
    Great flexibility
  • 6
    Continuous Integration
  • 6
    Slack Integration (plugin)
  • 6
    Github integration
  • 5
    Easy customisation
  • 5
    Self-hosted GitLab Integration (plugin)
  • 4
    100% free and open source
  • 4
    Docker support
  • 3
    Excellent docker integration
  • 3
    Fast builds
  • 3
    Platform idnependency
  • 2
    Pipeline API
  • 2
    Customizable
  • 2
    Can be run as a Docker container
  • 2
    It`w worked
  • 2
    Hosted Externally
  • 2
    AWS Integration
  • 2
    JOBDSL
  • 2
    It's Everywhere
  • 1
    NodeJS Support
  • 1
    PHP Support
  • 1
    Ruby/Rails Support
  • 1
    Universal controller
  • 1
    Easily extendable with seamless integration
  • 1
    Build PR Branch Only

Sign up to add or upvote prosMake informed product decisions

Cons of Ansible
Cons of Jenkins
  • 5
    Hard to install
  • 4
    Dangerous
  • 3
    Bloated
  • 3
    Backward compatibility
  • 2
    Doesn't Run on Windows
  • 2
    No immutable infrastructure
  • 12
    Workarounds needed for basic requirements
  • 7
    Groovy with cumbersome syntax
  • 6
    Plugins compatibility issues
  • 6
    Limited abilities with declarative pipelines
  • 5
    Lack of support
  • 4
    No YAML syntax
  • 2
    Too tied to plugins versions

Sign up to add or upvote consMake informed product decisions

What is Ansible?

Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. Ansible鈥檚 goals are foremost those of simplicity and maximum ease of use.

What is Jenkins?

In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Ansible?
What companies use Jenkins?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Ansible?
What tools integrate with Jenkins?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

GitJenkinsGroovy+4
3
1569
PythonDockerAmazon S3+14
11
1883
Dec 4 2019 at 8:01PM
https://img.stackshare.io/stack/519120/default_d8fbac59cb4c75cc8da7062d0dc1d02daa76fa62.png logo

Pinterest

JenkinsKubernetesTensorFlow+4
5
2795
GitHubPythonGit+22
17
13031
GitHubGitGoogle Analytics+30
25
14355
What are some alternatives to Ansible and Jenkins?
Puppet Labs
Puppet is an automated administrative engine for your Linux, Unix, and Windows systems and performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification.
Chef
Chef enables you to manage and scale cloud infrastructure with no downtime or interruptions. Freely move applications and configurations from one cloud to another. Chef is integrated with all major cloud providers including Amazon EC2, VMWare, IBM Smartcloud, Rackspace, OpenStack, Windows Azure, HP Cloud, Google Compute Engine, Joyent Cloud and others.
Salt
Salt is a new approach to infrastructure management. Easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds. Salt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more.
Terraform
With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.
AWS CloudFormation
You can use AWS CloudFormation鈥檚 sample templates or create your own templates to describe the AWS resources, and any associated dependencies or runtime parameters, required to run your application. You don鈥檛 need to figure out the order in which AWS services need to be provisioned or the subtleties of how to make those dependencies work.
See all alternatives
Interest over time
How much does Ansible cost?
How much does Jenkins cost?
Pricing unavailable