PRG900 Scripting with PowerShell — Presentation as Code
  • PowerShell 98.1%
  • C# 1.9%
Find a file
Feiko 88c1e17989
All checks were successful
Build and Release PDFs / build (push) Successful in 39s
Day 3: fleet remoting, IIS & SQL practical demos + ops cheat sheet
Remoting (07): fleet slides + demos for targeting, changing,
rolling-restart, audit, tier install, and saved credentials
(demo09-14). IIS (10): provision-from-config and config backup/restore
(demo08-09) plus recycle/restart/triage slides. SQL (12): admin/catalog
queries, SqlBulkCopy, fleet query, DB backup/restore, Excel export
(demo08-12) plus practical slides on real CourseShop data.

Lab tooling: Add-MemberServers.ps1 (web01/app01 WinRM fan-out) and
Demo-TomcatFleet.ps1 (Podman Tomcat). documents/powershell-ops-cheatsheet.md
as a fallback reference. All demos verified against the live lab; slides lint clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 23:36:25 +02:00
.forgejo/workflows Add CI workflow building and releasing course PDFs 2026-07-08 17:16:45 +02:00
.vscode Delivery touch-ups for modules 01-03; add reference books and Marp preview config 2026-07-14 14:22:08 +02:00
archive Scaffold Presentation-as-Code repo structure 2026-07-08 12:07:10 +02:00
articles Scaffold Presentation-as-Code repo structure 2026-07-08 12:07:10 +02:00
books Delivery touch-ups for modules 01-03; add reference books and Marp preview config 2026-07-14 14:22:08 +02:00
build Scaffold Presentation-as-Code repo structure 2026-07-08 12:07:10 +02:00
demos Day 3: fleet remoting, IIS & SQL practical demos + ops cheat sheet 2026-07-16 23:36:25 +02:00
docs Add module 11 cross-references; sweep stale closer phrasing 2026-07-14 20:55:59 +02:00
documents Day 3: fleet remoting, IIS & SQL practical demos + ops cheat sheet 2026-07-16 23:36:25 +02:00
extra Scaffold Presentation-as-Code repo structure 2026-07-08 12:07:10 +02:00
lab Day 3: fleet remoting, IIS & SQL practical demos + ops cheat sheet 2026-07-16 23:36:25 +02:00
solutions Add SQL module (appendix); mark IIS/AD/SQL appendices; diversify demo data 2026-07-15 21:10:39 +02:00
src Day 3: fleet remoting, IIS & SQL practical demos + ops cheat sheet 2026-07-16 23:36:25 +02:00
.gitattributes Scaffold Presentation-as-Code repo structure 2026-07-08 12:07:10 +02:00
.gitignore Delivery touch-ups for modules 01-03; add reference books and Marp preview config 2026-07-14 14:22:08 +02:00
countries_example Add countries_example 2026-07-16 11:53:27 +02:00
README.md Add SQL module (appendix); mark IIS/AD/SQL appendices; diversify demo data 2026-07-15 21:10:39 +02:00

PowerShell Scripting Courseware

Welcome to the Scripting with PowerShell course (PRG900). This repository contains the demonstrations, exercises, solutions, and reference materials for the three-day training.

Repository Structure

Course Documents

  • PRG900-PowerShell-Scripting.pdf: The course slide deck (attached to the latest release).
  • PRG900-PowerShell-Scripting-Exercises.pdf: The exercise workbook with step-by-step assignments (attached to the latest release).

Code & Demos

  • demos/: One runnable .ps1 per slide topic, organized per module. The slides reference each demo with a footer pill such as `demo03 · select-object`.
  • solutions/: Runnable .ps1 reference solutions, one file per exercise, organized per module. Use these to check your work or if you need a hint.
  • extra/: A large collection of real-world PowerShell scripts (from the Windows PowerShell Cookbook) for further exploration.

Learning Materials

  • articles/: Informative articles on PowerShell topics.
  • books/: Recommended reference books (PDF) for deeper study.

Getting Started

Prerequisites

Appendix modules (optional)

The IIS, Active Directory, and SQL appendices are only needed when the class covers them:

  • SQL and Databases: install a local SQL Server, either winget install Microsoft.SQLServer.2022.Express (creates a .\SQLEXPRESS instance), or SQL Server 2022 Express with the LocalDB option (lightweight (localdb)\MSSQLLocalDB). The helper demos/12-sql-databases/sql-lab-setup.ps1 auto-detects whichever is present. The Invoke-Sqlcmd demos also need the SqlServer module: Install-Module SqlServer -Scope CurrentUser.
  • Active Directory needs the RSAT AD tools and a domain to query (see lab/README.md).

The language modules also run on Linux/macOS, but the service, CIM, remoting, IIS, Active Directory, and SQL content requires Windows.

Verify your setup by running $PSVersionTable in a pwsh terminal — you should see version 7.x.