Module 2: Create and configure your Showroom
Learning objectives
By the end of this module, you will:
-
Create a Showroom repository from the official nookbag template
-
Understand the purpose of each key configuration file
-
Configure
site.yml,antora.yml, andui-config.ymlfor your workshop -
Prepare the repository for content generation
Getting started
Open a terminal on your laptop. All commands in this module run in your local terminal.
Your manager needs a Showroom for the Widget Server 3.2 Automated Widget Pipelines feature. Let’s create the repository that will hold your content.
Red Hat provides an official template repository called showroom_template_nookbag that includes the correct directory structure, GitHub Pages workflow, and Antora configuration out of the box.
Exercise 1: Create your repository
-
Authenticate with GitHub if you haven’t already:
gh auth statusIf you are not authenticated, run
gh auth loginand follow the prompts. -
Create your Showroom repository from the nookbag template:
gh repo create rhpds/my-first-showroom \ --template rhpds/showroom_template_nookbag \ --public \ --cloneReplace
my-first-showroomwith a name that fits your workshop topic. The naming convention in therhpdsorg is<topic>-showroom(e.g.,openshift-pipelines-showroom,ansible-dev-tools-showroom). -
Navigate into the repository:
cd my-first-showroom
Exercise 2: Clean out the template pages
The template comes with documentation pages about Showroom itself. You need to remove these and replace them with your own workshop content.
Use Claude Code to do this quickly:
-
Start Claude Code in the repository:
claude -
Give Claude Code the following instruction:
Clean this Showroom repo for a new workshop called "Widget Server automated pipelines": 1. Delete all .adoc files in content/modules/ROOT/pages/ 2. Create directories: content/modules/ROOT/assets/images and content/modules/ROOT/partials 3. Update site.yml: change title to "Widget Server automated pipelines" and url to this repo's GitHub URL 4. Update content/antora.yml: set title to "Widget Server automated pipelines", remove all example attributes (guid, bastion_*, ssh_*, openshift_*), keep experimental and page-pagination 5. Update ui-config.yml: replace the Antora tab with a Terminal tab (name: Terminal, path: /wetty, port: 443) 6. Replace content/modules/ROOT/nav.adoc contents with just: * xref:index.adoc[Home]
-
Review the changes Claude Code makes and confirm them.
-
Exit Claude Code:
/exit
Verify
Confirm the cleanup:
ls content/modules/ROOT/pages/
The pages directory should be empty.
grep "title:" site.yml
Should show "Widget Server automated pipelines".
cat content/modules/ROOT/nav.adoc
Should show only * Home.
Exercise 3: Understand what you configured
Before moving on, let’s review what each file does for your Showroom:
site.yml — You changed the title. This appears in the browser tab and site header. The rest (theme URL, extensions, output directory) comes from the template and works out of the box.
content/antora.yml — You removed the example attributes (like guid: abc123). In a real RHDP deployment, Showroom injects actual values at deploy time. For GitHub Pages, you define sensible defaults here or use {placeholder} syntax in your content.
ui-config.yml — You configured a Terminal tab. On GitHub Pages this tab won’t render (no Wetty server), but it is ready for when you deploy on RHDP. The view_switcher and default_mode: split settings control the split-pane layout in RHDP deployments.
nav.adoc — You cleared it to a single Home entry. The /showroom:create-lab skill will populate this automatically when it generates your content.
Learning outcomes
By completing this module, you should now understand:
-
How to create a Showroom repository from the nookbag template using
gh repo create --template -
The purpose of the four key configuration files and what to customize in each
-
How to use Claude Code to efficiently clean and configure repository files
-
That the
examples/directory contains templates the AI skills use as reference — keep it intact