Releases: aws-containers/retail-store-sample-app
v1.3.0
1.3.0 (2025-09-16)
Features
- Add EventBridge lifecycle events for ECS Container Insights and update ADOT to CloudWatch Agent (#913) (549594b)
Bug Fixes
- Add UI teal theme color (#923) (b382620)
- deps: update dependency org.openapitools:jackson-databind-nullable to v0.2.7 (#926) (46849a7)
- deps: update dependency org.projectlombok:lombok to v1.18.40 (#927) (4544834)
- deps: update dependency org.springframework.ai:spring-ai-bom to v1.0.2 (#928) (948ce82)
- deps: update dependency org.springframework.boot:spring-boot-starter-parent to v3.5.5 (#929) (72fa4e8)
- deps: update kiota to v1.8.10 (#930) (a1012bf)
- Improved CW Logging for ECS default deployment (#921) (eff0668)
- Revert Spring AI to 1.0.0 (0a9994b)
- wait for VPC resource controller before deploying workloads (#914) (902302a)
v1.2.4
v1.2.3
v1.2.2
v1.2.1
1.2.1 (2025-07-03)
Bug Fixes
- deps: update dependency software.amazon.awssdk:bom to v2.31.76 (#857) (9565e5e)
- deps: update kiota to v1.8.7 (#854) (726ba0b)
- deps: update module github.com/gin-gonic/gin to v1.10.1 (#855) (e81b40e)
- deps: update opentelemetry-go monorepo to v1.37.0 (#819) (5312383)
- UI mock catalog tag filters (114b3c9)
v1.2.0
1.2.0 (2025-07-02)
Features
- Allow serving sample images from filesystem (#853) (43f3283)
- Optimize asset image sizes (#840) (65a7748)
- Upgraded checkout to NestJS v11 (#842) (4f1c921)
Bug Fixes
- deps: bump golang.org/x/crypto in /src/catalog (#829) (50ff85c)
- deps: bump golang.org/x/net from 0.34.0 to 0.38.0 in /src/catalog (#831) (6303846)
- deps: update dependency io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom to v2.17.0 (#811) (7ee50f7)
- deps: update dependency io.swagger:swagger-annotations to v1.6.16 (#849) (17b44b6)
- deps: update dependency org.projectlombok:lombok to v1.18.38 (#850) (2f76853)
- deps: update dependency org.springdoc:springdoc-openapi-starter-webmvc-ui to v2.8.9 (#851) (4a1a201)
- deps: update dependency software.amazon.awssdk:bom to v2.31.75 (#852) (3229234)
- UI chart should only set theme if configured (88ec5cd)
v1.1.0
1.1.0 (2025-03-23)
Features
Bug Fixes
- deps: update dependency axios to v1.8.4 (#791) (06fe506)
- deps: update dependency de.codecentric:chaos-monkey-spring-boot to v3.1.4 (#769) (8aeeea4)
- deps: update dependency de.codecentric:chaos-monkey-spring-boot to v3.2.0 (#810) (aff5aa9)
- deps: update dependency org.springframework.boot:spring-boot-starter-parent to v3.4.4 (#802) (3a9b53f)
- deps: update dependency org.springframework.cloud:spring-cloud-gateway-webflux to v4.2.1 (#798) (0506dac)
- deps: update dependency reflect-metadata to ^0.2.0 (#813) (4b67fc5)
- deps: update dependency rxjs to v7.8.2 (#772) (04d1b3c)
- deps: update dependency software.amazon.awssdk:bom to v2.31.5 (#793) (83365cb)
- deps: update dependency software.amazon.awssdk:bom to v2.31.6 (#815) (40f9e98)
- deps: update module gorm.io/plugin/opentelemetry to v0.1.12 (#799) (b04eb5f)
v1.0.2
v1.0.1
v1.0.0
1.0.0 (2025-02-28)
Store redesign
The store UI has been rebuilt using Tailwind CSS instead of Bootstrap resolving #594, and its look and feel has been modernized. This also provides the ability to select different colored "themes" that switch the primary color.
The theme of the store has also been changed from watches to "secret agent gadgets". The sample data was generated with generative AI via Amazon Nova.
Better experience running UI standalone
Although it was possible to run the UI component by itself the experience was degraded from running all the components. For example, the sample product data was auto-generated and not consistent with the data in the catalog component.
Running the UI component now provides the same experience as running the full architecture, which makes running the UI component standalone more viable.
Metadata page
The UI component now provides a page that displays information about the environment the container is deployed in, resolving issue #588. This is useful for demonstrations where it is necessary to show aspects such as cross-AZ load balancing and many others.
This is implemented using OpenTelemetry resource provider implementations for Java and includes metadata for Kubernetes, Amazon EC2, Amazon ECS and AWS Lambda.
Generative AI chat bot
An optional chat bot feature has been added to the UI component which allows the application to be used to demonstrate basic LLM inference scenarios. The chat bot is compatible with Amazon Bedrock and OpenAI compatible endpoints.
Catalog persistence
The catalog component persistence layer has been migrated from sqlx to gorm. This provide the ability to run the catalog with in-memory persistence, and resolves the error reported in #154. Automated tests are also implemented resolving #87.
Consistent configuration parameters
All components now use consistent environment variable names for configuring behavior, generally starting with RETAIL_<component_name>_.... This provides better decoupling from the various underlying frameworks across components, especially Spring Boot. For example there is no more reliance on Spring Boot profiles to configure behavior.
Configuring similar behavior across different components is also now more consistent. For example configuring persistence and messaging.
Reorganized repository
Various changes have been made to the layout of the repository:
- Helm charts are now colocated with their respective components
- An
appcomponent has been added for artifacts related to the entire application such as docker compose file, Helmfile, Tiltfile and Helm chart. - Terraform has been moved to a top level directory
Migrated e2e tests to Cypress
The end-to-end tests have been migrated from Playwright to Cypress
Migrated UI OpenAPI clients to kiota
The API client code generated from the OpenAPI specifications of the various components for the UI have been migrated to kiota. The eventual goal is to provide a consistent set of tooling for generating client code across all components.
Java OpenTelemetry integration
Previously OpenTelemetry for Java components was implemented by installing the agent in the Dockerfile. This has now been migrated to install the OpenTelemetry dependencies directly as Java packages. This simplifies the Dockerfile and provides a path to native executables for the Java components.
Asset component removed
The "asset" component was previously used to serve product images. This component has been removed to simplify the architecture. Images are now served by the UI component directly.
Release process
The repository now uses release-please to manage the release process, allowing the removal of the previous release notes generation artifacts.
The previous contents of the dist directory like the docker compose and kubernetes manifest files are now attached to the GitHub release instead of committed.
Developer experience
The repository now includes optional components to help with consistent developer experience for contributing to the sample application using devenv and nx. This helps streamline developer environment setup and interaction with the various components across the monorepo.
This has also allowed us to remove the bash scripts for building/publishing container images and helm charts.
See the developer guide for more information.