FEAT: Init Infra App

This commit is contained in:
fahd
2026-08-12 13:29:42 +03:00
parent 3f8a807254
commit d531c111aa
6 changed files with 664 additions and 0 deletions
+89
View File
@@ -0,0 +1,89 @@
# 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 Pulumi’s 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 template’s repository (if available)
Enjoy building cloud infrastructure with Go and Pulumi!