GithubHelp home page GithubHelp logo

isabella232 / dagster-meltano Goto Github PK

View Code? Open in Web Editor NEW

This project forked from widen/dagster-meltano

0.0 0.0 0.0 107 KB

A Dagster plugin that allows you to run Meltano in Dagster

License: MIT License

Dockerfile 2.07% Python 97.93%

dagster-meltano's Introduction

Dagster-meltano (Under development)

A dagster plugin that allows you to run Meltano pipelines using Dagster.

Open in Visual Studio Code Downloads

Installation

  1. Install using pip pip install dagster-meltano.
  2. Make sure you have an installed Meltano project.
  3. Point the plugin to the root of the Meltano project by defining MELTANO_PROJECT_ROOT.

Example

An example of a Dagster pipeline that runs a Meltano elt process.

from dagster import OutputDefinition, Nothing
from dagster_meltano.tests import pipeline
from dagster_meltano.solids import meltano_elt_solid


@pipeline
def meltano_pipeline():
    meltano_elt_solid(
        output_defs=[OutputDefinition(dagster_type=Nothing)],
        tap='tap-csv',
        target='target-jsonl',
        job_id='csv-to-jsonl'  # Optional
    )

Development

Setup using VSCode

  1. Open this repository in Visual Studio Code.
  2. Install the Remote - Containers plugin for Visual Studio Code.
  3. Wait for the container setup, it should automatically install all Meltano plugins.
  4. Open the integrated terminal and start Dagit dagit -f dagster_meltano/tests/pipeline.py
  5. Visit localhost:3000 to access Dagit.

Setup using other IDEs

  1. Create a virtual environment
  2. Pip install dependencies: pip install dagster meltano
  3. Install Meltano plugins: cd meltano && meltano install && cd ..
  4. Set env vars: export MELTANO_PROJECT_ROOT=<path/to/meltano>
  5. Run dagit: dagit -f dagster_meltano/tests/pipeline.py

Testing and Linting

We use Dagster's default setup for testing and linting.

Linting

Specifically linting can be accomplished by installing the appropriate linters:

pip install black pylint isort

And then running them against the codebase:

black dagster_meltano/ && isort dagster_meltano/ && pylint dagster_meltano/ 

dagster-meltano's People

Contributors

jazzysamarkand avatar juleshuisman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.