# Arm Template Helper

> Creates and validates Azure Resource Manager (ARM) templates for infrastructure deployment. Use when creating ARM templates, deploying Azure infrastructure as code, or validating Azure templates.

- Skill: `tomevault-io/arm-template-helper` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/arm-template-helper`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/arm-template-helper/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/arm-template-helper

---


# ARM Template Helper

## Quick Start

Create and validate Azure Resource Manager templates for infrastructure as code deployments.

## Instructions

### Step 1: Create ARM template structure

```json
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "variables": {},
  "resources": [],
  "outputs": {}
}
```

### Step 2: Add resources

```json
"resources": [
  {
    "type": "Microsoft.Storage/storageAccounts",
    "apiVersion": "2021-04-01",
    "name": "[parameters('storageAccountName')]",
    "location": "[parameters('location')]",
    "sku": {
      "name": "Standard_LRS"
    },
    "kind": "StorageV2"
  }
]
```

### Step 3: Validate template

```bash
# Validate ARM template
az deployment group validate \
  --resource-group myResourceGroup \
  --template-file template.json \
  --parameters parameters.json

# Test deployment (what-if)
az deployment group what-if \
  --resource-group myResourceGroup \
  --template-file template.json
```

### Step 4: Deploy template

```bash
# Deploy ARM template
az deployment group create \
  --resource-group myResourceGroup \
  --template-file template.json \
  --parameters parameters.json
```

## Best Practices

1. Use parameters for configurable values
2. Use variables for computed values
3. Add outputs for important resource properties
4. Use dependsOn for resource dependencies
5. Implement proper naming conventions
6. Add tags for resource organization
7. Use linked templates for modularity
8. Validate before deploying

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/armanzeroeight) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

