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

# Deploy Platform

> Deploy the Fjall platform AWS account with shared services like ECR repositories, domains, and cross-account roles.

## Prerequisites

* [**Fjall CLI**](/deployment/cli-installation) installed
* [**Deploy Organisation**](/deployment/deploy-organisation) completed
* [**Understanding Profiles**](/deployment/understanding-profiles) read

***

## 1. Select the deployment target

In organisation mode, the active deployment target decides which AWS account and region a deploy lands in. Set it before deploying:

```bash theme={null}
fjall target set production-us-use1
```

Run without a name to pick from the list of derived targets:

```bash theme={null}
fjall target set
```

<Tip>
  Target names follow the format `<account>-<region>`, for example `production-us-use1` (where `use1` = `us-east-1`). Run `fjall target list` to see every available target. The active target is marked with a ▸. Targets are derived automatically from your organisation config, so there is nothing to author by hand.
</Tip>

<Note>
  In account mode (a single AWS account connected with `fjall connect`), authentication runs through OIDC and there is no target to select. Skip this step.
</Note>

***

## 2. Deploy the platform account

Run the deploy command from the root of your project:

```bash theme={null}
fjall deploy platform
```

`platform` is a standalone deployable target. It provisions shared AWS services, including ECR repositories, domains, and cross-account roles.

### What happens

| Step               | Action                                                                             |
| ------------------ | ---------------------------------------------------------------------------------- |
| Profile resolution | Fjall resolves the AWS profile for the active target (or the `--target` override). |
| Synthesis          | The CDK app synthesises the platform stack.                                        |
| Deploy             | CloudFormation provisions ECR repositories, domains, and cross-account roles.      |

***

### Success example

A successful deployment prints:

```bash theme={null}
--- Deployment Summary ---

🎉 Success! Your platform account has been deployed.

🔗 You can now deploy your managed accounts with 'fjall deploy account'!

   /\
  /  \ /\
 /  _ _\ _\
   Fjall
```

***

## Options

| Flag                      | Description                                                                                   |
| ------------------------- | --------------------------------------------------------------------------------------------- |
| `--target <name>`         | Override the active target for this deploy.                                                   |
| `--region <region>`       | Deploy to a specific region.                                                                  |
| `-e, --environment <env>` | Optional free-form CI/CD label passed to CDK synthesis. Does not select an account or region. |
| `--skip-migrations`       | Skip database migrations during the deploy.                                                   |
| `-v, --verbose`           | Print verbose output.                                                                         |

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Deploy Account" icon="gear" href="/deployment/deploy-account">
    Deploy your managed AWS accounts.
  </Card>

  <Card title="Understanding Profiles" icon="key" href="/deployment/understanding-profiles">
    See how Fjall resolves AWS authentication.
  </Card>
</CardGroup>
