Deploying Jenkins into AWS ECS using CDK
Learn how to deploy a production-ready Jenkins in a few lines of code using the AWS Cloud Development Kit.
Learn how to deploy a production-ready Jenkins in a few lines of code using the AWS Cloud Development Kit.
Discover 5 better ways to manage secrets required by your Jenkins jobs.
Gradle 7.0 was released on 9th April 2021, and includes some important new features and improvements. Discover what’s new, and what the benefits could be for your Gradle project. New features/improvements in Gradle 7 Java toolchain support What is it? Gradle’s new Java toolchain allows you to use different versions of Java for different parts of your build. By default, Gradle uses the same Java version to compile and run your application as the version you’re using to run Gradle itself....
SonarQube helps us improve code quality using static analysis techniques. You can even add quality gates to fail your CI pipeline if the master branch doesn’t meet your requirements. Why not also apply the same technique to feature branches? In this article you’ll learn how to setup SonarQube branch analysis to check the quality of both master and feature branches, finding potential issues even earlier in the development lifecycle. SonarQube branch analysis version compatibility SonarQube branch analysis is only available for specific editions of SonarQube....
In Gradle dependencies are libraries required to build your code. Each of these libraries may have their own dependencies, adding transitive dependencies to your project. This structure is called the Gradle dependency tree, with its own rules on dependency conflict resolution and more. In this article you’ll learn how to view the dependency tree, so you can understand fully how you project is built and resolve common issues. Dependencies and dependency configurations To be able to properly navigate the Gradle dependency tree, it’s important to understand how dependencies can be configured within different configurations....
A powerful feature of the Gradle build tool is its ability to setup dependencies between tasks, creating a task graph or tree. The task graph means you only need to run the task you care about, and any other required tasks get run automatically. In this article, you’ll learn all about the Gradle task graph, how to add tasks to it, and how to print it out. Tasks and task dependencies A Gradle task is a unit of work which needs to get done in your build....
The first-in-first-out (FIFO) queue is the type of AWS SQS queue that guarantees order and provides exactly once delivery of messages. That sounds great, but there are some other important features to understand to avoid unexpected queue behaviour. In this article you’ll discover the 3 most important caveats with SQS FIFO queues. 1) If a message fails to be processed, it may block other messages When you send a message to a FIFO queue a message group id must be provided....
Discover how to use VPC endpoints to enable a Jenkins agent in one VPC to communicate with a Jenkins master in another.
Using separate AWS accounts provides strong separation of resources, which is great until the point you need cross-account access from a VPC in one account to another. In this article you’ll learn 3 ways to setup a secure connection across accounts, with full working examples you can try out yourself. Why do we need cross-account VPC access? A Virtual Private Cloud (VPC) is a private network which you create in the AWS cloud....