All Projects → aws-samples → aws-codecommit-devops-model

aws-samples / aws-codecommit-devops-model

Licence: MIT-0 license
AWS CodeCommit Devops Model -- a best practice to build your devops workflow based on AWS CodeCommit.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to aws-codecommit-devops-model

amazon-eventbridge-cdk-audit-service-sample
Sample of a decoupled audit service using Amazon EventBridge and AWS Step Functions. Provisioned with AWS CDK.
Stars: ✭ 25 (-16.67%)
Mutual labels:  cicd, aws-cdk
MCW-OSS-PaaS-and-DevOps
MCW OSS PaaS and DevOps
Stars: ✭ 49 (+63.33%)
Mutual labels:  cicd
Github Pages Deploy Action
Automatically deploy your project to GitHub Pages using GitHub Actions. This action can be configured to push your production-ready code into any branch you'd like.
Stars: ✭ 2,507 (+8256.67%)
Mutual labels:  cicd
terraform-aws-s3-bucket
Terraform module that creates an S3 bucket with an optional IAM user for external CI/CD systems
Stars: ✭ 138 (+360%)
Mutual labels:  cicd
Cml
♾️ CML - Continuous Machine Learning | CI/CD for ML
Stars: ✭ 2,843 (+9376.67%)
Mutual labels:  cicd
datajob
Build and deploy a serverless data pipeline on AWS with no effort.
Stars: ✭ 101 (+236.67%)
Mutual labels:  aws-cdk
Argo Cd
Declarative continuous deployment for Kubernetes.
Stars: ✭ 7,887 (+26190%)
Mutual labels:  cicd
actions
Our Library of GitHub Actions
Stars: ✭ 49 (+63.33%)
Mutual labels:  cicd
aws-ecs-devops-using-aws-cdk
This repository provides a general DevOps practices such MSA, IaC, CICD and Monitoring. AWS various services are used to provide DevOps best practices.
Stars: ✭ 110 (+266.67%)
Mutual labels:  cicd
http-api-aws-fargate-cdk
Build HTTP API Based Services using Amazon API Gateway, AWS PrivateLink, AWS Fargate and AWS CDK
Stars: ✭ 5 (-83.33%)
Mutual labels:  aws-cdk
vilicus
Vilicus is an open source tool that orchestrates security scans of container images(docker/oci) and centralizes all results into a database for further analysis and metrics.
Stars: ✭ 82 (+173.33%)
Mutual labels:  cicd
cdk-chalice
AWS CDK construct for AWS Chalice
Stars: ✭ 41 (+36.67%)
Mutual labels:  aws-cdk
data-lake-as-code
Data Lake as Code, featuring ChEMBL and OpenTargets
Stars: ✭ 133 (+343.33%)
Mutual labels:  aws-cdk
Javascript Testing Best Practices
📗🌐 🚢 Comprehensive and exhaustive JavaScript & Node.js testing best practices (August 2021)
Stars: ✭ 13,976 (+46486.67%)
Mutual labels:  cicd
setup-sam
Action to set up AWS SAM CLI and add it to the PATH
Stars: ✭ 107 (+256.67%)
Mutual labels:  cicd
Spug
开源运维平台:面向中小型企业设计的轻量级无Agent的自动化运维平台,整合了主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、监控、报警等一系列功能。
Stars: ✭ 6,810 (+22600%)
Mutual labels:  cicd
bodywork-ml-pipeline-project
Deployment template for a continuous training pipeline.
Stars: ✭ 22 (-26.67%)
Mutual labels:  cicd
kraken
Kraken CI is a continuous integration and testing system.
Stars: ✭ 87 (+190%)
Mutual labels:  cicd
sfmc-devtools
Fast-track your developers and devops engineers by allowing them to programmatically copy-paste / deploy changes and work offline
Stars: ✭ 94 (+213.33%)
Mutual labels:  cicd
versio
A version number manager
Stars: ✭ 63 (+110%)
Mutual labels:  cicd

AWS CodeCommit based devops model

简体中文版本

Now this best practice model works on both AWS Global and AWS China regions.

The complete walkthrough can refer to this blog post.

AWS CodeCommit is a managed, secure and git based source code management service. AWS CodeCommit helps enterprise users to set up secure and managed SCM. Though it does not provide the social related features(such as forking and liking) in Github or Gitlab. It can easily work like Gerrit Code Review for team collobration in any size, which is thoroughly used by Android and the projects under Eclipse Foundation.

This best practice model consists of below guidelines and workflows,

  • The Collaborator role of AWS CodeCommit repos who only has permissions for pulling repo, pushing/merging code to specific branches(the branch name with prefix pr/, features/ and bugs/), and creating/closing/commenting pull requests.
  • The Master/Owner role of AWS CodeCommit repos who has some additional administrative privilleges of repo, such as updating repo info, approving/merging pull requests.
  • Nobody can directly push code to mainline branch including master/owner of repos.
  • Any newly created pull request and updating of source branch of pull request will trigger automatically CodeBuild to verify the pull request. The CodeBuild will update the PR build status back to pull request and vote code review apporval +1 if the build is successful.
  • The approval rule template is created and assoicated with the repo. The approval rule requires at least two +1 approvals from master/owner of repo and the automated PR build.
  • The CodePipeline is created on watching the mainline branch of repo. When new changes are merged into mainline branch, the continuous delivery pipeline will be triggered to deploy the artifacts of repo.

See entire architecture below,

The arch of AWS CodeCommit based devops model

This model also leverages the Infra as Code capability of AWS via AWS CDK/CloudFormation, hundreds or more code repositories and their collaboration workflow can be easily managed in a batch.

How to deploy demo app

Prerequisites

  • Install Node LTS(such as 12.x)
  • Install Docker
  • Configure your AWS account for awscli

Deploy it

# install dependencies of lambda functions, init cdk toolkit
npm run init

# deploy
npm run deploy

Cleanup

npm run cleanup

License

This sample code is made available under the MIT-0 license. See the LICENSE file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].