config instanceType string { __logicalName = "InstanceType" default = "t3.micro" } ec2Ami = invoke("aws:index/getAmi:getAmi", { filters = [{ name = "name", values = ["amzn-ami-hvm-*-x86_64-ebs"] }], owners = ["137112412989"], mostRecent = true }).id resource webSecGrp "aws:ec2/securityGroup:SecurityGroup" { __logicalName = "WebSecGrp" ingress = [{ protocol = "tcp", fromPort = 80, toPort = 80, cidrBlocks = ["0.0.0.0/0"] }] } resource webServer "aws:ec2/instance:Instance" { __logicalName = "WebServer" instanceType = instanceType ami = ec2Ami userData = "#!/bin/bash\necho 'Hello, World from ${webSecGrp.arn}!' > index.html\nnohup python -m SimpleHTTPServer 80 &" vpcSecurityGroupIds = [webSecGrp.id] } resource usEast2Provider "pulumi:providers:aws" { __logicalName = "UsEast2Provider" region = "us-east-2" } resource myBucket "aws:s3/bucket:Bucket" { __logicalName = "MyBucket" options { provider = usEast2Provider } } output instanceId { __logicalName = "InstanceId" value = webServer.id } output publicIp { __logicalName = "PublicIp" value = webServer.publicIp } output publicHostName { __logicalName = "PublicHostName" value = webServer.publicDns }