Skip to main content

singer

monthly download count for vdk-singer

The vdk-singer plugin provides an easy way to integrate Singer Taps as data sources within the Versatile Data Kit (VDK). This allows you to pull data from various external systems that have Singer Taps available and use them seamlessly within your VDK pipelines.

Usage

pip install vdk-singer

Configuration

(vdk config-help is useful command to browse all config options of your installation of vdk)

You can configure the Singer data source via the SingerDataSourceConfiguration class. The configuration options include:

  • tap_name: The name of the Singer Tap you are using.
  • tap_config: A dictionary containing configuration specific to the Singer Tap.
  • tap_auto_discover_schema: A boolean to indicate whether to auto-discover the schema.
config = SingerDataSourceConfiguration(
    tap_name="tap-gitlab",
    tap_config={
        "api_url": "https://gitlab.com/api/v4",
        "private_token": "your_token_here",
        # ... other tap specific configurations
    },
    tap_auto_discover_schema=True,

Example

This will change as we will introduce more user frinedly way of defining sources but currently it looks like this:

from vdk.api.job_input import IJobInput
from vdk.internal.builtin_plugins.ingestion.source.factory import SingletonDataSourceFactory
from vdk.plugin.singer.singer_data_source import SingerDataSourceConfiguration

def run(job_input: IJobInput):
    data_source = SingletonDataSourceFactory().create_data_source("singer-tap")
    config = SingerDataSourceConfiguration(
        tap_name="tap-gitlab",
        tap_config={
            "api_url": "https://gitlab.com/api/v4",
            "private_token": "your_token_here",
            # ... other configurations
        },
        tap_auto_discover_schema=True,
    )
    data_source.connect(config, None)
    # ... rest of the job logic

List all likely available taps

vdk singer --list-taps

Build and testing

pip install -r requirements.txt
pip install -e .
pytest

In VDK repo ../build-plugin.sh script can be used also.

Note about the CICD:

.plugin-ci.yaml is needed only for plugins part of Versatile Data Kit Plugin repo.

The CI/CD is separated in two stages, a build stage and a release stage. The build stage is made up of a few jobs, all which inherit from the same job configuration and only differ in the Python version they use (3.7, 3.8, 3.9 and 3.10). They run according to rules, which are ordered in a way such that changes to a plugin's directory trigger the plugin CI, but changes to a different plugin does not.

Metadata

Release files for vdk-singer 0.1.1431637373

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vdk-singer 0.1.1431637373
File Size Uploaded
vdk_singer-0.1.1431637373.tar.gz 13.0 kB Details

Release files / vdk_singer-0.1.1431637373.tar.gz

Download URL vdk_singer-0.1.1431637373.tar.gz
Size 13.0 kB
Tags Source
SHA-256 checksum
How to use checksums
5bf37c845af84511ef41c062df722309bed2c5e7ace37d9de560c7d38be5c700
BLAKE2b-256 checksum
How to use checksums
4090bb4f8bb7d00c58fd5c151c9c9f60d2fccf114b39ecd6a0c9283dd539c01f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.10.14

Release history Release notifications | RSS feed

This release

0.1.1431637373 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page