Skip to content

Create the environment

An Environment is the network and storage resources GENI Workflows needs to run pipelines in an AWS account or a GCP project. --cloud-provider accepts aws or gcp; the rest of the command’s flags depend on which you pick. The command below registers a new environment in GENI, which in turn uses the credentials you generated to provision those resources in the cloud account.

Terminal window
geni auth login --email <your-email>
geni environment create \
--name <env-name> \
--cloud-provider gcp \
--cloud-id <project-id> \
--cloud-region <region> \
--focus-dataset <project.dataset.table> \
--focus-location <focus-region> \
--gcp-credentials gcp-wif.json
Argument Meaning
<env-name> A searchable name for the environment, for example Bioinfo Dev
<project-id> The project’s unique identifier, for example useful-loop-496215-i8
<region> The region to use, for example us-central1
<project.dataset.table> The BigQuery FOCUS table — see FOCUS dataset
<focus-region> The region the FOCUS table lives in
gcp-wif.json The credentials file written by geni setup enable-gcp

--gcp-credentials and the FOCUS flags only apply to --cloud-provider gcp; see Enable a GCP project and FOCUS dataset for how those values are produced.

The command creates a deployment named geni-environment and returns a unique environment ID. Keep that ID — engines and queues are attached to the environment by it.

Terminal window
geni environment list

--cloud-provider aws registers an AWS account and region instead, using AWS credentials in place of --gcp-credentials. See Cloud resources for how AWS and GCP environments differ conceptually.

GENI support can disable an environment, for example while a project is wound down. While it is disabled:

  • every engine and queue in it rejects new submissions and retries (409 Environment is disabled), whatever their own setting;
  • no new engine or queue can be created in it; existing ones can still be updated and deleted;
  • submissions already running are not affected.

Only GENI support can disable or enable an environment — contact support to change it. To retire a single engine or queue yourself, disable the engine or disable the queue instead.

If the environment ends up FAILED, run geni environment revisions <id> and geni environment logs <id> to see the underlying CloudFormation/Terraform error — see Troubleshoot a failed deployment.

Create an engine.