May 10, 2018 by Cloud Foundry Training, Training

Concourse Training

Day 1

Title Description Study Points & Workshop
1 Introduction  Agenda for the training. General introduction for continuous integration and continuous delivery. What are the benefits of CI/CD.
2 Concourse Overview  Concourse overview. About Concourse, what is Concourse and why should you use it. Comparison with other CI tools, advantages and disadvantages
3 Fly CLI  Management activities using Fly CLI
  • Connecting to Concourse
  • Get information about pipelines
  • Get information about workers and volumes
4 Introduction to Concourse components  Terminology used with Concourse. Overview of various components; teams, pipelines, jobs, tasks, resources, builds, and workflow
5 Local Concourse Installation  Installing and creating application pipelines locally
  • Install Docker
  • Running Concourse using Docker
  • Alternative deployment methods
6 Hello World task  Introduction to creating simple task
  •  Creating task manifests
  • Using fly to add and remove task
7 Task inputs  Processing files/folders inside Concourse tasks
  • Adding inputs
  • Using local inputs
  • Using remote inputs
8 Task scripts  Build, release, run scripting inside Concourse tasks
  • Adding task scripts
  • Accessing inputs with task scripts
  • Debugging and troubleshooting task scripts
9 Containers Customising containers with Docker images
  • Review default containers
  • Creating a Dockerfile
  • Maintaining Docker images
  • Intercepting/hijacking containers
10  Resources Retrieving and publishing content with Concourse resources
  • Adding a resource to a pipeline
11 Resource types  Available resource types with examples and exercises
  • Review core resources
  • Resource type standards
  • Adding a custom resource to a pipeline
12 Triggers and automation How to trigger and automate your CI/CD pipelines
  • Understanding trigger behaviours
  • Adding triggers to a pipeline
  • Explore different trigger types
  • Triggering pipelines using fly
13 Task outputs Exporting files/folders from Concourse tasks
  • Storing state using task outputs
  • Different output types
  • Common output use cases
14 Task workflows Passing artifacts between different tasks using inputs and outputs
  • Adding multiple jobs to a pipeline
  • Passing task outputs into task inputs
  • Creating a application CI/CD workflow in a single pipeline
15 Publishing applications and releases Creating final releases of applications and external publishing
  • Publishing applications from Concourse
16 Parameters Configuration and change management using parameters
  • Customising deployment jobs and tasks with parameters
17 Secret management Securing secrets using credential management with Credhub
  • Adding credentials
  • Accessing CredHub credentials with Concourse
  • Alternative credential management integrations

Day 2

Title Description Study Points & Workshop
1 Concourse with Git Using Git with Concourse pipelines
  •  Adding a Git resource to a pipeline
  • Git resource configuration
2 Concourse with Time Scheduling jobs inside Concourse pipelines using the time resource
  • Adding a time resource to a pipeline
  • Time resource configuration
3 Concourse with Semantic Versioning Adding application versioning to your CI/CD pipeline using the semver resource
  • Adding a semver resource to a pipeline
  • Semver resource configuration
4 Concourse with S3 file/artifact storage Publishing binaries and artifacts using the S3 resource
  • Adding a S3 resource to a pipeline
  • S3 resource configuration
5 Concourse with a custom resource Adding and using Azure Blobstore, an IaaS specific custom resources
  • Adding ABs resource to a pipeline
  • ABs resource configuration
6 Concourse with Cloud Foundry Pushing applications directly to Cloud Foundry using the cf resource
  • Adding a CF resource to a pipeline
  • CF resource configuration
7 12-factor applications What makes a cloud-native 12-factor application
  • Code-review of 12-factor example application
8 Build pipelines Creating build pipelines
  • Creating a build pipeline from scratch
9 Release pipelines Creating release pipelines
  • Creating a release pipelines from scratch
10 Deployment pipelines Creating deployment pipelines
  • Creating a deployment pipelines from scratch
11 Blue/Green deployments Blue/Green deployments using Concourse pipelines
  • Extending and creating a blue/green deployment pipeline
12 CI/CD Best practices Tips, tricks and pitfalls when creating Concourse pipelines
  • Test driven development exercises using fly execute

Day 3

# Title Description Study Points & Workshop
1 Advanced task scripting How to make resilient and extensible task scripts
  •  Creating application testing tasks to a Concourse pipeline
2 Creating custom containers with Docker How to add and extend task capabilities by creating custom Docker containers for tasks
  • Creating a custom container
  • Using a custom container in Concourse
3 Creating custom resources How to create custom resources for third-party CI/CD integrations including example third-party custom resources
  •  Creating a custom resource
  • Using a custom resource in Concourse
4 Concourse component deep-dive  Deep-dive into the architecture and components that make up Concourse; ATC, TSA, DB, Garden, Containers, Volumes, Baggage Claim and Workers.
5 Concourse for Operators Installing, operating and managing Concourse at scale on different infrastructures
  •  Installing Concourse on the Cloud using BOSH on Azure
6 Concourse Configuration Concourse configuration options for logging, metrics, high availability and security
  • Scaling Concourse
  • Configuring Concourse to be highly available
7 Concourse Third-party Integrations Supported third-party integrations; ASM, BBR, CredHub, OAuth, InfluxDB, Prometheus, Riemann, UAA, Vault and Yeller
8 Useful docs and resources Various useful community docs and resources for help and troubleshooting

Extra Topics ( available only for private classes)

# Title Description Study Points & Workshop
1 Monoliths and microservices Uses cases for microservices and when microservices shouldn’t be used
2 Orchestration vs choreography Discussion, advantages, disadvantages and use cases
3 Security Web app SSO, configuring TLS, HTTPS, PKI management
4 Service discovery Concepts and comparison of service discovery options including ZooKeeper, Eureka and Consul.
5 TDD – Test-Driven Development Unit-tests, component tests, integration tests and end-to-end tests. TDD theory.
6 XP – eXtreme Programming General concept, goals, rules and activities of the XP methodology
7 Metrics and monitoring Tools and services including examples

© 2001–2019 Altoros