Agent skill
azure-infra-bicep
Create or update Azure infrastructure Bicep under infra/ for this project (Cosmos DB account/database/containers, Managed Identity, Container Apps for backend_api) using region japaneast, env dev, and Free Tier enabled. Use when asked to provision Azure infra or write Bicep templates.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/azure-infra-bicep
SKILL.md
Azure Infra Bicep (Cosmos DB + Container Apps)
Goal
Provision Azure resources with Bicep for this repo:
- Cosmos DB account (NoSQL) + database + containers
- Managed Identity (user-assigned) for API
- Container Apps environment + Container App for backend_api
- RBAC role assignment: Cosmos DB Built-in Data Contributor
Defaults for this project
- Environment:
dev - Location:
japaneast - Cosmos DB Free Tier: enabled
Workflow
- Create
infra/if missing. - Add
infra/main.bicepandinfra/params/dev.bicepparam. - Define parameters:
env,location,containerImage,containerCpu,containerMemory,containerPort. - Create resources:
- Cosmos DB account (SQL API) with
enableFreeTier: true. - SQL database (name:
real_estateor${env}-real-estate). - Containers:
property_types,buildings,units,parking_lots,payment_histories,attachments.- Partition key:
/id.
- Partition key:
- Log Analytics workspace.
- Container Apps environment.
- User-assigned Managed Identity.
- Container App for backend_api.
- Cosmos DB account (SQL API) with
- Configure Container App env vars:
COSMOS_ENDPOINT= Cosmos DB account endpointCOSMOS_DATABASE= database nameCOSMOS_CONTAINER_PREFIX=${env}
- Add RBAC role assignment:
- Role:
Cosmos DB Built-in Data Contributor - Scope: Cosmos DB account
- Principal: user-assigned managed identity
- Role:
- Keep the Bicep minimal and deployable at resource group scope.
Output files
infra/main.bicepinfra/params/dev.bicepparam
Notes
- Do not add README or extra docs for the skill.
- Prefer concise comments only when a block is complex.
Didn't find tool you were looking for?