## Deployment

Deployment involves JavaScript bundles to Expo. These are downloaded over-the-air by the device
whenever the application is launched. You will need to set up a few different environment variables
in order to successfully run a deployment:

* `ENV` - the build environment. This should be set to either `dev`, `qa`, or `prod`.
* `OAUTH_CLIENT_ID` - the OAuth client identifier.
* `OAUTH_CLIENT_SECRET` - the OAuth client secret.
* `FRONTEND_AUTH_BASE` - the base of the endpoint for frontend authentication.
* `API_BASE` - the base for all other application endpoints.
* `EXPO_USERNAME` - the username for Expo.
* `EXPO_PASSWORD` - the password for Expo.
* `SENTRY_DSN` - address for writing error logs to Sentry.
* `SENTRY_APP_NAME` - the application name in Sentry.
* `SENTRY_PROJECT_NAME` - the project name in Sentry.
* `SENTRY_AUTH_TOKEN` - the auth token for Sentry.
* `SENTRY_ENVIRONMENT` - the environment for Sentry. This should be set to either `dev`, `qa`, or `prod`.
* `SEGMENT_IOS_WRITE_KEY` - the authentication write key for iOS events in Segment.
* `SEGMENT_ANDROID_WRITE_KEY` - the authentication write key for Android events in Segment.
* `POEDITOR_API_TOKEN` - the authentication API token for POEditor.
* `POEDITOR_PROJECT_ID` - the project identifier for POEditor.

Once the proper environment variables have been set, you can deploy the JavaScript bundle using the
`yarn` deploy target as follows:

    yarn deploy
