# PipelineStepContext

- Kind: `class`
- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Version: `13.3.0`
- Namespace: `Aspire.Hosting.Pipelines`
- Target framework: `net8.0`
- Source: [GitHub](https://github.com/microsoft/aspire/blob/bd20f904cde09ecb9c9ae5116a6f13614bf2d7c2/src/Aspire.Hosting/Pipelines/PipelineStepContext.cs)

Provides contextual information for a specific pipeline step execution.

## Definition

```csharp
namespace Aspire.Hosting.Pipelines;

public sealed class PipelineStepContext
{
    // ...
}
```

## ATS metadata

### ATS export

- Type ID: `Aspire.Hosting/PipelineStepContext`
- Public instance properties are exported as ATS capabilities.

## Remarks

This context combines the shared pipeline context with a step-specific publishing step, allowing each step to track its own tasks and completion state independently.

## Constructors

- [PipelineStepContext](/reference/api/csharp/aspire.hosting/pipelinestepcontext/constructors.md#constructor)

## Properties

- [CancellationToken](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#cancellationtoken) : `CancellationToken` `get` -- Gets the cancellation token for the pipeline operation.
- [ExecutionContext](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#executioncontext) : [DistributedApplicationExecutionContext](/reference/api/csharp/aspire.hosting/distributedapplicationexecutioncontext.md) `get` -- Gets the execution context for the distributed application.
- [Logger](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#logger) : `ILogger` `get` -- Gets the logger for pipeline operations that writes to both the pipeline logger and the step logger.
- [Model](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#model) : [DistributedApplicationModel](/reference/api/csharp/aspire.hosting/distributedapplicationmodel.md) `get` -- Gets the distributed application model to be deployed.
- [PipelineContext](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#pipelinecontext) : [PipelineContext](/reference/api/csharp/aspire.hosting/pipelinecontext.md) `get; init` -- Gets the pipeline context shared across all steps.
- [ReportingStep](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#reportingstep) : [IReportingStep](/reference/api/csharp/aspire.hosting/ireportingstep.md) `get; init` -- Gets the publishing step associated with this specific step execution.
- [Services](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#services) : `IServiceProvider` `get` -- Gets the service provider for dependency resolution.
- [Summary](/reference/api/csharp/aspire.hosting/pipelinestepcontext/properties.md#summary) : [PipelineSummary](/reference/api/csharp/aspire.hosting/pipelinesummary.md) `get` -- Gets the pipeline summary that steps can add information to. The summary will be displayed to users after pipeline execution completes.
