# GCP Environment Variables

Adding a GCP project to your track also sets a list of [environment variables](https://en.wikipedia.org/wiki/Environment_variable) that you can use in commands and scripts:

<table data-header-hidden><thead><tr><th width="542">Environment variable</th><th>Description</th></tr></thead><tbody><tr><td>Environment variable</td><td>Description</td></tr><tr><td><code>INSTRUQT_GCP_PROJECTS</code></td><td>A comma-separated list of project names that can be used to fill ${NAME} in the variables below</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_PROJECT_NAME</code></td><td>This injects the project display name</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_PROJECT_ID</code></td><td>This injects the project ID</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_USER_EMAIL</code></td><td>This injects the email address of the end user that has access to the project</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_USER_PASSWORD</code></td><td>This injects the password of the end user</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_SERVICE_ACCOUNT_EMAIL</code></td><td>This injects the email address of the end user services account for this project</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_SERVICE_ACCOUNT_KEY</code></td><td>This injects the Base64 encoded key for the end user services account</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_ADMIN_USER_EMAIL</code></td><td>This injects the email address of the admin user (Admin credentials are only injected into lifecycle scripts)</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_ADMIN_USER_PASSWORD</code></td><td>This injects the password of the admin user (Admin credentials are only injected into lifecycle scripts)</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_ADMIN_SERVICE_ACCOUNT_EMAIL</code></td><td>This injects the email address of the admin services account (Admin credentials are only injected into lifecycle scripts)</td></tr><tr><td><code>INSTRUQT_GCP_PROJECT_${NAME}_ADMIN_SERVICE_ACCOUNT_KEY</code></td><td>This injects the Base64 encoded key for the admin services account (Admin credentials are only injected into lifecycle scripts)</td></tr></tbody></table>

### Example

This example shows the id of the GCP project from a terminal by using two environment variables. The value of the `INSTRUQT_GCP_PROJECTS` environment variable is inserted in the `INSTRUQT_GCP_PROJECT_${NAME}_PROJECT_ID` environment variable.

To follow along:

1. Start your GCP project track and start the first challenge.
2. Move over to the `Cloud CLI` terminal and enter the following command:

   ```xml
   eval echo "\${INSTRUQT_GCP_PROJECT_${INSTRUQT_GCP_PROJECTS}_PROJECT_ID}"
   ```

   ↳ The terminal shows the id of your GCP project.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.instruqt.com/sandboxes/cloud-accounts/gcp-projects/gcp-environment-variables.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
