← AWS Retail Store Sample AppExamplesLegal NoticePrivacy

StackToIT Migration Intelligence Workspace

PROPOSAL — generated by StackToIT Assess. Architect review required before any decision.

Partially executable migration package · Proposal only · Not approved.

Technical details: run, versions, digest and evidence freshness

Assessment

Assessment
default (assessment format 0.24.0)
Assessment timestamp
Generated 2026-11-02 12:08 UTC by stacktoit 0.6.0-11562-g1966ddf116 (1966ddf116)
Run
f6267c3f-2848-4aa5-89df-5fee8b15b3b9 · source digest sha256:812c5ae3f6cc8530163abbf5b6fbe305ed3b363c4886ec6b87623db857ea0c70
Source snapshot
partly decided only at plan time · aws not locked; random not locked
STACKIT target profile
Stable network model: the experimental STACKIT VPC resources are not used (STACKIT_STABLE)
STACKIT provider version
0.121.0
Knowledge base version
0.384.0
Evidence freshness
Not assessed — Evidence freshness as one measure is not assessed in this build. Dated evidence is shown where it is used: each STACKIT support option and each assurance row states when it was verified (verified_at, and recheck_after for support), in support_suitability and assurance. The date beside a readiness dimension is the assessment date, not a retrieval date.

Staleness: Not assessed — This build has no change detection, so there has been no re-check since the assessment was made (Generated 2026-11-02 12:08 UTC). The source may have changed since.

Source checks: Built-in source checks passed — OpenTofu validation of the source did not run (LOCK_FILE)

Run status: COMPLETE (report published). Source: partly decided only at plan time. Draft: GENERATED. The report was written whole; this is not a statement that the migration is ready.

Executive lens: the sections are in the order this reader usually wants, and Architecture and Engineering Evidence are put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Architect lens: the sections are in the order this reader usually wants, and Costs is put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Platform lens: the sections are in the order this reader usually wants, and Costs is put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Security lens: the sections are in the order this reader usually wants, and Costs and Migration Plan are put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Application owner lens: the sections are in the order this reader usually wants, and Engineering Evidence is put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Programme lens: the sections are in the order this reader usually wants, and Engineering Evidence is put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

FinOps lens: the sections are in the order this reader usually wants, and Architecture and Engineering Evidence are put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Engineering lens: the sections are in the order this reader usually wants, and Costs is put aside. Nothing is removed from the page: choose All to show every section in the order of the navigation, or follow a link into a section that is put aside.

Sovereignty

Dependencies, jurisdiction, data placement, key control and exit paths, source against target.

Sovereignty is not residency, and it is never expressed as a percentage or a score. This page is technical evidence and gaps: it does not certify legal compliance, and legal conclusions stay with counsel.

Requirement

Sovereignty requirement: not provided. No sovereignty requirement was provided: no applications file gives a tier or constraints. It is not inferred from the location of the company or of the provider.

The thirteen dimensions

Each dimension states the requirement, what the source shows, what the target is proposed to be, the delta, the evidence, what is unknown and the actions. A statement that reads not assessed says that this build has no evidence for it; it is not a finding.

Sovereignty by dimension (13 dimensions). A state says what is open for the dimension, never that it is met.
DimensionStateRequirementObserved in the sourceProposed for the targetDeltaEvidenceUnknownsActions
Data location Evidence required NOT_PROVIDED Not assessed The location of the source resources is not read: this build computes no region or zone placement for the source. Stated Name resolution: stackit_network.vpc_vpc_private, stackit_network.vpc_vpc_public take the shared variable default_ipv4_nameservers, which defaults to the addresses of the STACKIT DNS Resolver (beta) in eu01 (192.214.161.53, 213.17.17.17, 188.34.111.111), so those name queries go to the resolver STACKIT operates and not to the public resolvers 1.1.1.1, 8.8.8.8 and 9.9.9.9 that STACKIT sets in a public project when none are given. The resolver is a beta product documented for workloads inside STACKIT (docs.stackit.cloud, DNS Resolver, Concepts); no check that it answers from these networks is made here, and who operates it and under which jurisdiction is not assessed here. The capability catalogue lists the STACKIT services of the draft as available in: eu01, eu02. That a service is available in a region is a fact about the service. Region assumed for pricing: eu01 (default; no input chose a region). The catalogue lists the service of 13 units there, but no input or profile has chosen the region, so no resource is tied to it. Not assessed No source location is established, so no change of location is stated. pointers into workspace.json The provider's own statement on data location is a statement of the provider with control shared: STACKIT states that the development of its cloud takes place in Germany, that its servers and data centers are located in Germany and Austria, and that its cloud operates in accordance with European data protection standards. It names no region id, so it does not tie any resource of the draft to a region.
Where backups, logs and replicas are stored is the subject of the backup chain and the telemetry chain.
Jurisdiction chain Not assessed NOT_PROVIDED Not assessed The jurisdiction chain (the legal seat of the provider, of its owners and of its operators, and the legal reach over them) is not assessed. It is not a fact of the Terraform source or of the draft, and legal conclusions stay external. Not assessed No target state is stated: the source state is not established. Not assessed No change is stated. Which legal order applies to the provider, to its parent organisations and to its operators is a question for counsel, not for this build.
Operator access Not assessed NOT_PROVIDED Not assessed Who at the provider or at an operator can reach the resources and the data, and under which conditions, is not assessed. It is not a fact of the Terraform source or of the draft. Not assessed No target state is stated: the source state is not established. Not assessed No change is stated. The access model of the provider's staff and subcontractors is not a fact of the Terraform source.
Key control Evidence required NOT_PROVIDED Stated A customer-managed key may be stated, but its value is not visible statically, on: module.retail_app_ecs.aws_secretsmanager_secret.catalog_db, module.retail_app_ecs.aws_secretsmanager_secret.catalog_opensearch. Stated A customer-managed key is a separate setting that exists only where the source names a key: no platform encryption stands in for it, and whether the key management of the source is equivalent to the STACKIT key service is not established. Which target services of the draft can use a key of the customer is not established here. Not assessed Whether key ownership changes is not established: the key of the source and the key of the target are not compared. pointers into workspace.json Who holds the key material and who can use it on the target is not established.
Identity chain Decision required NOT_PROVIDED Stated The source names identities for its workloads or states them as units: module.retail_app_ecs.module.carts_service.aws_ecs_service.this, module.retail_app_ecs.module.catalog_service.aws_ecs_service.this, module.retail_app_ecs.module.checkout_service.aws_ecs_service.this, module.retail_app_ecs.module.orders_service.aws_ecs_service.this, module.retail_app_ecs.module.ui_service.aws_ecs_service.this. Stated The draft attaches a STACKIT service account to a server only where the identity plan attaches it exactly; every other attachment is stated as open. Where the draft writes a project role assignment (for an AWS role, machine user or IAM group it turns into service accounts or members), the role it grants is a variable the architect chooses, because an AWS action is not translated into a STACKIT role: the draft derives no role from the source. Not assessed Whether the identity dependency changes is not established: the privilege delta and the external identity provider are not assessed. pointers into workspace.json Whether an external identity provider is a dependency of the sign-in of people is not assessed.
The privilege delta between the source identities and the target roles is not assessed.
the step "Decide how module.retail_app_ecs.module.carts_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.carts_service.aws_ecs_service.this gets…" the step "Decide how module.retail_app_ecs.module.catalog_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.catalog_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.checkout_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.checkout_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.orders_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.orders_service.aws_ecs_service.this…" the step "Decide how module.retail_app_ecs.module.ui_service.aws_ecs_service.this pulls…" the step "Decide how module.retail_app_ecs.module.ui_service.aws_ecs_service.this gets…"
Telemetry chain Not assessed NOT_PROVIDED Not assessed No log sink of the source is read in this run. That is not a finding that no telemetry leaves the estate. Stated The draft writes log sources as STACKIT Logs instances. Where an export of the source goes is stated in the plan of the log source, not here. Not assessed Whether the destination of the telemetry changes is not established. capability:observability.logs Where metrics, traces and agent telemetry go is not read by this build.
Backup chain Evidence required NOT_PROVIDED Stated The contracts of the source observe a backup, retention or geo-replication setting on: module.dependencies.module.catalog_rds.aws_rds_cluster.this, module.dependencies.module.orders_rds.aws_rds_cluster.this. Not assessed Where the backups of the target are stored and who operates the destination is not stated by the draft or by this build. Not assessed Whether the destination of the backups changes is not established. pointers into workspace.json The destination of the backups and replicas, and the jurisdiction of that destination, are not assessed.
Supply chain Observed NOT_PROVIDED Stated The source records these Terraform providers, required by its configuration or locked in its lock file: aws, random. Stated The draft is written for the STACKIT provider 0.121.0. Not assessed Whether the supply chain of the estate changes is not established. pointers into workspace.json The registries and the build chain of the providers, and the provenance of the modules the source calls, are not assessed.
Third-party processing Evidence required NOT_PROVIDED Stated The source depends on providers or resource types the knowledge base holds no schema of: provider random. Not assessed The draft names no STACKIT counterpart for these dependencies. Not assessed Whether a third party processes the data after the move is not established. pointers into workspace.json What data a third-party provider or service handles is not read from the Terraform source.
Open interfaces Not assessed NOT_PROVIDED Not assessed Whether the interfaces the source depends on are open standards and whether the target keeps them is not assessed. Not assessed No target state is stated: the source state is not established. Not assessed No change is stated. Which of the interfaces the source uses are proprietary is not read.
Data portability Not assessed NOT_PROVIDED Not assessed Whether the data can be exported in a documented format, and by which path, is not assessed. Not assessed No target state is stated: the source state is not established. Not assessed No change is stated. How the data of each stateful unit leaves its service is not read.
Application coupling Not assessed NOT_PROVIDED Not assessed The coupling of application code to the interfaces of the source (SDKs, proprietary protocols) is not assessed: the application code is not scanned. Not assessed No target state is stated: the source state is not established. Not assessed No change is stated. Which SDKs and protocols the application code uses is not read.
Exitability Observed NOT_PROVIDED Not assessed The interface, data format, code coupling, replacement complexity, extraction path and alternatives of the source's dependencies are not assessed. Stated The draft is provider-specific Terraform for the STACKIT provider; that is the only exit fact stated, and it is listed per dependency in the exitability entries. Not assessed No change of exit cost is stated: no cost, no duration and no complexity is estimated. Every field of the exitability model but the Terraform coupling is not assessed, so no exit path is proven and none is ruled out.

Dependencies, source to target

The dependencies of the source and what the draft makes of them. A dependency replaced is a unit the knowledge base maps to a STACKIT service; retained is a source type the knowledge base does not know, for which the draft names no counterpart.

38 dependencies
SourceSource typeTarget serviceChangeDimensions it bears on
provider:randomsource providernoneretainedsupply chain, third-party processing
module.dependencies.aws_mq_broker.mqaws_mq_brokerSTACKIT RabbitMQreplaceddata location, exitability
module.dependencies.module.catalog_opensearch.aws_opensearch_domain.thisaws_opensearch_domainSTACKIT OpenSearchreplaceddata location, exitability
module.dependencies.module.catalog_rds.aws_rds_cluster.thisaws_rds_clusterSTACKIT MariaDBreplaceddata location, backup chain, exitability
module.dependencies.module.checkout_elasticache_redis.aws_elasticache_replication_group.defaultaws_elasticache_replication_groupSTACKIT Key Value Store (Valkey)replaceddata location, exitability
module.dependencies.module.dynamodb_carts.aws_dynamodb_table.thisaws_dynamodb_tableSTACKIT MongoDB Flex (alternative — data-model redesign; PostgreSQL Flex JSONB is the other option)replaceddata location, exitability
module.dependencies.module.orders_rds.aws_rds_cluster.thisaws_rds_clusterSTACKIT PostgreSQL Flexreplaceddata location, backup chain, exitability
module.retail_app_ecs.aws_cloudwatch_log_group.ecs_tasksaws_cloudwatch_log_groupSTACKIT Logsreplaceddata location, exitability
module.retail_app_ecs.aws_ecs_cluster.clusteraws_ecs_clusterSTACKIT Kubernetes Engine (SKE)replaceddata location, exitability
module.retail_app_ecs.aws_kms_key.cmkaws_kms_keySTACKIT KMSreplaceddata location, exitability
module.retail_app_ecs.aws_secretsmanager_secret.catalog_dbaws_secretsmanager_secretSTACKIT Secrets Managerreplaceddata location, key control, exitability
module.retail_app_ecs.aws_secretsmanager_secret.catalog_opensearchaws_secretsmanager_secretSTACKIT Secrets Managerreplaceddata location, key control, exitability
module.retail_app_ecs.aws_secretsmanager_secret.mqaws_secretsmanager_secretSTACKIT Secrets Managerreplaceddata location, exitability
module.retail_app_ecs.aws_secretsmanager_secret.orders_dbaws_secretsmanager_secretSTACKIT Secrets Managerreplaceddata location, exitability
module.retail_app_ecs.module.alb.aws_lb.thisaws_lbSTACKIT Application Load Balancerreplaceddata location, exitability
module.retail_app_ecs.module.alb.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.alb_sg.aws_security_group.this_name_prefixaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.carts_service.aws_ecs_service.thisaws_ecs_serviceSTACKIT Kubernetes Engine (SKE)replaceddata location, identity chain, exitability
module.retail_app_ecs.module.carts_service.aws_iam_role.task_execution_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.carts_service.aws_iam_role.task_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.carts_service.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.catalog_service.aws_ecs_service.thisaws_ecs_serviceSTACKIT Kubernetes Engine (SKE)replaceddata location, identity chain, exitability
module.retail_app_ecs.module.catalog_service.aws_iam_role.task_execution_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.catalog_service.aws_iam_role.task_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.catalog_service.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.checkout_service.aws_ecs_service.thisaws_ecs_serviceSTACKIT Kubernetes Engine (SKE)replaceddata location, identity chain, exitability
module.retail_app_ecs.module.checkout_service.aws_iam_role.task_execution_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.checkout_service.aws_iam_role.task_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.checkout_service.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.orders_service.aws_ecs_service.thisaws_ecs_serviceSTACKIT Kubernetes Engine (SKE)replaceddata location, identity chain, exitability
module.retail_app_ecs.module.orders_service.aws_iam_role.task_execution_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.orders_service.aws_iam_role.task_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.orders_service.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.retail_app_ecs.module.ui_service.aws_ecs_service.thisaws_ecs_serviceSTACKIT Kubernetes Engine (SKE)replaceddata location, identity chain, exitability
module.retail_app_ecs.module.ui_service.aws_iam_role.task_execution_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.ui_service.aws_iam_role.task_roleaws_iam_roleSTACKIT service account for the workloadreplaceddata location, exitability
module.retail_app_ecs.module.ui_service.aws_security_group.thisaws_security_groupSTACKIT security groupreplaceddata location, exitability
module.vpc.module.vpc.aws_vpc.thisaws_vpcSTACKIT project networking / Network Area (SNA)replaceddata location, exitability

Exitability

For each target dependency the model asks for the interface, the data format, the provider-specific code, the Terraform dependency, the replacement complexity, the data extraction path, the alternative implementation and the exit evidence. The only field this build states is the Terraform dependency: the draft is Terraform written for the STACKIT provider. No cost, duration or complexity is estimated.

37 target dependencies
DependencyTarget serviceStateTerraform dependencyEvery other field of the model
module.dependencies.aws_mq_broker.mqSTACKIT RabbitMQ Provider specificprovider specificnot assessed
module.dependencies.module.catalog_opensearch.aws_opensearch_domain.thisSTACKIT OpenSearch Provider specificprovider specificnot assessed
module.dependencies.module.catalog_rds.aws_rds_cluster.thisSTACKIT MariaDB Provider specificprovider specificnot assessed
module.dependencies.module.checkout_elasticache_redis.aws_elasticache_replication_group.defaultSTACKIT Key Value Store (Valkey) Provider specificprovider specificnot assessed
module.dependencies.module.dynamodb_carts.aws_dynamodb_table.thisSTACKIT MongoDB Flex (alternative — data-model redesign; PostgreSQL Flex JSONB is the other option) Provider specificprovider specificnot assessed
module.dependencies.module.orders_rds.aws_rds_cluster.thisSTACKIT PostgreSQL Flex Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_cloudwatch_log_group.ecs_tasksSTACKIT Logs Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_ecs_cluster.clusterSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_kms_key.cmkSTACKIT KMS Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_secretsmanager_secret.catalog_dbSTACKIT Secrets Manager Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_secretsmanager_secret.catalog_opensearchSTACKIT Secrets Manager Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_secretsmanager_secret.mqSTACKIT Secrets Manager Provider specificprovider specificnot assessed
module.retail_app_ecs.aws_secretsmanager_secret.orders_dbSTACKIT Secrets Manager Provider specificprovider specificnot assessed
module.retail_app_ecs.module.alb.aws_lb.thisSTACKIT Application Load Balancer Provider specificprovider specificnot assessed
module.retail_app_ecs.module.alb.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.alb_sg.aws_security_group.this_name_prefixSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.carts_service.aws_ecs_service.thisSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.module.carts_service.aws_iam_role.task_execution_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.carts_service.aws_iam_role.task_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.carts_service.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.catalog_service.aws_ecs_service.thisSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.module.catalog_service.aws_iam_role.task_execution_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.catalog_service.aws_iam_role.task_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.catalog_service.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.checkout_service.aws_ecs_service.thisSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.module.checkout_service.aws_iam_role.task_execution_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.checkout_service.aws_iam_role.task_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.checkout_service.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.orders_service.aws_ecs_service.thisSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.module.orders_service.aws_iam_role.task_execution_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.orders_service.aws_iam_role.task_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.orders_service.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.retail_app_ecs.module.ui_service.aws_ecs_service.thisSTACKIT Kubernetes Engine (SKE) Provider specificprovider specificnot assessed
module.retail_app_ecs.module.ui_service.aws_iam_role.task_execution_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.ui_service.aws_iam_role.task_roleSTACKIT service account for the workload Provider specificprovider specificnot assessed
module.retail_app_ecs.module.ui_service.aws_security_group.thisSTACKIT security group Provider specificprovider specificnot assessed
module.vpc.module.vpc.aws_vpc.thisSTACKIT project networking / Network Area (SNA) Provider specificprovider specificnot assessed

What this page does not say

The same block, with the pointers of its evidence, is in assurance/sovereignty.json, and in words in assurance/sovereignty.md.