Delivery automation articles utilising the Continuous Delivery Automation Framework (CDAF).
Articles
Realising the Feedback Loop
Information Technology Solution Delivery in Enterprise Environments
Going Beyond Sprint Zero.
Continuous Delivery to Shift-Left While the DevOps Feedback-Loop, along with finding issues early by moving production-like environments closer to the developer (Shift-Left), are key principles, there is commonly no tangible way of achieving this.
In the typically incremental progression of continuous delivery implementations, eventually automation is built to deliver to production, and typically, that is where the story ends.
read more
Articles
Technical Debt
After over a decade of maintaining the Continuous Delivery Automation Framework, the time has come to pause new features to clean out the closet… or has it?
The Pain and Patience of Paying off Debt My desire to expunge the mistakes of the past and refresh with best practice glamour has, like in the commercial world, abruptly encountered reality. Feature demands, hidden defects and day-to-day challenges made me reflect on what I wanted to achieve and what I needed to be working.
read more
Articles
CDAF Build Image
Shift-Left with CDAF Build Image.
Building In Containers Many CI/CD orchestration tools support building in containers, e.g. GitLab & BitBucket Pipelines, for some of these tools, it is the only supported meethod, e.g. CircleCI & Travis. For these tools the CDAF images have been extended to provide a broad range of software development kits and command line utilities.
Agent Containers Azure DevOps does not natively support building in containers, however, the Azure DevOps agent is installed on the CDAF Build Image, so one or more containers can be registered and run in Agent Pools or Deployment Groups.
read more
Articles
Test Automation as a Product
Behavior-driven development in dependent pipelines.
Status Quo It is very common for automated tests to be executed from a test developers desktop, namely because it has a browser and can render pages locally. To allow testing on a variety of platforms and browsers, BrowserStack is commonly used, which is great! However, this implies that the tests are being run from source, and are therefore volatile.
Execution from a Pipeline With test execution being performed from source, it is a natural progression to use this same method in a pipeline.
read more
Articles
Do-Nothing Pipeline
Entering Sprint-0 To embed automation into the feature development lifecycle, a pipeline should exist at the earliest possible time, configured to initially “do nothing” at deploy time. Using the CDAF samples for Linux or Windows, an operational pipeline can be created quickly.
Enough to make it run Install CDAF for Linux or Windows and seed your solution. At this point you have the bare minimum to produce an executable deployment artefact.
read more
Articles
Containers at Scale
A Containers Journey The article is oriented to an organisation’s systems, be in public or internal, and not to product shipping businesses. Using Kubernetes as the example runtime platform is for demonstration purposes only, and this journey is not specific to any given runtime platform. From software development, testing and runtime environments, there are different points of focus and scale.
Commonly, the development viewpoint may not extend beyond docker (or even local), however when function testing the software, a production like environment is necessary, which is when docker-compose provides a declarative mechanism for creating a testable environment, with code that can be reused in the delivery pipeline and shared among team members.
read more
Articles
Autonomous Development, Authoritative Release.
Realisation with Kubernetes and Terraform Cloud This article is an example realisation of the Containers at Scale, A Containers Journey article, and serves as a demonstration of principles.
DevOps, as we are all aware, is not a thing, it’s a principle. That being said there are opportunities for material realisation of this principle. Intermediary tools which help exhibit this are Ansible Tower, Puppet Enterprise, Rundeck and Terraform Cloud.
With competing desires, i.
read more
Articles
Tabular Configuration Management
Configuration Management and Tokenised Properties Following the Twelve-Factor principle of configuration separation from the artifact, it is common to have developer centric representations of configuration, for example XML, JSON or YAML, and while these are native to developers, they can be obscure to business or operational users.
With CDAF being Enterprise oriented, a business centric approach is followed. A single file of tabular properties is more consumable than a group of native language files, i.
read more
Articles
CDAF Self-hosted Pipeline Container Solution
Continuous Delivery Automation Framework (CDAF) release 2.4.0 is now available. This completes the Self-hosted Pipeline Container epic and provides an opinionated feature, complimenting the existing containerBuild and targetlessCD features.
The principles of this solution is to provide the containerised advantages of SaaS offerings like CodeShip, Travis, Circle CI, BitBucket Pipelines, etc. to organisations that host their own CI/CD workloads.
Each feature can be utilised independently. The containerBuild uses a volume mount to supply the resulting artefacts to the pipeline for upload, while containerDeploy is immutable, being supplied the artefacts as part of the disk image.
read more