GLOBUS_SDK_ENVIRONMENT vs. GLOBUS_PROFILE?

5 views
Skip to first unread message

J. Lewis Muir

unread,
Aug 1, 2023, 11:38:30 AM8/1/23
to dis...@globus.org
Hello!

What's the difference between the Globus CLI GLOBUS_SDK_ENVIRONMENT and
GLOBUS_PROFILE environment variables?

https://docs.globus.org/cli/environment_variables/

I'm unclear on what the intended use of GLOBUS_SDK_ENVIRONMENT is.
Is it supposed to be like the Ruby on Rails environment concept
(e.g., "development", "test", "production")? What values can it take?
Can I assign an arbitrary value, or does it have to be one of "preview"
or "production"? (Those are just the values I've seen used; I haven't
found a documented list of allowed values.)

Thanks!

Lewis

Derek Schlabach

unread,
Aug 1, 2023, 12:28:55 PM8/1/23
to J. Lewis Muir, dis...@globus.org

Hey Lewis,

 

The GLOBUS_SDK_ENVIRONMENT variable is a client-side configuration used to direct calls at one of our pre-production environments. It’s mostly there for our own internal globus development use cases as we don’t provide access (for the most part) to those pre-production environments to customers. Those environments act as staging areas where we can deploy code changes & verify service/integration integrity prior to releasing them more broadly to our production stacks.

By and large most customers shouldn’t need to think about this variable, it’s primarily there to allow the development teams within globus to test our client & server code changes more easily.

 

The GLOBUS_PROFILE variable is a feature of the CLI for users who have multiple identities they’d like to use (eg. a UChicago Identity & an Argonne Identity) but can’t or don’t want to link those identities together in Globus Auth. It provides a lever to maintain different identity contexts locally logged into the same command line & switch between them at will.

This one can be set to anything as it’s just a conventional name for you to name your own different identity profiles locally.

 

- Derek

Stephen Rosen

unread,
Aug 1, 2023, 2:05:57 PM8/1/23
to Derek Schlabach, J. Lewis Muir, dis...@globus.org
A general +1 to Derek's answer! But with one caveat.

The `GLOBUS_SDK_ENVIRONMENT` variable is important/useful if you are using the Globus Preview environment. Preview (preview.globus.org) is a customer-facing full copy of all of the Globus services, which is important for testing certain specific customer integrations.

Unless you are in a situation in which our team has specifically asked you to test against Preview, you should not be using that environment.
However, if you are in such a situation, you can set `GLOBUS_SDK_ENVIRONMENT=preview` to point clients (like the globus CLI) at Preview.

Best,
-Stephen
Reply all
Reply to author
Forward
0 new messages