Skip to content

Implement Environment-Aware Configuration and Naming Conventions for Multi-Environment Deployments #4

@AndrewGearhart

Description

This tool only permits a single deployment based on the current scripts. Make adjustments that will allow for multiple cloud formation stacks to be deployed.

This issue focuses on enhancing the PDF Accessibility project to support better resource management and deployment across multiple environments (e.g., dev, prod). The goal is to make deployments more scalable, avoid naming conflicts, and improve organization through consistent naming and configuration.

Key Changes:

  • Environment Context: Add support for env and stackBase parameters via CDK context or environment variables, defaulting to dev and pdfaccessibility respectively.
  • Resource Naming: Update all AWS resources (S3 buckets, ECS clusters, Lambda functions, Step Functions, etc.) to use a consistent prefix format like <stackBase>-<env>-<resource> for uniqueness and clarity.
  • Secrets Management: Namespace Secrets Manager paths to /{stackBase}/{env}/client_credentials for environment isolation.
  • Tagging and Metadata: Add environment and project tags to resources, plus environment variables in containers/Lambdas.
  • Repository Cleanup: Remove all .DS_Store files to keep the repo clean.
  • Documentation: Update README.md with deployment patterns, naming conventions, and examples for different environments.

Benefits:

  • Easier multi-environment deployments without conflicts.
  • Improved traceability and organization via tags and names.
  • Better security through namespaced secrets.
  • Cleaner repository state.

Acceptance Criteria:

  • CDK stack deploys successfully with environment-specific names.
  • Resources are tagged appropriately.
  • Secrets are accessed via new paths.
  • README reflects the new deployment options.
  • No .DS_Store files in the repository (unrelated, basic clean-up)

Related Commits:

  • Enhance environment-aware configuration and naming conventions across the project
  • Remove unnecessary .DS_Store files from the repository

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions