# noust deploy

Follow the deploy queue, cancel a build, and hold, freeze or release deploys.

```bash
noust deploy [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`cancel`](#noust-deploy-cancel), [`freeze`](#noust-deploy-freeze), [`freezes`](#noust-deploy-freezes), [`held`](#noust-deploy-held), [`keep`](#noust-deploy-keep), [`pause`](#noust-deploy-pause), [`pause-on-rollback`](#noust-deploy-pause-on-rollback), [`queue`](#noust-deploy-queue), [`resume`](#noust-deploy-resume), [`schedule`](#noust-deploy-schedule), [`unfreeze`](#noust-deploy-unfreeze)

## noust deploy cancel

Cancel a deployment: a job that waits, or the build that runs.

```bash
noust deploy cancel [OPTIONS] TARGET
```

Arguments: `target`

| Option | What it does | Default |
|---|---|---|
| `--all` | With an application: also cancel what waits in the queue for it. |  |
| `--wait` | Seconds to wait for the build to stop (0 to ask and return). | `30` |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy freeze

Freeze deploys: nothing is deployed, of DOMAIN or of the whole server, for a while.

```bash
noust deploy freeze [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--reason`, `-m` | Why; whoever tries to deploy is told it. |  |
| `--from` | When it starts (2026-12-24T18:00); now when left out. |  |
| `--until` | When it ends; none lasts until lifted. |  |
| `--hours` | Instead of --until: how long from its start. |  |
| `--json` | Print the freeze as JSON. |  |

## noust deploy freezes

List the freezes that hold deploys now, or will.

```bash
noust deploy freezes [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--all` | Also the ones that ended or were lifted. |  |
| `--json` | Print the freezes as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy held

Say what holds the deploys of an application, if anything: a pause or a freeze.

```bash
noust deploy held [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the answer as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy keep

Show or set how many deployments of an application's history are kept.

```bash
noust deploy keep [OPTIONS] DOMAIN [N|default]
```

Arguments: `domain`, `count`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the setting as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy pause

Hold what deploys an application by itself: its pushes, its tags and its schedules.

```bash
noust deploy pause [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--reason`, `-m` | Why, for whoever meets it ('rolled back to 20261001'). |  |
| `--json` | Print the settings now in force as JSON. |  |

## noust deploy pause-on-rollback

Show or set whether going back pauses what deploys the application by itself.

```bash
noust deploy pause-on-rollback [OPTIONS] DOMAIN [on|off]
```

Arguments: `domain`, `choice`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the setting as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy queue

Show what is deploying and what is waiting to.

```bash
noust deploy queue [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the queue as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy resume

Let an application's pushes, tags and schedules deploy it again.

```bash
noust deploy resume [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print what resuming did as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy schedule

Update an application by itself, on a schedule.

```bash
noust deploy schedule [OPTIONS] COMMAND [ARGS]...
```

Subcommands: [`list`](#noust-deploy-schedule-list), [`remove`](#noust-deploy-schedule-remove), [`run`](#noust-deploy-schedule-run), [`set`](#noust-deploy-schedule-set), [`show`](#noust-deploy-schedule-show)

## noust deploy schedule list

List the applications that update themselves.

```bash
noust deploy schedule list [OPTIONS]
```

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the schedules as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy schedule remove

Stop an application updating itself: the timer and the schedule go.

```bash
noust deploy schedule remove [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy schedule run

Run an application's scheduled update now, once, exactly as its timer does.

```bash
noust deploy schedule run [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy schedule set

Make an application update itself at a time, with a backup first.

```bash
noust deploy schedule set [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--at` | daily, weekly or monthly (at 03:00, Sunday for a week), or a systemd calendar expression such as 'Sun *-*-* 03:00' or '*-*-* 04:30'. |  |
| `--backup`, `--no-backup` | Refuse the update when the backup before it does not happen. |  |
| `--only-if-new`, `--always` | Do nothing when the branch (or the tags it follows) has nothing new. |  |
| `--off` | Keep the schedule and stop its timer. |  |
| `--json` | Print the schedule as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy schedule show

Show when an application updates itself, and how its last run ended.

```bash
noust deploy schedule show [OPTIONS] DOMAIN
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--json` | Print the schedule as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

## noust deploy unfreeze

Lift the freeze of an application, or of the whole server without DOMAIN.

```bash
noust deploy unfreeze [OPTIONS] [DOMAIN]
```

Arguments: `domain`

| Option | What it does | Default |
|---|---|---|
| `--id` | Lift this freeze, by its number. |  |
| `--json` | Print the freezes that were lifted as JSON. |  |
| `--reason` | Why this change is made (a change reference, a ticket). Recorded with the command in the audit log; required only where a compliance framework asks for it (ENS) or security.change_reasons is on. |  |

