Implementation:Astronomer Astronomer cosmos TrinoJWTProfileMapping
| Knowledge Sources | |
|---|---|
| Domains | Profile_Mapping, Trino |
| Last Updated | 2026-02-07 17:00 GMT |
Overview
Concrete tool for mapping Airflow trino connections to dbt trino profiles using JWT authentication, provided by astronomer-cosmos.
Description
The TrinoJWTProfileMapping maps an Airflow trino connection to a dbt trino profile using the JWT authentication method. It extends TrinoBaseProfileMapping and sets `method="jwt"`, translating connection parameters into the YAML structure that dbt expects in `profiles.yml`.
Usage
Use this profile mapping when configuring Cosmos to run dbt commands against a Trino backend. Assign it to `ProfileConfig(profile_mapping=...)` when the target Airflow connection uses the `trino` connection type with JWT-based authentication.
Code Reference
Source Location
- Repository: Astronomer_Astronomer_cosmos
- File: cosmos/profiles/trino/jwt.py
Signature
class TrinoJWTProfileMapping(TrinoBaseProfileMapping):
method: str = "jwt"
Import
from cosmos.profiles.trino import TrinoJWTProfileMapping
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| conn_id | str | Yes | Airflow connection ID for Trino |
Outputs
| Name | Type | Description |
|---|---|---|
| profile | dict | dbt profile YAML dictionary |
| env_vars | dict | Environment variables for secret fields |
Usage Examples
from cosmos.config import ProfileConfig
from cosmos.profiles.trino import TrinoJWTProfileMapping
profile_config = ProfileConfig(
profile_name="default",
target_name="dev",
profile_mapping=TrinoJWTProfileMapping(conn_id="trino_default"),
)