All HashiCorp field workshops focused on Terraform should be placed in this repository. Similar field workshop repositories exist for these HashiCorp solutions:
Additionally, field workshops focused on more than one HashiCorp solution can be found in the field-workshops-hashistack repository.
The slides for these workshops should be created using Remark and should be placed under the docs/slides directory. This directory is organized by cloud and then by workshop. If a workshop targets a single cloud, its slides should be placed in a directory under that cloud's directory (aws, azure, or gcp). If a workshop can be used with multiple clouds, its slides should be placed in a directory under the multi-cloud directory.
Please do NOT place any slides or any other content directly inside the docs directory.
Standard assets (logos, backgrounds, css, fonts, and js) used by workshop slides are contained in a separate repository, field-workshops-assets.
When creating slides for a new workshop, you will need to do the following:
- Create a new workshop directory under the appropriate directory as discussed above.
- Copy docs/index.html to your new workshop's directory. (But don't create a sub-directory called
docs
under it.) - If you want to create a single part slide show, then create a file in your directory called
index.md
and add all your slides to it.- You can copy content from docs/index.md to get started with a title slide and a few regular slides.
- Note that the speaker notes in that file have some useful pointers for creating Remark slide shows.
- If you want to create a multi-part slide show, then do the following:
- Create multiple files such as
terraform-1.md
,terraform-2.md
, andterraform-3.md
with corresponding HTML files such asterraform-1.html
,terraform-2.html
, andterraform-3.html
that should be copies ofindex.html
. - In each of the new HTML files, replace
index.md
with the name of the corresponding MD file in thesourceURLs
list. For instance, useterraform-1.md
interraform-1.html
. - Replace
index.md
in thesourceURLs
list of your workshop's copy ofindex.html
with a comma-delimited list of your MD file names. So, with the 3 MD files listed above, you would specifysourceURLs
like this:
sourceUrls = [ 'terraform-1.md', 'terraform-2.md', 'terraform-3.md' ]
- Create multiple files such as
Whether you create a single-part or multi-part slide show, users will be able to access all of your slides with a URL like https://hashicorp.github.io/field-workshops-terraform/slides/aws/terraform-oss/index.html, but they can leave off index.html
.
If you create a multi-part slide show, users will also be able to access each part of your slide show separately at URLs like these:
- https://hashicorp.github.io/field-workshops-terraform/slides/aws/terraform-oss/terraform-1.html
- https://hashicorp.github.io/field-workshops-terraform/slides/aws/terraform-oss/terraform-2.html
Each workshop should give the full link (or links) to that workshop's slides in one of its first few slides.
The instructor guides for these workshops should be created as Markdown files and should be placed in the instructor-guides directory and have names like <cloud>_<workshop_name>_INSTRUCTOR_GUIDE.md
where <cloud>
is the cloud the workshop targets and <workshop_name>
is the name of the workshop. But if the workshop is intended for use with multiple clouds, <cloud>
should be omitted.
The labs for these workshops should be created using Instruqt Tracks. Each track should be placed in its own directory directly underneath the instruqt-tracks directory. Doing this allows each track to be used by multiple workshops within this repository.