Skip to content

feat(iac): add Pulumi TypeScript and Python samples for AgentCore#1111

Open
dirien wants to merge 2 commits intoawslabs:mainfrom
dirien:feat/add-pulumi-iac-examples
Open

feat(iac): add Pulumi TypeScript and Python samples for AgentCore#1111
dirien wants to merge 2 commits intoawslabs:mainfrom
dirien:feat/add-pulumi-iac-examples

Conversation

@dirien
Copy link

@dirien dirien commented Mar 15, 2026

Summary

I'm on the Developer Relations team at Pulumi. I wrote Pulumi implementations of the four AgentCore IaC samples that already ship in CloudFormation, CDK, and Terraform -- in both TypeScript and Python. Each one has been deployed and tested end-to-end against a real AWS account.

This PR adds eight samples under 04-infrastructure-as-code/pulumi/:

TypeScript (pulumi/typescript/)

  • basic-runtime -- Simple Strands agent. Tested: 2/2 passed.
  • mcp-server-agentcore-runtime -- MCP server with Cognito JWT auth (add_numbers, multiply_numbers, greet_user). Tested: all 3 tools correct.
  • multi-agent-runtime -- Two-agent A2A system. Tested: orchestrator handled a simple query directly and delegated a complex one to the specialist.
  • end-to-end-weather-agent -- Weather agent with Browser, Code Interpreter, and Memory. Tested: agent wrote activity recommendations to S3.

Python (pulumi/python/)

Same four samples ported to Python, using uv as the package manager and Pulumi's toolchain: uv runtime option. Same test results as the TypeScript versions.

Shared patterns across all eight samples

  • Lambda-triggered CodeBuild for ARM64 image builds (no local shell scripts)
  • Least-privilege IAM policies scoped to exact resource ARNs
  • Test scripts for validation
  • README with architecture, deployment, testing, troubleshooting, and cost estimates

TypeScript samples include ESLint with @typescript-eslint/no-deprecated. Python samples pass ruff check and ruff format.

The IaC README now lists Pulumi (TypeScript) and Pulumi (Python) alongside CloudFormation, CDK, and Terraform. A pulumi/README.md mirrors the structure of the existing cdk/README.md.

dirien added 2 commits March 15, 2026 18:14
Add four Pulumi TypeScript infrastructure-as-code samples that mirror
the existing CDK, CloudFormation, and Terraform examples:

- basic-runtime: Simple Strands agent on AgentCore
- mcp-server-agentcore-runtime: MCP server with Cognito JWT auth
- multi-agent-runtime: Two-agent A2A communication system
- end-to-end-weather-agent: Weather agent with Browser, Code Interpreter, and Memory

Each sample uses Lambda-triggered CodeBuild for ARM64 image builds,
ESLint with deprecation checking, and includes test scripts.

Also updates the IaC README to reference Pulumi alongside existing tools.
…ages

Add four Pulumi Python samples mirroring the existing TypeScript ones,
using uv as the package manager with Pulumi's toolchain: uv option.

Update pulumi/README.md to show both TypeScript and Python samples,
matching the structure of the existing cdk/README.md.

Update the IaC root README to reference Pulumi (TypeScript) and
Pulumi (Python) in all implementation links, prerequisites, and
repository structure sections.
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