meir.shamay
07/13/2020, 3:43 PMdouwe_maan
07/13/2020, 3:45 PMmeltano remove <plugin> command, but you can directly remove plugins from your project by simply modifying meltano.ymlmeir.shamay
07/13/2020, 3:45 PMmeir.shamay
07/13/2020, 3:48 PMdouwe_maan
07/13/2020, 3:49 PMremove command đ I suggest editing meltano.yml directlymeir.shamay
07/13/2020, 3:50 PMdouwe_maan
07/13/2020, 3:51 PMmeltano install does do updates as long as the PyPI package version number is different from the currently installed version. If that's not behaving as expected, you can manually delete the plugin's installation directory at .meltano/<plugin type>/<plugin name> and rerun meltano installmeir.shamay
07/13/2020, 3:52 PMmeir.shamay
07/13/2020, 4:00 PMmeir.shamay
07/13/2020, 4:03 PMdouwe_maan
07/13/2020, 4:05 PMconfig.json and state.json as Metlano handles this for you: https://meltano.com/#meltano-configmeir.shamay
07/13/2020, 4:10 PMdouwe_maan
07/13/2020, 4:18 PMdouwe_maan
07/13/2020, 4:18 PMmeltano config to store them in meltano.yml , or passing them as environment variables at invocation timemeir.shamay
07/13/2020, 4:22 PMmeir.shamay
07/13/2020, 4:23 PMmeir.shamay
07/13/2020, 4:23 PMmeir.shamay
07/13/2020, 4:24 PMNo state was found, complete import.
before_invoke hook 'run_discovery_hook' has failed: Schema discovery failed: command ['/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/bin/tap-gmail', '--config', '/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/run/tap-gmail/tap.config.json', '--discover'] returned 1: CRITICAL [Errno 2] No such file or directory: 'config.json'
Traceback (most recent call last):
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/bin/tap-gmail", line 11, in <module>
load_entry_point('tap-gmail', 'console_scripts', 'tap-gmail')()
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/singer/utils.py", line 229, in wrapped
return fnc(*args, **kwargs)
File "/Users/may/development/project/tap-gmail/tap_gmail/__init__.py", line 42, in main
gmail_client = client_init(parsed_args.config)
File "/Users/may/development/project/tap-gmail/tap_gmail/__init__.py", line 30, in client_init
credentials = service_account.Credentials.from_service_account_file('config.json', scopes=SCOPES)
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/google/oauth2/service_account.py", line 226, in from_service_account_file
filename, require=["client_email", "token_uri"]
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/google/auth/_service_account_info.py", line 72, in from_filename
with io.open(filename, "r", encoding="utf-8") as json_file:
FileNotFoundError: [Errno 2] No such file or directory: 'config.json'
CRITICAL [Errno 2] No such file or directory: 'config.json'
Traceback (most recent call last):
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/bin/tap-gmail", line 11, in <module>
load_entry_point('tap-gmail', 'console_scripts', 'tap-gmail')()
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/singer/utils.py", line 229, in wrapped
return fnc(*args, **kwargs)
File "/Users/may/development/project/tap-gmail/tap_gmail/__init__.py", line 42, in main
gmail_client = client_init(parsed_args.config)
File "/Users/may/development/project/tap-gmail/tap_gmail/__init__.py", line 30, in client_init
credentials = service_account.Credentials.from_service_account_file('config.json', scopes=SCOPES)
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/google/oauth2/service_account.py", line 226, in from_service_account_file
filename, require=["client_email", "token_uri"]
File "/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/lib/python3.7/site-packages/google/auth/_service_account_info.py", line 72, in from_filename
with io.open(filename, "r", encoding="utf-8") as json_file:
FileNotFoundError: [Errno 2] No such file or directory: 'config.json'
ELT could not complete, an error happened during the process: Subprocesses didn't exit cleanly: tap(1), target(0)
Traceback (most recent call last):
File "/Users/may/development/project/montara/meltano/.venv/lib/python3.7/site-packages/meltano/cli/elt.py", line 73, in elt
run_extract_load(elt_context, session, dry_run=dry)
File "/Users/may/development/project/montara/meltano/.venv/lib/python3.7/site-packages/meltano/cli/elt.py", line 104, in run_extract_load
singer_runner.run(session, **kwargs)
File "/Users/may/development/project/montara/meltano/.venv/lib/python3.7/site-packages/meltano/core/runner/singer.py", line 158, in run
loop.run_until_complete(self.invoke(tap, tâŚmeir.shamay
07/13/2020, 4:24 PMdouwe_maan
07/13/2020, 4:35 PMcredentials.json is not getting packaged up correctly (did you reference it from package_data in setup.py?) or if it's not read from the correct pathdouwe_maan
07/13/2020, 4:35 PMcredentials.json file? You may not actually want to check those secrets into the package repo đmeir.shamay
07/13/2020, 4:35 PMmeir.shamay
07/13/2020, 4:36 PMdouwe_maan
07/13/2020, 4:37 PMcredentials.json to your project root instead of the package root? Since the project root is always the current working directory when invoking taps and targets, it may be looking theremeir.shamay
07/13/2020, 4:38 PMmeir.shamay
07/13/2020, 4:40 PMdouwe_maan
07/13/2020, 4:41 PMdouwe_maan
07/13/2020, 4:41 PMmeir.shamay
07/13/2020, 4:45 PMdouwe_maan
07/13/2020, 4:48 PMcredentials.json on the fly in your tap based on those?douwe_maan
07/13/2020, 4:49 PMmeir.shamay
07/13/2020, 4:49 PMdouwe_maan
07/13/2020, 4:50 PMmeir.shamay
07/13/2020, 4:54 PMmeir.shamay
07/13/2020, 4:55 PMdouwe_maan
07/13/2020, 4:56 PMmeltano elt output say anything about the target?meir.shamay
07/13/2020, 4:56 PMdouwe_maan
07/13/2020, 4:57 PMoutput destination directory?douwe_maan
07/13/2020, 4:58 PMmeltano config target-jsonl to see how it's currently configuredmeir.shamay
07/13/2020, 4:59 PM{"destination_path": "output", "do_timestamp_file": false}douwe_maan
07/13/2020, 5:01 PMmeir.shamay
07/13/2020, 5:04 PMdouwe_maan
07/13/2020, 5:04 PMtap | targetmeir.shamay
07/13/2020, 5:05 PMmeir.shamay
07/13/2020, 5:06 PMmeir.shamay
07/13/2020, 5:06 PMdouwe_maan
07/13/2020, 5:07 PMmeltano.yml, but it doesnât actually handle the execution, since that will depend on your environment. Airflow is one tool you could use (and we provide a handy default DAG generator to parse the meltano.yml schedules and turn them into Airflow DAGs), but you could also use cron or any other orchestration tooldouwe_maan
07/13/2020, 5:07 PMdouwe_maan
07/13/2020, 5:09 PMmeir.shamay
07/13/2020, 5:09 PMmeir.shamay
07/14/2020, 9:23 AMmeltano invoke tap-gmailmeir.shamay
07/14/2020, 9:23 AMmeir.shamay
07/14/2020, 9:23 AMmeir.shamay
07/14/2020, 9:23 AMmeir.shamay
07/14/2020, 9:24 AMdouwe_maan
07/14/2020, 1:02 PM.meltano/extractors/tap-gmail/venv/bin/tap-gmail directly and pass the correct configuration flags manually?meir.shamay
07/14/2020, 1:02 PMdouwe_maan
07/14/2020, 1:03 PMmeir.shamay
07/14/2020, 1:03 PMdouwe_maan
07/14/2020, 1:04 PMmeir.shamay
07/14/2020, 1:06 PMmeltano elt tap-gmail target-jsonlmeir.shamay
07/14/2020, 1:06 PMmeir.shamay
07/14/2020, 1:06 PMdouwe_maan
07/14/2020, 1:10 PMmeir.shamay
07/14/2020, 1:11 PMmeir.shamay
07/14/2020, 1:11 PMmeir.shamay
07/14/2020, 1:11 PMdouwe_maan
07/14/2020, 1:13 PM___init___.py directly?meir.shamay
07/14/2020, 1:13 PMdouwe_maan
07/14/2020, 1:14 PMmeir.shamay
07/14/2020, 1:15 PMdouwe_maan
07/14/2020, 1:17 PMmeltano invoke tap-gmail wasnât giving anything? Can you run it when meltano --log-level=debug invoke tap-gmail?meir.shamay
07/14/2020, 1:17 PMdouwe_maan
07/14/2020, 1:17 PMmeir.shamay
07/14/2020, 1:20 PMdouwe_maan
07/14/2020, 1:22 PMmeir.shamay
07/14/2020, 1:23 PMmeir.shamay
07/14/2020, 1:24 PMmeir.shamay
07/14/2020, 1:24 PM[2020-07-14 16:20:05,772] [14579|MainThread|root] [DEBUG] Creating engine <meltano.core.project.Project object at 0x10e602d10>@sqlite:////Users/may/development/project/montara/meltano/montara_pipelines/.meltano/meltano.db
[2020-07-14 162005,955] [14579|MainThread|root] [DEBUG] Created configuration stub at <_io.TextIOWrapper name='/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/tap.config.json' mode='w' encoding='UTF-8'>
[2020-07-14 162005,957] [14579|MainThread|root] [DEBUG] Could not find tap.properties.json in /Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/tap.properties.json, skipping.
[2020-07-14 162005,957] [14579|MainThread|root] [DEBUG] Could not find state.json in /Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/state.json, skipping.
[2020-07-14 162006,032] [14579|MainThread|root] [DEBUG] Invoking: ['/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/extractors/tap-gmail/venv/bin/tap-gmail', '--config', '/Users/may/development/project/montara/meltano/montara_pipelines/.meltano/run/tap-gmail/tap.config.json', '--discover']douwe_maan
07/14/2020, 1:31 PMdouwe_maan
07/14/2020, 1:31 PMmeir.shamay
07/14/2020, 1:45 PMdouwe_maan
07/14/2020, 1:48 PMdouwe_maan
07/14/2020, 1:48 PMmeir.shamay
07/14/2020, 1:48 PMdouwe_maan
07/14/2020, 1:49 PMmeir.shamay
07/14/2020, 1:54 PMdouwe_maan
07/14/2020, 1:57 PMmeir.shamay
07/14/2020, 1:58 PMdouwe_maan
07/14/2020, 2:00 PMorchestrate/dags/meltano.py file in your project? And you've used meltano schedule to schedule the pipelines, and are running Airflow using meltano invoke airflow scheduler and meltano invoke airflow webserver?meir.shamay
07/14/2020, 2:07 PMmeir.shamay
07/14/2020, 2:10 PMdouwe_maan
07/14/2020, 3:05 PMdouwe_maan
07/14/2020, 3:07 PMdouwe_maan
07/14/2020, 3:08 PMmeir.shamay
07/14/2020, 3:08 PMdouwe_maan
07/14/2020, 3:11 PM