mcpbeat Sign in

Azure Integration Tester Agent Skill

Run post-deployment integration tests for Azure resources. Verify Function Apps, Storage Accounts, Databases, App Services are healthy and accessible. Use after successful Azure deployment.

9k tokens
context cost
the whole folder, loaded on every use
5
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
265
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Azure/git-ape --skill azure-integration-tester

What comes with it

29 848 bytes besides the instruction
references/test-patterns.md
scripts/test-database.sh
scripts/test-function-app.sh
scripts/test-storage.sh

The instruction itself

13 sections, as written by the author

Azure Integration Tester

Run comprehensive integration tests on deployed Azure resources to verify they are functional, accessible, and properly configured.

When to Use

  • After successful ARM template deployment
  • To verify resource health and endpoints
  • Before handing off deployment to user
  • For troubleshooting deployment issues

Procedure

1. Identify Deployed Resources

Parse deployment outputs to identify resource types:

  • Function Apps → HTTP endpoint tests
  • Storage Accounts → Connectivity and blob operations
  • SQL Databases / Cosmos DB → Connection tests
  • App Services → HTTP endpoint tests
  • Application Insights → Telemetry verification

2. Run Resource-Specific Tests

For Function Apps:

Execute test-function-app.sh:

./scripts/test-function-app.sh \
  --url "https://func-api-dev-eastus.azurewebsites.net" \
  --resource-group "rg-webapp-dev-eastus" \
  --name "func-api-dev-eastus"

Tests performed:

  • ✓ HTTP endpoint accessibility (GET /)
  • ✓ Health endpoint (/api/health or /admin/host/status)
  • ✓ Response time under threshold
  • ✓ HTTPS enforcement (reject HTTP)
  • ✓ CORS configuration
  • ✓ Application Insights connectivity

For Storage Accounts:

Execute test-storage.sh:

./scripts/test-storage.sh \
  --account-name "stwebappdev8k3m" \
  --resource-group "rg-webapp-dev-eastus"

Tests performed:

  • ✓ Account accessibility
  • ✓ Blob service available
  • ✓ Create/read/delete test blob
  • ✓ HTTPS-only enforcement
  • ✓ Firewall rules (if configured)
  • ✓ Minimum TLS version

For Databases:

Execute test-database.sh:

./scripts/test-database.sh \
  --type "sqldb" \
  --server "sql-webapp-dev-eastus.database.windows.net" \
  --database "mydb" \
  --resource-group "rg-webapp-dev-eastus"

Tests performed:

  • ✓ Server reachability
  • ✓ Database exists
  • ✓ Connection successful (using managed identity if configured)
  • ✓ Basic query execution (SELECT 1)
  • ✓ Firewall rules allow access
  • ✓ Encryption enabled

3. Verify Security Configurations

Check that security best practices are applied:

# HTTPS-only enforcement
az resource show --ids {resource-id} --query "properties.httpsOnly"

# Managed identity enabled
az resource show --ids {resource-id} --query "identity.type"

# TLS version
az resource show --ids {resource-id} --query "properties.minTlsVersion"

# Diagnostic logs enabled
az monitor diagnostic-settings list --resource {resource-id}

4. Generate Test Report

Output a comprehensive test report:

## Integration Test Report

**Deployment ID:** {deployment-id}
**Tested:** {timestamp}
**Duration:** {test-duration}

### Test Results

#### Function App: func-api-dev-eastus
- ✅ HTTP endpoint accessible (200 OK)
- ✅ Response time: 245ms (threshold: 3000ms)
- ✅ HTTPS enforcement verified
- ✅ Application Insights connected
- ⚠️  No custom health endpoint found (using default)

#### Storage Account: stwebappdev8k3m
- ✅ Blob service accessible
- ✅ Test blob created/read/deleted successfully
- ✅ HTTPS-only enforced
- ✅ TLS 1.2 minimum version set

#### Security Configuration
- ✅ All resources use HTTPS-only
- ✅ Managed identities configured
- ✅ Diagnostic logging enabled
- ✅ Resource tags applied correctly

### Summary

**Total Tests:** 12
**Passed:** 11 ✅
**Warnings:** 1 ⚠️
**Failed:** 0 ❌

**Overall Status:** HEALTHY ✅

### Recommendations

1. Consider adding custom health endpoint to Function App for better monitoring
2. Configure Application Insights alerts for failures
3. Enable auto-scaling if expecting variable load

### Next Steps

Your Azure resources are deployed and verified. You can now:
1. Deploy your application code to the Function App
2. Configure any application-specific settings
3. Set up CI/CD pipelines for automated deployments
4. Monitor resources in Azure Portal

**Azure Portal Links:**
- Function App: https://portal.azure.com/#@{tenant}/resource{function-app-id}
- Resource Group: https://portal.azure.com/#@{tenant}/resource{rg-id}

Test Scripts

All test scripts are located in the ./scripts/ directory:

  • test-function-app.sh - Function App health checks
  • test-storage.sh - Storage Account connectivity
  • test-database.sh - Database connection tests

Common Test Patterns

See test-patterns.md for detailed test patterns including:

  • Retry logic for transient failures
  • Health endpoint formats
  • Connection string handling
  • Managed identity authentication
  • Error diagnostics

Error Handling

If tests fail, provide diagnostic information:

❌ **Test Failed: Function App Endpoint**

**Error:** Connection refused
**Endpoint:** https://func-api-dev-eastus.azurewebsites.net

**Possible Causes:**
1. Function App still starting up (can take 2-3 minutes after deployment)
2. Network security group blocking access
3. Function App in stopped state

**Troubleshooting:**
1. Wait 2 minutes and retry
2. Check Function App status: `az functionapp show --name {name} --resource-group {rg} --query "state"`
3. View logs: `az webapp log tail --name {name} --resource-group {rg}`

**Retry Command:**
./scripts/test-function-app.sh --url {url} --retry 3 --delay 30

Skipping Tests

Some tests may not apply:

  • Resource Groups have no endpoints to test
  • Some resources may be private (no public access)

In these cases, output:

ℹ️ **Integration Tests: N/A**

No testable endpoints for Resource Group deployments.
Verified resource creation via Azure Resource Graph instead.

Usage Examples

After Function App deployment:

@git-ape deploy a python function app
[... deployment completes ...]
/azure-integration-tester {deployment-outputs}

Manual invocation:

/azure-integration-tester
Please provide deployment outputs or resource details:
- Function App URL: https://func-api-dev-eastus.azurewebsites.net
- Resource Group: rg-webapp-dev-eastus
- Storage Account: stwebappdev8k3m

Output Format

Always provide:

  • Detailed test results for each resource
  • Pass/fail status with diagnostics
  • Security configuration verification
  • Performance metrics (response times)
  • Overall health summary
  • Recommendations for improvements
  • Next steps for the user
  • Azure Portal links for monitoring

Other skills for the same job

different authors, same section of the catalogue
Azure Kubernetes Automatic Readiness
by microsoft
vendor ×3

Assess Kubernetes workloads and cluster configuration for AKS Automatic compatibility. Identifies incompatibilities, generates fixes, and guides migration from AKS Standard to AKS Automatic. WHEN: migrate to AKS Automatic, check AKS Automatic readiness, validate manifests for Automatic, assess cluster for Automatic compatibility, fix deployment for Automatic compatibility, identify AKS Automatic migration blockers, is my cluster ready for AKS Automatic.

13k tokens
Capacity
by microsoft
vendor ×3

Discovers available Azure OpenAI model capacity across regions and projects. Analyzes quota limits, compares availability, and recommends optimal deployment locations based on capacity requirements. USE FOR: find capacity, check quota, where can I deploy, capacity discovery, best region for capacity, multi-project capacity search, quota analysis, model availability, region comparison, check TPM availability. DO NOT USE FOR: actual deployment (hand off to preset or customize after discovery), quota increase requests (direct user to Azure Portal), listing existing deployments.

6k tokens scripts
Customize
by microsoft
vendor ×3

Interactive guided deployment flow for Azure OpenAI models with full customization control. Step-by-step selection of model version, SKU (GlobalStandard/Standard/ProvisionedManaged), capacity, RAI policy (content filter), and advanced options (dynamic quota, priority processing, spillover). USE FOR: custom deployment, customize model deployment, choose version, select SKU, set capacity, configure content filter, RAI policy, deployment options, detailed deployment, advanced deployment, PTU deployment, provisioned throughput. DO NOT USE FOR: quick deployment to optimal region (use preset).

8k tokens
Deploy Model
by microsoft
vendor ×3

Unified Azure OpenAI model deployment skill with intelligent intent-based routing. Handles quick preset deployments, fully customized deployments (version/SKU/capacity/RAI policy), and capacity discovery across regions and projects. USE FOR: deploy model, deploy gpt, create deployment, model deployment, deploy openai model, set up model, provision model, find capacity, check model availability, where can I deploy, best region for model, capacity analysis. DO NOT USE FOR: listing existing deployments (use foundry_models_deployments_list MCP tool), deleting deployments, agent creation (use agent/create), project creation (use project/create).

26k tokens scripts
Preset
by microsoft
vendor ×3

Intelligently deploys Azure OpenAI models to optimal regions by analyzing capacity across all available regions. Automatically checks current region first and shows alternatives if needed. USE FOR: quick deployment, optimal region, best region, automatic region selection, fast setup, multi-region capacity check, high availability deployment, deploy to best location. DO NOT USE FOR: custom SKU selection (use customize), specific version selection (use customize), custom capacity configuration (use customize), PTU deployments (use customize).

9k tokens
Lamindb
by christophacham
×3

This skill should be used when working with LaminDB, an open-source data framework for biology that makes data queryable, traceable, reproducible, and FAIR. Use when managing biological datasets (scRNA-seq, spatial, flow cytometry, etc.), tracking computational workflows, curating and validating data with biological ontologies, building data lakehouses, or ensuring data lineage and reproducibility in biological research. Covers data management, annotation, ontologies (genes, cell types, diseases, tissues), schema validation, integrations with workflow managers (Nextflow, Snakemake) and MLOps platforms (W&B, MLflow), and deployment strategies.

22k tokens
Latchbio Integration
by christophacham
×3

Latch platform for bioinformatics workflows. Build pipelines with Latch SDK, @workflow/@task decorators, deploy serverless workflows, LatchFile/LatchDir, Nextflow/Snakemake integration.

12k tokens
Modal
by christophacham
×3

Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.

17k tokens

How to use it

Copy the folder

Take azure/azure-integration-tester from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.