> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Python: LocalExecProvisioner

> CDKTN Core API Reference for LocalExecProvisioner in Python.

The local-exec provisioner invokes a local executable after a resource is created.

This invokes a process on the machine running Terraform, not on the resource.

See [local-exec](https://developer.hashicorp.com/terraform/language/resources/provisioners/local-exec)

## Initializer <a name="Initializer" id="cdktn.LocalExecProvisioner.Initializer" />

```python theme={null}
import cdktn

cdktn.LocalExecProvisioner(
  command: str,
  type: str,
  environment: typing.Mapping[str] = None,
  interpreter: typing.List[str] = None,
  when: str = None,
  working_dir: str = None
)
```

## Properties <a name="Properties" id="Properties" />

| **Name**                                                                                | **Type**                          | **Description**                                                                   |
| --------------------------------------------------------------------------------------- | --------------------------------- | --------------------------------------------------------------------------------- |
| <code><a href="#cdktn.LocalExecProvisioner.property.command">command</a></code>         | <code>str</code>                  | This is the command to execute.                                                   |
| <code><a href="#cdktn.LocalExecProvisioner.property.type">type</a></code>               | <code>str</code>                  | *No description.*                                                                 |
| <code><a href="#cdktn.LocalExecProvisioner.property.environment">environment</a></code> | <code>typing.Mapping\[str]</code> | A record of key value pairs representing the environment of the executed command. |
| <code><a href="#cdktn.LocalExecProvisioner.property.interpreter">interpreter</a></code> | <code>typing.List\[str]</code>    | If provided, this is a list of interpreter arguments used to execute the command. |
| <code><a href="#cdktn.LocalExecProvisioner.property.when">when</a></code>               | <code>str</code>                  | If provided, specifies when Terraform will execute the command.                   |
| <code><a href="#cdktn.LocalExecProvisioner.property.workingDir">working\_dir</a></code> | <code>str</code>                  | If provided, specifies the working directory where command will be executed.      |

***

### `command`<sup>Required</sup> <a name="command" id="cdktn.LocalExecProvisioner.property.command" />

```python theme={null}
command: str
```

* *Type:* str

This is the command to execute.

It can be provided as a relative path to the current working directory or as an absolute path.
It is evaluated in a shell, and can use environment variables or Terraform variables.

***

### `type`<sup>Required</sup> <a name="type" id="cdktn.LocalExecProvisioner.property.type" />

```python theme={null}
type: str
```

* *Type:* str

***

### `environment`<sup>Optional</sup> <a name="environment" id="cdktn.LocalExecProvisioner.property.environment" />

```python theme={null}
environment: typing.Mapping[str]
```

* *Type:* typing.Mapping\[str]

A record of key value pairs representing the environment of the executed command.

It inherits the current process environment.

***

### `interpreter`<sup>Optional</sup> <a name="interpreter" id="cdktn.LocalExecProvisioner.property.interpreter" />

```python theme={null}
interpreter: typing.List[str]
```

* *Type:* typing.List\[str]

If provided, this is a list of interpreter arguments used to execute the command.

The first argument is the interpreter itself.
It can be provided as a relative path to the current working directory or as an absolute path
The remaining arguments are appended prior to the command.
This allows building command lines of the form "/bin/bash", "-c", "echo foo".
If interpreter is unspecified, sensible defaults will be chosen based on the system OS.

***

### `when`<sup>Optional</sup> <a name="when" id="cdktn.LocalExecProvisioner.property.when" />

```python theme={null}
when: str
```

* *Type:* str

If provided, specifies when Terraform will execute the command.

For example, when = destroy specifies that the provisioner will run when the associated resource is destroyed

***

### `working_dir`<sup>Optional</sup> <a name="working_dir" id="cdktn.LocalExecProvisioner.property.workingDir" />

```python theme={null}
working_dir: str
```

* *Type:* str

If provided, specifies the working directory where command will be executed.

It can be provided as a relative path to the current working directory or as an absolute path.
The directory must exist.

***
