Skip to content

Commit 936003e

Browse files
rishupkclaude
authored andcommitted
docs: add mapt-provisioner to README and update CLAUDE.md for SNC
- Add mapt-provisioner skill section to README (was missing entirely) - Add SNC/OpenShift references to CLAUDE.md overview and use cases - Clarify OpenShift SNC is AWS only Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Rishabh Kothari <rkothari@redhat.com>
1 parent cc83a94 commit 936003e

2 files changed

Lines changed: 43 additions & 7 deletions

File tree

CLAUDE.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This repository contains **Claudio Skills Plugin** - a Claude Code plugin that e
88

99
This plugin enables Claude Code to:
1010

11-
- **Provision and manage cloud infrastructure** using mapt for AWS and Azure (RHEL AI VMs, spot instances, GPU workloads)
11+
- **Provision and manage cloud infrastructure** using mapt (RHEL AI on AWS/Azure, OpenShift SNC on AWS, spot instances, GPU workloads)
1212
- **Analyze GitLab CI/CD job failures** using structured scripts for pipeline debugging
1313
- **Orchestrate Konflux production releases** with self-contained stage-to-production workflows
1414
- **Troubleshoot and analyze AWS CloudWatch Logs** for application debugging and monitoring
@@ -383,6 +383,7 @@ When a new version is released, Renovate automatically creates a PR to update th
383383

384384
**Use cases:**
385385
- Provision RHEL AI instances with GPU support (CUDA/ROCm)
386+
- Provision OpenShift SNC clusters with AI/NVIDIA profiles (AWS only)
386387
- Use spot instances for cost-effective testing
387388
- Destroy provisioned resources with state cleanup
388389
- Check stack status and retrieve connection details
@@ -392,7 +393,8 @@ When a new version is released, Renovate automatically creates a PR to update th
392393
- Natural language intent mapping (user says "spin up RHEL AI on Azure with spot", skill handles the rest)
393394
- Automatic RHEL AI version discovery via `mapt <aws|azure> rhel-ai list-versions`
394395
- Stable-over-EA version preference with hard stop on EA-only scenarios
395-
- Spot eviction tolerance defaults tuned for GPU testing workloads
396+
- OpenShift SNC with profile support (ai, nvidia, serverless, servicemesh, virtualization)
397+
- Spot eviction tolerance defaults to highest for both RHEL AI and SNC
396398
- Pulumi state backend enforcement to prevent orphaned resources
397399
- mapt + Pulumi + provider plugins auto-installed via `tools/mapt/install.sh`
398400

README.md

Lines changed: 39 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Claudio Skills Plugin provides five production-ready skills designed to streamli
1717
- **Slack Utilities** - Search messages, post updates, and interact with Slack workspaces
1818
- **GitLab Branch Management** - Create and protect GitLab branches with configurable protection rules
1919
- **Jira Utilities** - Manage Jira issues with JQL search, create/update issues, link issues, and fetch sprint info
20+
- **Mapt Provisioner** - Provision and manage cloud infrastructure using mapt (RHEL AI on AWS/Azure, OpenShift SNC on AWS, spot instances, GPU workloads)
2021

2122
## Skills
2223

@@ -115,7 +116,33 @@ Disclaimer, the first time you reuse those Tokens you will probably be signed of
115116
- JSON and human-readable output
116117
- Compatible with bash 3.2+ (macOS, RHEL, Ubuntu, Alpine)
117118

118-
### 6. Jira Utilities Skill
119+
### 6. Mapt Provisioner Skill
120+
121+
Provision and manage cloud VMs and services on AWS and Azure using [mapt](https://github.com/redhat-developer/mapt).
122+
123+
**Use Cases:**
124+
- Provision RHEL AI instances with GPU support (CUDA/ROCm)
125+
- Provision OpenShift SNC clusters with AI/NVIDIA profiles (AWS only)
126+
- Use spot instances for cost-effective testing
127+
- Destroy provisioned resources with state cleanup
128+
- Check stack status and retrieve connection details
129+
- List available RHEL AI versions on AWS and Azure
130+
131+
**Key Features:**
132+
- Natural language intent mapping
133+
- Automatic RHEL AI version discovery via `mapt list-versions`
134+
- OpenShift SNC with profile support (ai, nvidia, serverless, servicemesh, virtualization)
135+
- Spot eviction tolerance defaults to highest for both RHEL AI and SNC
136+
- Pulumi state backend enforcement to prevent orphaned resources
137+
- mapt + Pulumi + provider plugins auto-installed via `tools/mapt/install.sh`
138+
139+
**Prerequisites:**
140+
- `MAPT_BACKEND_URL` - Pulumi state backend (s3:// or azblob://)
141+
- AWS: `AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY` (or `AWS_PROFILE`), `AWS_DEFAULT_REGION`
142+
- Azure: `ARM_TENANT_ID`, `ARM_SUBSCRIPTION_ID`, `ARM_CLIENT_ID`, `ARM_CLIENT_SECRET`
143+
- SNC: `PULL_SECRET_FILE` (from [console.redhat.com/openshift/downloads](https://console.redhat.com/openshift/downloads))
144+
145+
### 7. Jira Utilities Skill
119146

120147
**Use Cases:**
121148
- Fetch a single issue by key
@@ -156,6 +183,7 @@ Each skill manages its own dependencies through installer scripts in `claudio-pl
156183
| Slack Utilities | `curl`, `jq`, `python3` + requests | `jq`, requests |
157184
| GitLab Branch Manager | `glab`, `jq` | `jq` only |
158185
| Jira Utilities | `python3` + requests | requests |
186+
| Mapt Provisioner | `mapt`, `pulumi` | Both (via `tools/mapt/install.sh`) |
159187

160188
**Authentication:**
161189
- GitLab: Authenticate with `glab auth login` before using (required for GitLab Job Analyzer, GitLab Branch Manager, and Konflux Release)
@@ -289,10 +317,13 @@ claudio-plugin/
289317
├── slack-utilities/
290318
│ ├── SKILL.md # Slack Web API skill
291319
│ └── scripts/ # Slack interaction scripts
292-
└── gitlab-branch-manager/
293-
├── SKILL.md # GitLab branch creation and protection skill
294-
└── scripts/
295-
└── create_and_protect_branch.sh
320+
├── gitlab-branch-manager/
321+
│ ├── SKILL.md # GitLab branch creation and protection skill
322+
│ └── scripts/
323+
│ └── create_and_protect_branch.sh
324+
├── mapt-provisioner/
325+
│ ├── SKILL.md # Cloud infrastructure provisioning skill
326+
│ └── scripts/ # Provisioning, destroy, and status scripts
296327
└── jira-utilities/
297328
├── SKILL.md # Jira REST API skill
298329
└── scripts/
@@ -313,6 +344,7 @@ The `claudio-plugin/tools/` directory provides centralized installation scripts
313344
- `kubectl/install.sh` - kubectl Kubernetes CLI installer
314345
- `python/` - Python package installers (pip-based requirements.txt files)
315346
- `skopeo/install.sh` - skopeo container image inspector installer
347+
- `mapt/install.sh` - mapt CLI + Pulumi + provider plugins installer
316348

317349
**Adding New Tools:**
318350

@@ -364,6 +396,7 @@ Each skill includes its own test scenarios. Run skill-specific scripts directly
364396
- [Slack Utilities Skill](claudio-plugin/skills/slack-utilities/SKILL.md)
365397
- [GitLab Branch Manager Skill](claudio-plugin/skills/gitlab-branch-manager/SKILL.md)
366398
- [Jira Utilities Skill](claudio-plugin/skills/jira-utilities/SKILL.md)
399+
- [Mapt Provisioner Skill](claudio-plugin/skills/mapt-provisioner/SKILL.md)
367400

368401
## Claude Code Permissions
369402

@@ -382,6 +415,7 @@ When using this plugin you typically want to allow skill scripts to run without
382415
"Skill(claudio-plugin:jira-sprint-manager)",
383416
"Skill(claudio-plugin:jira-cve-tracker)",
384417
"Skill(claudio-plugin:jira-gap-audit)",
418+
"Skill(claudio-plugin:mapt-provisioner)",
385419
"Bash(/path/to/claudio-skills/**)",
386420
"Bash(mempalace*)",
387421
"Read(/home/$USER/.claude/**)"

0 commit comments

Comments
 (0)