Sha256: 834a114d3a387a58d72df04a80de82642340b46017db464b056a6207f3a8800c

Contents?: true

Size: 1.72 KB

Versions: 12

Compression:

Stored size: 1.72 KB

Contents

---
title: UFO_ENV
nav_order: 20
---

Ufo's behavior is controlled by the `UFO_ENV` environment variable.  For example, the `UFO_ENV` variable is used to layer different ufo variable files together to make it easy to specify settings for different environments like production and development.  This is covered thoroughly in the [Variables]({% link _docs/variables.md %}) section.  `UFO_ENV` defaults to `development` when not set.

## Setting UFO_ENV

The `UFO_ENV` can be set in several ways:

1. Exported as an environment variable to your shell - This takes the second highest precedence.
2. From the `aws_profiles` setting in your `settings.yml` file - This takes the lowest precedence.

## As an environment variable

```sh
export UFO_ENV=production
ufo ship demo-web
```

You can set `UFO_ENV` in your `~/.profile`.

## In .ufo/settings.yml

The most interesting way to set `UFO_ENV` is with the `aws_profiles` setting in `.ufo/settings.yml`.  Let's say you have a `~/.ufo/settings.yml` with the following:

```yaml
development:
  aws_profiles:
    - my-dev-profile

production:
  aws_profiles:
    - my-prod-profile
```

In this case, when you set `AWS_PROFILE` to switch AWS profiles, ufo picks this up and maps the `AWS_PROFILE` value to the specified `UFO_ENV` using the `aws_profiles` lookup.  Example:

```sh
AWS_PROFILE=my-prod-profile => UFO_ENV=production
AWS_PROFILE=my-dev-profile => UFO_ENV=development
AWS_PROFILE=whatever => UFO_ENV=development # since there are no profiles that match
```

Notice how `AWS_PROFILE=whatever` results in `UFO_ENV=development`.  This is because there are no matching aws_profiles in the `settings.yml`.  More info on settings is available at [settings]({% link _docs/settings.md %}).

{% include prev_next.md %}

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
ufo-4.5.11 docs/_docs/ufo-env.md
ufo-4.5.10 docs/_docs/ufo-env.md
ufo-4.5.9 docs/_docs/ufo-env.md
ufo-4.5.8 docs/_docs/ufo-env.md
ufo-4.5.7 docs/_docs/ufo-env.md
ufo-4.5.6 docs/_docs/ufo-env.md
ufo-4.5.5 docs/_docs/ufo-env.md
ufo-4.5.4 docs/_docs/ufo-env.md
ufo-4.5.3 docs/_docs/ufo-env.md
ufo-4.5.2 docs/_docs/ufo-env.md
ufo-4.5.1 docs/_docs/ufo-env.md
ufo-4.5.0 docs/_docs/ufo-env.md