Deployment and Packaging

From commit to production—see how code gets from a laptop to running live in production.

There are seemingly infinite ways to get code from a developer into production. In the simplest example, a website hosted on GitHub pages has a single step—a developer commits code—and the changes are reflected in production. In most applications, however, there are many more steps between the developer and the results being live in production, and they can vary from application to application. There numerous are different ways to assemble a deployment pattern.

A deployment pattern generally contains elements from four key areas.


Each of these areas satisfies different requirements based on a particular application’s needs. For applications like human resource systems, compliance and audit is crucial, whereas for a mobile website, continuous integration and rapid deployment are most important.


What kind of tools are needed to meet the requirements of those areas? Which users will directly interact with or manage which tools?


From a developer’s perspective, the items on the left are the most important, because developers use them on a daily basis. But there are a lot of components on the right-hand side that can be necessary before going into production. When it comes to this particular pattern, that is where there will not only be deeper dives on each of these areas and tools, but also examples of where these components are brought together to deliver code from commit to production.


Code Samples

Getting Started with Concourse

Install files and demo pipelines for getting started with Concourse CI

Tekton Examples

A collection of examples for Tekton


Using Knative Eventing for Better Observability

Getting a better picture of Kubernetes events

The Hate for YAML: The Hammer or the Nail?

YAML gets a lot of hate, but is it more nuanced than that?

Introducing the Tanzu Observability Slug Generator

Announcement for the open sourcing of code that generates Tanzu Observability URL

Debugging a Kubernetes Workload with Octant

Walk through an NGINX deployment with a faulty NGINX configuration to demonstrate how common pitfalls can be identified using Octant.

Securely Connect with Your Local Kubernetes Environment

Learn how to configure your local Kubernetes environment to work with secure ingress and reproducible URLs, so that development is made easier.

Hello Python, My Old Friend: Revisiting Python in a Cloud-Native Climate

How does Python look in the cloud-native world of today?

Declarative Deployments in Kubernetes: What Options Do I Have?

Compare various options for declarative deployment of microservices in Kubernetes.

What’s New in .NET Core for Containers and Microservices

Looking at recent changes in .NET 3.0 and 3.1 for containerized workloads

Kubernetes at Home: Local k8s Options

Compare various options for developing on top of Kubernetes locally using Minikube, kind, and Docker Desktop.

A Container Is a Linux Namespace and Networking Basics

Demystify containers and cover some networking basics

From Commit to Container

Building Containers from your code.

Developing Locally for the Cloud

Develop apps to run on the cloud right on your laptop.