Skip to content

Flox Workshop for CfgMgmtCamp 2026#1

Merged
garbas merged 9 commits intomainfrom
CfgMgmtCamp2026
Feb 4, 2026
Merged

Flox Workshop for CfgMgmtCamp 2026#1
garbas merged 9 commits intomainfrom
CfgMgmtCamp2026

Conversation

@garbas
Copy link
Copy Markdown
Contributor

@garbas garbas commented Feb 4, 2026

Summary

  • Transform quotes app into a hands-on Flox workshop
  • Add flexible quote source (file or Redis) with CLI argument
  • Add comprehensive test suite for workshop validation

Workshop Labs

  • Lab 0: Explore the app, discover Go is missing
  • Lab 1: First Flox environment with flox init, install, activate
  • Lab 2: Redis service with load_quotes alias
  • Lab 3: Environment composition with FloxHub includes
  • Lab 4: Build and publish package
  • Bonus Lab: Flox & AI integration with Claude Code
  • Bonus Lab 2: Nix expression builds

Test plan

  • ./test_workshop.sh passes all labs
  • go test -v ./... passes

- Add README.md with project overview, endpoints, and build instructions
- Read REDISPORT from environment variable with 6379 as default
- Load quotes from JSON file or Redis based on CLI argument
- Require argument, show usage help when missing
- Lazy loading on first request via sync.Once
- Add comprehensive tests for handlers and file loading
- Update README with new usage instructions
- Add GET / endpoint listing available routes
- Restructure README as workshop with Labs 0-4:
  - Lab 0: Explore app, discover Go is missing
  - Lab 1: First Flox environment with Go
  - Lab 2: Redis service with load_quotes alias
  - Lab 3: Environment composition with FloxHub includes
  - Lab 4: Build and publish package
- Add test for index endpoint
- Add test_workshop.sh to validate all workshop labs
- Fix environment composition syntax: { remote = "..." }
- Add load_quotes alias to Lab 2
- Proper port cleanup between test labs
@garbas garbas merged commit 9a9fece into main Feb 4, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant