<p>Both are excellent tools, but it depends on your use cases for which is better. I would highly recommend using the entire AWS Ci/Cd suite (CodeBuild/CodePipeline/CodeDeploy) to gain the full benefit of using your resources in AWS. Here are pros for both:</p>

<p><strong>Jenkins</strong></p>

<ul>
<li>Multitude of customizability plugins</li>
<li>Integration with all cloud providers (GCP, Azure, etc.)</li>
<li>Open sourced</li>
<li>Configuration as code through Jenkins Pipelines</li>
<li>Able to manage your own Jenkins Server (vs AWS which manages it for you)</li>
<li>Customizable GUI</li>
</ul>

<p><strong>AWS CI/CD</strong> </p>

<ul>
<li>No plugins (no dependency hell) </li>
<li>Trivial integration with IAM (for both users and infrastructure)</li>
<li>Easy integration with AWS Secrets Manager, KMS, and other secret management tools </li>
<li>AWS managed infrastructure </li>
<li>Infrastructure as code through CloudFormation</li>
<li>Scalable out of the box</li>
</ul>

<p>TLDR; Choose Jenkins if you want more control/configuration of your deployment infrastructure or you are integrating with many non-aws resources, otherwise, choose the AWS CI/CD suite for less overhead and better integration with AWS. </p>

CC BY-SA 4.0
2019-04-25T17:48:28.887Z
AWS is familiar to me, actually. And what do you mean about infrastructure as code? Defining and provisioning AWS resources of CI/CD pipeline in CloudFormation like Terraform?
Chachatonel Hashimotto
CC BY-SA 4.0
2019-04-25T17:54:41.980Z
Yep Cloudformation is similar to Terraform. You cloud replace Cloudformation with Terraform. Setting up and configuring a Jenkins server with Terraform is much more complicated than AWS CodeBuild/Deploy/Pipeline with Cloudformation/Terraform
Preston Martin
CC BY-SA 4.0
2019-04-25T19:01:20.080Z
I got it, it seems some results of Terraform-provider-Jenkins on google would have some issues yet.
Chachatonel Hashimotto
CC BY-SA 4.0
2019-04-25T19:05:15.103Z
How about Log or Error monitoring if I’m using the AWS Codepipeline. Maybe CloudWatch?
Chachatonel Hashimotto
CC BY-SA 4.0
2019-04-25T19:56:59.720Z
Yes you can also use Cloudwatch Metrics to track any errors or issues during/after a deployment. Sounds like you already have a good grasp of what you can do in AWS :)
Preston Martin
CC BY-SA 4.0
2019-04-25T20:09:21.217Z
Oh thank you haha:) I need to know more details. Thank you for your time so much 
Chachatonel Hashimotto
CC BY-SA 4.0
2019-04-25T16:04:20.067Z
2019-04-25T16:04:20.067Z
Preston Martin
<p>I know a good amount about Jenkins so I can give you specific information about that, but I know virtually nothing about AWS code deploy, that being said using my general AWS knowledge, there are a few things I think I can safely tell you to get started. </p>

<ol>
<li>Jenkins is open source however you can get hosted Jenkins if you prefer a managed solution. CodeDeploy on the other hand is purely managed so I don't believe you have the option for something such as on prem or any other self hosted solutions. </li>
<li>Part of what gives Jenkins it's incredible power is the massive community following and subsequent plugins that are continuously churned out for Jenkins. In comparison I assume the AWS marketplace may be rather limited as to it's offerings but I can't offer any official word on this.</li>
</ol>

<p>I hope that helps in some capacity.</p>

CC BY-SA 4.0
2019-04-17T22:13:13.397Z
2019-04-17T22:13:13.397Z
Travis
<p>I'm considering what is better and easier to use for CI/CD pipeline between Jenkins and AWS CodeDeploy.</p>

<p>e.g. Jenkins server request webhook to git repo(github), and deploy to EC2.</p>

<p>e.g. When push to git repo, deploy to EC2 go through codeDeploy.</p>

<p>Thank you for your help!!</p>

<amazon-web-services><jenkins-pipeline><cicd><aws-codedeploy>
what is better between Jenkins & AWS CodeDeploy for CI/CD
Chachatonel Hashimotto
# what is better between Jenkins & AWS CodeDeploy for CI/CD

(Asked by: username_0 on 2019-04-14)

I'm considering what is better and easier to use for CI/CD pipeline between Jenkins and AWS CodeDeploy.

e.g. Jenkins server request webhook to git repo(github), and deploy to EC2.

e.g. When push to git repo, deploy to EC2 go through codeDeploy.

Thank you for your help!!

**Tags:** amazon-web-services, jenkins-pipeline, cicd, aws-codedeploy


---

## 2 answers

### Answer by username_1 on 2019-04-25. Score: 2 | Accepted answer

Both are excellent tools, but it depends on your use cases for which is better. I would highly recommend using the entire AWS Ci/Cd suite (CodeBuild/CodePipeline/CodeDeploy) to gain the full benefit of using your resources in AWS. Here are pros for both:

**Jenkins**

* Multitude of customizability plugins
* Integration with all cloud providers (GCP, Azure, etc.)
* Open sourced
* Configuration as code through Jenkins Pipelines
* Able to manage your own Jenkins Server (vs AWS which manages it for you)
* Customizable GUI

**AWS CI/CD**

* No plugins (no dependency hell)
* Trivial integration with IAM (for both users and infrastructure)
* Easy integration with AWS Secrets Manager, KMS, and other secret management tools
* AWS managed infrastructure
* Infrastructure as code through CloudFormation
* Scalable out of the box

TLDR; Choose Jenkins if you want more control/configuration of your deployment infrastructure or you are integrating with many non-aws resources, otherwise, choose the AWS CI/CD suite for less overhead and better integration with AWS.

> **Comments:**
> **username_0**: AWS is familiar to me, actually. And what do you mean about infrastructure as code? Defining and provisioning AWS resources of CI/CD pipeline in CloudFormation like Terraform?  
> **username_1**: Yep Cloudformation is similar to Terraform. You cloud replace Cloudformation with Terraform. Setting up and configuring a Jenkins server with Terraform is much more complicated than AWS CodeBuild/Deploy/Pipeline with Cloudformation/Terraform  
> **username_0**: I got it, it seems some results of Terraform-provider-Jenkins on google would have some issues yet.  
> **username_0**: How about Log or Error monitoring if I’m using the AWS Codepipeline. Maybe CloudWatch?  
> **username_1**: Yes you can also use Cloudwatch Metrics to track any errors or issues during/after a deployment. Sounds like you already have a good grasp of what you can do in AWS :)  
> **username_0**: Oh thank you haha:) I need to know more details. Thank you for your time so much   

---

### Answer by username_2 on 2019-04-17. Score: 1

I know a good amount about Jenkins so I can give you specific information about that, but I know virtually nothing about AWS code deploy, that being said using my general AWS knowledge, there are a few things I think I can safely tell you to get started.

1. Jenkins is open source however you can get hosted Jenkins if you prefer a managed solution. CodeDeploy on the other hand is purely managed so I don't believe you have the option for something such as on prem or any other self hosted solutions.
2. Part of what gives Jenkins it's incredible power is the massive community following and subsequent plugins that are continuously churned out for Jenkins. In comparison I assume the AWS marketplace may be rather limited as to it's offerings but I can't offer any official word on this.

I hope that helps in some capacity.


---

