Skip to content

The dagster-cloud ci check command fails for EU region deployments. #243

@MinhPho

Description

@MinhPho

Description:

The dagster-cloud ci check command fails for EU region deployments because the URL construction logic hardcodes .dagster.cloud instead of supporting .dagster.plus (used by EU region).

Environment:

  • Dagster Cloud region: EU (*.eu.dagster.plus)
  • dagster-cloud-action version: v1.11.9
  • dagster-cloud-cli version: 1.12.12

Expected behavior:
Setting DAGSTER_CLOUD_URL=https://my-org.eu.dagster.plus should be used for connection checks.

Actual behavior:
The CLI ignores DAGSTER_CLOUD_URL and constructs the URL from DAGSTER_CLOUD_ORGANIZATION, always appending .dagster.cloud:

Connecting to https://my-org.dagster.cloud using DAGSTER_CLOUD_API_TOKEN
Failed to connect to https://my-org.dagster.cloud: 401 Client Error: Unauthorized

Root cause:
In dagster_cloud_cli/config_utils.py, the get_org_url() function hardcodes the domain:

def get_org_url(organization: str, dagster_env: Optional[str]):
if dagster_env:
return f"https://{organization}.{dagster_env}.dagster.cloud"
return f"https://{organization}.dagster.cloud"

And in commands/ci/init.py, the check_command always uses get_org_url() instead of respecting DAGSTER_CLOUD_URL:

url = get_org_url(organization, dagster_env)
result = checks.check_connect_dagster_cloud(url)

Workaround:
Skip the connection check: --dagster-cloud-connect-check=skip

Suggested fix:
Modify get_org_url() to support .dagster.plus domains, or prioritize DAGSTER_CLOUD_URL environment variable when explicitly set.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions