]>
git.immae.eu Git - github/fretlink/tap-google-sheets.git/blob - __init__.py
f97d4b8862dd2fb932808232f506e09227573d47
7 from singer
import metadata
, utils
8 from tap_google_sheets
.client
import GoogleClient
9 from tap_google_sheets
.discover
import discover
10 from tap_google_sheets
.sync
import sync
12 LOGGER
= singer
.get_logger()
14 REQUIRED_CONFIG_KEYS
= [
23 def do_discover(client
, spreadsheet_id
):
25 LOGGER
.info('Starting discover')
26 catalog
= discover(client
, spreadsheet_id
)
27 json
.dump(catalog
.to_dict(), sys
.stdout
, indent
=2)
28 LOGGER
.info('Finished discover')
31 @singer.utils.handle_top_exception(LOGGER
)
34 parsed_args
= singer
.utils
.parse_args(REQUIRED_CONFIG_KEYS
)
36 with GoogleClient(parsed_args
.config
['client_id'],
37 parsed_args
.config
['client_secret'],
38 parsed_args
.config
['refresh_token'],
39 parsed_args
.config
['user_agent']) as client
:
43 state
= parsed_args
.state
45 config
= parsed_args
.config
46 spreadsheet_id
= config
.get('spreadsheet_id')
48 if parsed_args
.discover
:
49 do_discover(client
, spreadsheet_id
)
50 elif parsed_args
.catalog
:
53 catalog
=parsed_args
.catalog
,
56 if __name__
== '__main__':