Skip to content

yujoy/tap-megaphone

Repository files navigation

Singer Tap for Megaphone

test Code style: black PyPI Version License Python

tap-megaphone is a Singer tap for the Megaphone API built with the Meltano Tap SDK for Singer Taps.

Built with the Meltano SDK for Singer Taps.

Installation

  • Developer TODO: Update the below as needed to correctly describe the install procedure. For instance, if you do not have a PyPi repo, or if you want users to directly install from your git repo, you can modify this step as appropriate.
pipx install tap-megaphone

Supported Streams

The Megaphone tap replicates the following data:

Configuration

The tap accepts the following config options:

A full list of supported settings and capabilities for this tap is available by running:

tap-megaphone --about

Usage

You can easily run tap-megaphone by itself or in a pipeline using Meltano.

Executing the Tap Directly

tap-megaphone --version
tap-megaphone --help
tap-megaphone --config CONFIG --discover > ./catalog.json

Developer Resources

  • Developer TODO: As a first step, scan the entire project for the text "TODO:" and complete any recommended steps, deleting the "TODO" references once completed.

Initialize your Development Environment

pipx install poetry
poetry install

Create and Run Tests

Create tests within the tap_megaphone/tests subfolder and then run:

poetry run pytest

You can also test the tap-megaphone CLI interface directly using poetry run:

poetry run tap-megaphone --help

Testing with Meltano

Note: This tap will work in any Singer environment and does not require Meltano. Examples here are for convenience and to streamline end-to-end orchestration scenarios.

Your project comes with a custom meltano.yml project file already created. Open the meltano.yml and follow any "TODO" items listed in the file.

Next, install Meltano (if you haven't already) and any needed plugins:

# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-megaphone
meltano install

Now you can test and orchestrate using Meltano:

# Test invocation:
meltano invoke tap-megaphone --version
# OR run a test `elt` pipeline:
meltano elt tap-megaphone target-jsonl

SDK Dev Guide

See the dev guide for more instructions on how to use the SDK to develop your own taps and targets.