Cohesive Systems logoCOHESIVE SYSTEMS

Building Blocks

Cohesive.Infra

Cohesive Infra icon

Cohesive.Infra is the forthcoming block for defining application infrastructure as a semantic intermediate representation.

Infrastructure becomes another interpretation of the Cohesive system model: compute, storage, databases, caches, buses, configuration, secrets, service bindings, and runtime topology can be described before committing to one deployment tool or platform.

Infrastructure As Semantics

Modern systems often define application behavior in one place and infrastructure behavior somewhere else: application configuration in code, local resources in Docker Compose, cloud resources in Pulumi or Terraform, service discovery in Aspire, orchestration in Kubernetes, distributed execution in Orleans, and adapter setup in startup code.

Cohesive.Infra provides one semantic layer for describing the resources, dependencies, bindings, and capabilities that make the system run.

What It Defines

The infrastructure model can describe:

  • Services, workers, jobs, APIs, and process hosts.
  • Databases, object stores, search indexes, queues, buses, caches, and model stores.
  • Secrets, configuration sources, profiles, and generated outputs.
  • Dependency edges, service bindings, health checks, ports, and endpoints.
  • Runtime placement, scaling intent, environment boundaries, and capability requirements.

Integration

Infra connects naturally to Cohesive.Configuration for runtime values, Cohesive.Storage for backend selection, Cohesive.Api for exposed services, Cohesive.Processes for workers and queues, and Cohesive.Identity for secret and access boundaries.

Lowering Targets

TargetUseProjection
AspireLocal and cloud-native application composition.Service graph, resources, bindings, and local dev topology.
PulumiCloud infrastructure provisioning.Resource declarations, secrets, outputs, and environment wiring.
Docker ComposeLocal or lightweight deployment.Containers, ports, volumes, and dependency order.
KubernetesContainer orchestration.Deployments, services, config, secrets, jobs, and scaling.
OrleansDistributed runtime.Cluster configuration, grains, storage, streams, and host topology.

Principle

Cohesive.Infra should not replace infrastructure platforms. It should let the system model declare what infrastructure means, then let adapters lower that meaning into the platform a team chooses.