Host a Static Website on Amazon S3, Written in HCL
A static website hosted on AWS S3, written in HCL
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set aws-hcl-s3-foldercd pulumi-examples/aws-hcl-s3-folderA static website that uses S3’s website support, written in Pulumi HCL. Pulumi installs the HCL language plugin and the Terraform AWS provider automatically the first time you run the program.
Deploying and running the program#
Note: some values in this example will be different from run to run. These values are indicated
with ***.
-
Create a new stack:
Terminal window pulumi stack init website-testing -
Configure your AWS credentials and set the AWS region:
Terminal window export AWS_REGION=us-west-2 -
Run
pulumi upto preview and deploy changes. After the preview is shown you will be prompted if you want to continue or not.Terminal window pulumi upUpdating (website-testing)Type Name Status+ pulumi:pulumi:Stack aws-hcl-s3-folder-website-testing created+ ├─ aws:s3:Bucket site_bucket created+ ├─ aws:s3:BucketWebsiteConfiguration site_config created+ ├─ aws:s3:BucketPublicAccessBlock public_access_block created+ ├─ aws:s3:BucketObject site_files["favicon.png"] created+ ├─ aws:s3:BucketObject site_files["index.html"] created+ └─ aws:s3:BucketPolicy bucket_policy createdResources:+ 7 createdDuration: *** -
To see the resources that were created, run
pulumi stack output:Terminal window pulumi stack outputCurrent stack outputs (2):OUTPUT VALUEbucket_name s3-website-bucket***website_url ***.s3-website-us-west-2.amazonaws.com -
Open the site URL in a browser to see both the rendered HTML and the favicon:
Terminal window pulumi stack output website_url***.s3-website-us-west-2.amazonaws.com -
To clean up resources, run
pulumi destroyand answer the confirmation question at the prompt.