# IProcessCommandService Methods

- Package: [Aspire.Hosting.AWS](/reference/api/csharp/aspire.hosting.aws.md)
- Type: [IProcessCommandService](/reference/api/csharp/aspire.hosting.aws/iprocesscommandservice.md)
- Kind: `Methods`
- Members: `3`

## RunCDKProcess(ILogger?, LogLevel, string, string, IDictionary<string, string>)

- Name: `RunCDKProcess(ILogger?, LogLevel, string, string, IDictionary<string, string>)`
- Modifiers: `abstract`
- Returns: [RunProcessAndCaptureStdOutResult](/reference/api/csharp/aspire.hosting.aws/runprocessandcapturestdoutresult.md)

```csharp
public interface IProcessCommandService
{
    public abstract RunProcessAndCaptureStdOutResult RunCDKProcess(
        ILogger? logger,
        LogLevel logLevel,
        string arguments,
        string workingDirectory,
        IDictionary<string, string>? environmentVariables = null)
    {
        // ...
    }
}
```

## Parameters

- `logger` (`ILogger?`)
- `logLevel` (`LogLevel`)
- `arguments` (`string`)
- `workingDirectory` (`string`)
- `environmentVariables` (`IDictionary<string, string>`) `optional`

## RunProcess(ILogger, string, string, string, bool, IDictionary<string, string>)

- Name: `RunProcess(ILogger, string, string, string, bool, IDictionary<string, string>)`
- Modifiers: `abstract`
- Returns: `int`

```csharp
public interface IProcessCommandService
{
    public abstract int RunProcess(
        ILogger logger,
        string path,
        string arguments,
        string workingDirectory,
        bool streamOutputToLogger,
        IDictionary<string, string>? environmentVariables = null)
    {
        // ...
    }
}
```

## Parameters

- `logger` (`ILogger`)
- `path` (`string`)
- `arguments` (`string`)
- `workingDirectory` (`string`)
- `streamOutputToLogger` (`bool`)
- `environmentVariables` (`IDictionary<string, string>`) `optional`

## RunProcessAndCaptureOutputAsync(ILogger, string, string, string?, CancellationToken)

- Name: `RunProcessAndCaptureOutputAsync(ILogger, string, string, string?, CancellationToken)`
- Modifiers: `abstract`
- Returns: [Task<RunProcessAndCaptureStdOutResult>](/reference/api/csharp/aspire.hosting.aws/runprocessandcapturestdoutresult.md)

```csharp
public interface IProcessCommandService
{
    public abstract Task<RunProcessAndCaptureStdOutResult> RunProcessAndCaptureOutputAsync(
        ILogger logger,
        string path,
        string arguments,
        string? workingDirectory,
        CancellationToken cancellationToken)
    {
        // ...
    }
}
```

## Parameters

- `logger` (`ILogger`)
- `path` (`string`)
- `arguments` (`string`)
- `workingDirectory` (`string?`)
- `cancellationToken` (`CancellationToken`)
