Files
2026-08-12 13:29:42 +03:00

89 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AWS S3 Bucket (Go) Pulumi Template
This Pulumi template bootstraps a minimal Go project that provisions an AWS S3 bucket.
It uses the Pulumi AWS provider to create the bucket and exports its name as an output.
## When to Use This Template
Use this template when you want to:
- Get started quickly with Pulumi and Go for AWS workloads
- Provision a simple S3 bucket with minimal configuration
- Learn how Pulumi programs are structured in Go
## Providers & Resources
- **AWS Provider** (`github.com/pulumi/pulumi-aws/sdk/v6`)
- **Resource Created**: `aws:s3/bucket:Bucket` via `s3.NewBucketV2`
## Outputs
- `bucketName`: The unique name/ID of the created S3 bucket
## Prerequisites
- Go 1.20 or later
- An AWS account with credentials configured in your environment (for example, via the AWS CLI)
- Pulumi CLI installed and authenticated
## Getting Started
1. Create a new stack/project from this template:
```bash
pulumi new aws-go
```
2. Follow the interactive prompts to set:
- **Project name** (used in `Pulumi.yaml`)
- **Project description**
- **AWS region** (defaults to `us-east-1`)
3. Preview your changes:
```bash
pulumi preview
```
4. Deploy your stack:
```bash
pulumi up
```
5. Verify the output:
```bash
pulumi stack output bucketName
```
## Project Layout
.
├── Pulumi.yaml Pulumi project settings and metadata
├── go.mod Go module definition (updated on `pulumi new`)
└── main.go Pulumi program that creates the S3 bucket
## Configuration
The following configuration keys are available:
- `aws:region` (string): The AWS region where resources will be created. Default: `us-east-1`.
You can view or update configuration values with:
```bash
pulumi config get aws:region
pulumi config set aws:region us-west-2
```
## Next Steps
- Customize the bucket by passing options to `s3.NewBucketV2`, such as versioning, encryption, tags, etc.
- Add additional AWS resources (e.g., IAM roles, DynamoDB tables) by importing and using other Pulumi AWS SDK packages.
- Explore Pulumis Go SDK patterns, such as component resources and functions.
- Integrate infrastructure as code into your CI/CD pipelines.
## Getting Help
If you run into issues or have questions:
- Check the Pulumi documentation: https://www.pulumi.com/docs/
- Browse AWS provider reference: https://www.pulumi.com/registry/packages/aws/api-docs/
- Ask in the Pulumi Community Slack: https://slack.pulumi.com/
- Open an issue on the templates repository (if available)
Enjoy building cloud infrastructure with Go and Pulumi!