Python SDK Configuration
The Python SDK (Async or Sync) client can be configured using an instance of the Config
class.
- Async
- Sync
from infrahub_sdk import Config, InfrahubClient
config = Config(address="http://infrahub:8080", api_token="123-xyz-invalid-token")
client = InfrahubClient(config=config)
from infrahub_sdk import Config, InfrahubClientSync
config = Config(address="http://infrahub:8080", api_token="123-xyz-invalid-token")
client = InfrahubClientSync(config=config)
The following settings can be defined in the Config
class
address
Property: address
Description: The URL to use when connecting to Infrahub.
Type: string
Default value: http://localhost:8000
Environment variable: INFRAHUB_ADDRESS
api_token
Property: api_token
Description: API token for authentication against Infrahub.
Type: string
Environment variable: INFRAHUB_API_TOKEN
echo_graphql_queries
Property: echo_graphql_queries
Description: If set the GraphQL query and variables will be echoed to the screen
Type: boolean
Default value: False
Environment variable: INFRAHUB_ECHO_GRAPHQL_QUERIES
username
Property: username
Description: Username for accessing Infrahub
Type: string
Environment variable: INFRAHUB_USERNAME
password
Property: password
Description: Password for accessing Infrahub
Type: string
Environment variable: INFRAHUB_PASSWORD
default_branch
Property: default_branch
Description: Default branch to target if not specified for each request.
Type: string
Default value: main
Environment variable: INFRAHUB_DEFAULT_BRANCH
default_branch_from_git
Property: default_branch_from_git
Description: Indicates if the default Infrahub branch to target should come from the active branch in the local Git repository.
Type: boolean
Default value: False
Environment variable: INFRAHUB_DEFAULT_BRANCH_FROM_GIT
identifier
Property: identifier
Description: Tracker identifier
Type: string
Environment variable: INFRAHUB_IDENTIFIER
insert_tracker
Property: insert_tracker
Description: Insert a tracker on queries to the server
Type: boolean
Default value: False
Environment variable: INFRAHUB_INSERT_TRACKER
max_concurrent_execution
Property: max_concurrent_execution
Description: Max concurrent execution in batch mode
Type: integer
Default value: 5
Environment variable: INFRAHUB_MAX_CONCURRENT_EXECUTION
mode
Property: mode
Description: Default mode for the client
Type: string
Default value: default
Choices: default, tracking
Environment variable: INFRAHUB_MODE
pagination_size
Property: pagination_size
Description: Page size for queries to the server
Type: integer
Default value: 50
Environment variable: INFRAHUB_PAGINATION_SIZE
retry_delay
Property: retry_delay
Description: Number of seconds to wait until attempting a retry.
Type: integer
Default value: 5
Environment variable: INFRAHUB_RETRY_DELAY
retry_on_failure
Property: retry_on_failure
Description: Retry operation in case of failure
Type: boolean
Default value: False
Environment variable: INFRAHUB_RETRY_ON_FAILURE
timeout
Property: timeout
Description: Default connection timeout in seconds
Type: integer
Default value: 60
Environment variable: INFRAHUB_TIMEOUT
transport
Property: transport
Description: Set an alternate transport using a predefined option
Type: string
Default value: httpx
Choices: httpx, json
Environment variable: INFRAHUB_TRANSPORT
proxy
Property: proxy
Description: Proxy address
Type: string
Environment variable: INFRAHUB_PROXY
proxy_mounts
Property: proxy_mounts
Description: Proxy mounts configuration
Type: object
Environment variable: INFRAHUB_PROXY_MOUNTS
update_group_context
Property: update_group_context
Description: Update GraphQL query groups
Type: boolean
Default value: False
Environment variable: INFRAHUB_UPDATE_GROUP_CONTEXT
tls_insecure
Property: tls_insecure
Description:
Indicates if TLS certificates are verified.
Enabling this option will disable: CA verification, expiry date verification, hostname verification).
Can be useful to test with self-signed certificates.
Type: boolean
Default value: False
Environment variable: INFRAHUB_TLS_INSECURE
tls_ca_file
Property: tls_ca_file
Description: File path to CA cert or bundle in PEM format
Type: string
Environment variable: INFRAHUB_TLS_CA_FILE
recorder
Property: recorder
Description: Select builtin recorder for later replay.
Type: RecorderType
Default value: RecorderType.NONE
custom_recorder
Property: custom_recorder
Description: Provides a way to record responses from the Infrahub API
Type: Recorder
(protocol)
Default value: NoRecorder.default
requester
Property: requester
Type: AsyncRequester
Default value: None
sync_requester
Property: sync_requester
Type: SyncRequester
Default value: None