Automating builds and tests with CodeBuild – Rolling Out a CI/CD Pipeline

Ever faced issues with spiky build and test loads toward the end of a sprint? I certainly have my share of experiences. Managing build infrastructure has very similar challenges to what is observed when supporting the dynamic nature of application environments. The customers – the software developers, in this case – should be able to … Read more

Open source or commercial offerings? – Rolling Out a CI/CD Pipeline

You can start with open source versions of the CI/CD tools, but in the long run, the overall total cost of ownership (TCO) takes a hit as it factors in the time you invest in maintaining, scaling, and operating these solutions. AWS-managed services remove this overhead and allow you to pay as you go. Economies … Read more

Why is continuous deployment hard to implement? – Rolling Out a CI/CD Pipeline

It mainly comes down to trust in deploying to productive environments at scale. Teams who want to adopt this model spend a lot of time thinking and developing the right (and complete) test suite before adopting this for production. What is more important is to define a minimal set of essential business features that need … Read more

What is CI/CD? – Rolling Out a CI/CD Pipeline

CI stands for continuous integration and CD is often used interchangeably between continuous delivery and continuous deployment. The scope of what teams end up achieving within each of these varies a lot. Some teams begin with automated testing procedures after code is merged into the main branch, and others might go as far as testing … Read more

Identifying what works best for you – Rolling Out a CI/CD Pipeline

Having noticed software teams adopting code delivery practices, tools, and procedures from the internet as-is, I recommend caution with this approach. More often than not, what works for another organization might not directly fit into your tooling landscape, long-term technology commitments, and the variety of software applications you are working with. Just like containerizing your … Read more

Amazon CloudWatch event integration – Rolling Out a CI/CD Pipeline

You can monitor and build automations when specific events occur in your repositories. Among several others, events such as creating pull requests, adding comments, or reacting to comments could be automatically captured and forwarded to a Lambda function, which then notifies the team over Slack or email, for example. Data protection for meeting compliance requirements … Read more

Pre-configured build environments for popular programming languages

You do not need to reinvent the wheel for known programming languages and tooling dependencies. CodeBuild offers several Windows/Linux environments and programming runtimes such as Android, Golang, Dotnet, Java, Node.js, and so on. With specifications as high as 255 GB of RAM, 72 vCPUs, and 824 GB of disk space on offer, you can support … Read more

Deployment group – where to deploy stuff – Rolling Out a CI/CD Pipeline

Deployment groups identify the targets where application artifacts are placed. In our hands-on exercise, we will be working with EC2 instances hosted in an Auto Scaling group. This group of instances is clubbed together and called a deployment group. The actions that you define in the deployment configuration are performed on these servers. Deployment configurations … Read more

Stages – isolation boundaries for your environments –Rolling Out a CI/CD Pipeline

Think of pipelines as templates that can have multiple executions going on in parallel. Ideally, every single commit that ends up in the repository is a new change you would like to run the pipeline against. Stages are the processes you would like to avoid concurrent executions for. For example, you don’t want to deploy … Read more

Key concepts in CDK– Programmatic Approach to IaC with AWS CDK

The three most important CDK concepts are constructs, stacks, and apps. All of them are represented as classes in the respective programming languages. Let’s clearly define the role of each of these concepts in realizing your infrastructure on AWS. Constructs A CDK construct is the underlying AWS resource that you would like to manage as … Read more