Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Atomist Software Delivery Machine 1.0 Launched

Atomist Software Delivery Machine 1.0 Launched

This item in japanese

Atomist, a software delivery automation company, has announced their Software Delivery Machine (SDM) 1.0. Atomist SDM is a cloud-native software delivery platform with additional capabilities, specifically for Kubernetes and Spring.

It manages delivery from commit to production deployment by providing individual pipelines for separate services, which includes steps for code formatting, vulnerability scanning, and tests against staging instances. Atomist recently open-sourced their SDM, extending its availability with the hope that it will help teams to modernise their software delivery and improve visibility and control.

Atomist SDM 1.0 includes feature updates and enhancements created in response to community feedback. SDM now includes enhanced approvals, an extension pack model, and log streaming, in addition to further enhancements to Goals, the fundamental action in SDM. SDM 1.0 also includes built-in goals for inspecting and fixing common coding issues, performing Docker builds and deploying to common targets like Kubernetes. Atomist SDM allows teams to automate tasks such as applying consistent formatting to source code, managing a changelog, labelling issues when fixes get deployed into production, auto-merging PRs when reviews and builds succeed, and updating license notice files in repositories. It enables the delivery process to be programmed, like running builds and integration tests, managing deployments and rollbacks, and publishing artefacts, using the same tools and approaches used for writing application code. Christian Dupuis, co-founder and VP engineering said:

The big idea of SDM is that actions like builds or deployments should be driven from events and defined in code rather than a cringe worthy mix of YAML definitions and Bash scripts typical of legacy CI/CD tools. The SDM provides a framework for developing delivery and the runtime for executing it.

An SDM is an open, extensible and customisable framework. Users code goal implementations that can operate alongside standard goals like Autofix, Build or KubernetesDeploy. Custom goals can integrate pre-existing tools or APIs into the delivery process. Atomist SDM can be driven from a web interface, via code or ChatOps via Slack and can be self-hosted or accessed through Atomist's cloud-host. It uses webhooks and APIs to integrate with popular tools like GitHub, Bitbucket, Jenkins, Docker, OpenShift and CloudFoundry.

In the Kubernetes space, Atomist SDM provides capabilities to create new deployments as new images become available and to detect when ImagePullBackoff or CrashLoopBackoff occurs and automatically roll back. It can also create, mutate and manage Docker build configurations and Kubernetes deployment configurations whilst providing role-based access and audit trails.

In the Spring space, the Atomist SDM extension pack supports the creation (directly in new repo), maintenance and delivery of Spring Boot projects with code inspections, commands to add and configure Spring Boot starters based on the Spring Guides, local deployment support for Spring Boot projects using Maven or Gradle, and support for deploying to Cloud Foundry and Kubernetes.

Other extension packs available include: changelog management, code metrics, fingerprinting code, SonarQube integration, CheckStyle integration, Node.js, Docker integration, run CI builds, automatically manage issues, Pulumi integration, receive and act on JFrog Xray violation events and GitLab integration. James Governor, co-founder Redmonk, said:

The core of what SDM enables - integrated, engineered, event-driven delivery - is foundational to what I call progressive delivery. Modern software delivery is changing dramatically. Engineering the delivery of software is now strategic.

Rod Johnson, Atomist CEO and creator of the Spring Framework, has also recently announced the Software Defined Delivery Manifesto in recognition of the increasing importance of properly engineering the delivery of infrastructure. The manifesto has been written by multiple experts within the field of software delivery.

The Atomist SDM 1.0 is available now for download here on GitHub. The Atomist subscription service is available free of charge to open source projects. You can join the Atomist Slack community channel here.

Rate this Article