Naming Conventions

Table of Contents

Overview

This document defines the naming conventions for all resources and artifacts created by the S3 Provisioner Tool.

Configuration Variables

All naming patterns use these variables from the configuration file:

  • {company_prefix} — Company identifier (e.g., edge)

  • {env} — Environment (e.g., prod, dev, staging)

  • {tenant_id} — Tenant identifier (e.g., a001)

  • {region} — AWS region (e.g., us-west-1)

  • {solution} — Solution name (e.g., master-solution, customer-churn)

The stem is the base name prefix used across all resources and files. Every resource the tool creates starts with this stem, making it easy to identify and manage all artifacts from a single deployment.

Stem pattern: {company_prefix}-{env}-{tenant_id}-{region}-s3

Stem examples:

  • edge-prod-a001-us-west-1-s3

  • acme-dev-a003-us-west-2-s3

  • health-prod-a002-us-east-1-s3

For dedicated bucket deployments (Pattern B), the solution name is appended to the stem:

Pattern B stem: {company_prefix}-{env}-{tenant_id}-{region}-s3-{solution}

Pattern B examples:

  • edge-prod-b001-us-west-1-s3-customer-churn

  • edge-prod-b001-us-west-1-s3-fraud-detection

AWS Resources

S3 Bucket (Global)

Auto-generated pattern: {stem} or {stem}-{solution}

Examples:

  • edge-prod-a001-us-west-1-s3 (Pattern A — shared bucket)

  • edge-prod-b001-us-west-1-s3-customer-churn (Pattern B — dedicated bucket)

Custom names: When bucket_name_override is set, the custom name is used instead.

S3 bucket naming rules:

  • 3–63 characters

  • Lowercase letters, numbers, hyphens only

  • Must start/end with letter or number

  • No underscores, spaces, or uppercase

  • Globally unique across all AWS accounts

CloudFormation Stack (Regional)

Pattern: {stem}-stack or {stem}-{solution}-stack

Examples:

  • edge-prod-a001-us-west-1-s3-stack

  • edge-prod-b001-us-west-1-s3-customer-churn-stack

IAM Policy (Global)

Pattern: {stem}-iam-policy or {stem}-{solution}-iam-policy

Examples:

  • edge-prod-a001-us-west-1-s3-iam-policy

  • edge-prod-b001-us-west-1-s3-customer-churn-iam-policy

System Tags

The tool automatically applies 7 system tags to all resources:

Tag Key

Source

CompanyName

client.company_name

CompanyPrefix

client.company_prefix

TenantId

client.tenant_id

Environment

client.environment

Region

client.region

ManagedBy

s3-provisioner

CreatedDate

Auto-generated timestamp

Local Artifacts

Configuration Files

Pattern: {stem}.yaml

Location: s3/configs/

Examples:

  • edge-prod-b001-us-west-1-s3.yaml

  • edge-prod-b001-us-west-1-s3-customer-churn-s3.yaml

CloudFormation Templates

Pattern: {stem}-template.yaml

Location: s3/templates/

Examples:

  • edge-prod-a001-us-west-1-s3-template.yaml

  • edge-prod-b001-us-west-1-s3-customer-churn-template.yaml

IAM Policy Files

Pattern: {stem}-iam-policy.json

Location: s3/reports/

Examples:

  • edge-prod-a001-us-west-1-s3-iam-policy.json

  • edge-prod-b001-us-west-1-s3-customer-churn-iam-policy.json

Usage Assumptions Files

Pattern: {stem}-usage.yaml

Location: s3/configs/

Examples:

  • edge-prod-a001-us-west-1-s3-usage.yaml

  • edge-prod-b001-us-west-1-s3-customer-churn-usage.yaml

Log Files

Pattern: {stem}-{action}-{solution}-{timestamp}.log

Location: s3/reports/

Examples:

  • edge-prod-b001-us-west-1-s3-create-policy-None-20260228-020700-792.log

  • edge-prod-b001-us-west-1-s3-customer-churn-create-bucket-customer-churn-20260228-023020-467.log

HTML Reports

Pattern: {stem}-{action}-{solution}-{timestamp}.html

Location: s3/reports/

Examples:

  • edge-prod-b001-us-west-1-s3-create-prov-template-master-solution-20260228-020702-154.html

  • edge-prod-b001-us-west-1-s3-customer-churn-create-bucket-customer-churn-20260228-023021-194.html

Naming Convention Summary

Resource

Pattern

S3 Bucket

{stem} or {stem}-{solution}

CloudFormation Stack

{stem}-stack

IAM Policy

{stem}-iam-policy

Config File

{stem}.yaml

Template File

{stem}-template.yaml

Policy File

{stem}-iam-policy.json

Usage File

{stem}-usage.yaml

Log File

{stem}-{action}-{solution}-{timestamp}.log

HTML Report

{stem}-{action}-{solution}-{timestamp}.html

Where stem is {company_prefix}-{env}-{tenant_id}-{region}-s3 (Pattern A) or {company_prefix}-{env}-{tenant_id}-{region}-s3-{solution} (Pattern B).