Configuration Files vs Deployment Manager Templates
Start course

*** NOTICE: This course contains outdated information and has been deprecated ***

This course has been designed to teach you how to deploy and implement Google Cloud Platform solutions. The content in this course will help prepare you for the Associate Cloud Engineer exam.

Learning Objectives

  • To learn how to deploy Kubernetes Engine resources on Google Cloud Platform
  • To learn how to deploy and implement App Engine and Cloud Functions resources
  • To learn how to use Cloud Launcher and Deployment Manager

Intended Audience

  • Those who are preparing for the Associate Cloud Engineer exam
  • Those looking to learn more about GCP networking and compute features


To get the most from this course then you should have some exposure to GCP resources, such as Kubernetes Engine, App Engine, Cloud Functions, Cloud Launcher, and Deployment Manager. However, this is not essential.


Before we get into the process of deploying a resource using a deployment manager template, I wanted to quickly explain what the configuration file is and what its relationship is to the template because before using a template to deploy a resource, we must first create a configuration. 

Now, what a configuration file is is a list of resources, and their respective properties that will be part of the deployment. A configuration file contains a top-level resources section, which, in turn, contains a list of resource entries that are used to configure the deployment. Each resource entry includes a name field, a type field, and sometimes, a properties field. 

On the screen, here, you can see what a typical configuration file looks like, when using a template for deployment. The information you see is from a configuration file, called myvm.yaml, that I created ahead of this lesson. If you remember the previous lesson, where I showed you the demovm deployment manager template, you'll recall that I specified all the necessary values for our VM in the demovm.jinja file. 

Since we already configured these values in the template file we'll be using, we don't have to provide this information directly in the configuration file here. Instead, we'll simply pull this information from our template into the configuration, using the imports command, along with a path designation. 

Since both my config file and template both reside in the same templatedemo folder, I don't need to specify a complete path. The name field in the resources section is used to specify a name for the resource being deployed. 

For this exercise, we're calling our new VM myfirstvm. Type specifies the base type of the resource being deployed. Since we already defined the type in our template that we're referencing, we just need to configure the type to reference our template. As you can see here, the config file is pretty bare, when using templates. This makes sense because all the configuration settings are defined in the template file meaning there isn't much needed in the config file. 

So, now that I've explained the config file and template file, let's hop into the next lesson where I'll show you how to deploy a VM using a combination of the config file and template.

About the Author
Learning Paths

Tom is a 25+ year veteran of the IT industry, having worked in environments as large as 40k seats and as small as 50 seats. Throughout the course of a long an interesting career, he has built an in-depth skillset that spans numerous IT disciplines. Tom has designed and architected small, large, and global IT solutions.

In addition to the Cloud Platform and Infrastructure MCSE certification, Tom also carries several other Microsoft certifications. His ability to see things from a strategic perspective allows Tom to architect solutions that closely align with business needs.

In his spare time, Tom enjoys camping, fishing, and playing poker.

Covered Topics