# `mix geo_genius.publish`
[🔗](https://github.com/agoodway/geo_genius/blob/main/lib/mix/tasks/geo_genius.publish.ex#L1)

Publishes a verified release, so reads that name no release id resolve to it.

## Options

  * `--release-id` - the release to publish, by id
  * `--collection` and `--release` - the release to publish, by key
  * `--repo` - the Ecto Repo to run against
  * `--prefix` - the PostgreSQL schema GeoGenius is installed in
  * `--timeout` - milliseconds the publication statement is allowed
    (default 900000)

`--release-id` and `--collection` are mutually exclusive: supplying both
would make one silently win over the other, and the two can name different
releases. A release that fails verification exits non-zero through
`Mix.raise/1`, so this gates a deploy rather than reporting a publication
that did not happen.

Publishing re-runs the release's verification inside the publication, which
on a national release is minutes of work in one statement. `--timeout` is
what a release too large for the default asks with, so a publication does
not need the host's whole Repo raised to succeed.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
