Skip to main content

The Apache Airflow provider package for TDengine built by SCIA IoT.

Project description

Airflow TDengine Provider

Tests CodeQL Advanced Package

The Airflow Provider for TDengine.

Usage

Build the package locally, and install it on your Airflow environment.

pip install dist/sciaiot_airflow_providers_tdengine-0.1.2-py3-none-any.whl

Or via PyPI:

pip install sciaiot-airflow-providers-tdengine

Add a connection to Airflow via CLI:

airflow connections add 'tdengine_default' --conn-uri 'tdengine://root:taosdata@tdengine:6030'

Test it:

airflow connections test tdengine_default

NOTICE: The client driver taosc must be installed since only native connector i.e. tdengine is supported now.

Sample Operator

from sciaiot.airflow.providers.tdengine.operators.tdengine import BaseTDengineOperator


class CustomTDengineOperator(BaseOperator):
  def __init__(self, *, **kwargs) -> None:
    super().__init__(conn_id=conn_id, database=database, **kwargs)

  def execute(self, context: Context) -> None:
    statement = "SELECT server_status()"
    hook = self.get_hook()
    hook.run(statement=statement)
  

Development

IDE

Use devcontainer with VS Code.

Database

Run the tests/DDL.sql in taos CLI to setup a test database.

Code Style

In the root folder of project, run:

# add -v for verbose output
# add --fix for auto fixing
ruff check 

Or with the Ruff extension installed, run commands for any opening python file.

Type Check

In the root folder of project, run:

mypy .

Install

In the root folder of project, run:

pip install -e .

Test

In the root folder of project, run:

pytest .

Build

Add build package:

pip install build

In the root folder of project, run:

python -m build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sciaiot_airflow_providers_tdengine-0.1.4.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file sciaiot_airflow_providers_tdengine-0.1.4.tar.gz.

File metadata

File hashes

Hashes for sciaiot_airflow_providers_tdengine-0.1.4.tar.gz
Algorithm Hash digest
SHA256 3608d152ccda67dc4d63f2cf78a4a83315f4290a609331cdf39ee76aca1ddb44
MD5 13964cdc9af1b63eebd5c0c1e89bcae9
BLAKE2b-256 7b1d43f3e8dbcb27b7fbb9051b9c2cc3dc3fa9ad7116005b458d347eca8f2637

See more details on using hashes here.

Provenance

The following attestation bundles were made for sciaiot_airflow_providers_tdengine-0.1.4.tar.gz:

Publisher: package.yml on scia-iot/airflow-providers-tdengine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sciaiot_airflow_providers_tdengine-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for sciaiot_airflow_providers_tdengine-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fc9804b32f9985c8d280c662a2e4f3ed6f392a685447a2e4448fdd9eb2ace287
MD5 baf085be544e207a534b2f19fb36e09f
BLAKE2b-256 66e18de3c7c341f91def058eaaa1ec748ae3a975afa6d7b36d938937503b0f02

See more details on using hashes here.

Provenance

The following attestation bundles were made for sciaiot_airflow_providers_tdengine-0.1.4-py3-none-any.whl:

Publisher: package.yml on scia-iot/airflow-providers-tdengine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page