Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Source Harvest: support oauth #7707

Closed
Tracked by #7000
cheyura opened this issue Nov 6, 2021 · 1 comment · Fixed by #7952
Closed
Tracked by #7000

Source Harvest: support oauth #7707

cheyura opened this issue Nov 6, 2021 · 1 comment · Fixed by #7952
Assignees
Labels
area/connectors Connector related issues connectors/source/harvest connectors/sources-api requires-oauth connector which requires oauth type/enhancement New feature or request

Comments

@cheyura
Copy link

cheyura commented Nov 6, 2021

Tell us about the problem you're trying to solve

With the release of Airbyte Cloud, we need to start supporting Oauth for this connector, since it's the recommended way of authenticating users into a SaaS application.

If this connector doesn't support oauth already (i.e: doesn't accept a client_id and client_secret) then we need to update its spec to accept those parameters. There are two ways to do this:

If the connector already supports some auth mechanism like api_key, I suggest that this be a oneof nested inside a top-level field called "authentication":

{ authentication: { type: object oneOf: [ // api key, // oauth ] } }

If the connector only supports webflow oauth, then no changes are needed to the properties format and we will only need to add annotations.

See the connector spec reference in the docs for reference on how a oneof can be implemented.

This should be done in a backwards compatible manner i.e: users currently supplying authentication info in the config's top-level should not be impacted by this change.

Acceptance criteria

The connector supports oauth webflow authentication with client_id/client_secret in a backwards compatible manner
Oauth properties are annotated properly. See this PR for an example

@cheyura cheyura added type/enhancement New feature or request requires-oauth connector which requires oauth labels Nov 6, 2021
@sherifnada sherifnada added the area/connectors Connector related issues label Nov 8, 2021
@lazebnyi lazebnyi changed the title Source Harvest: Support OAuth Source Harvest: support oauth Nov 8, 2021
@grubberr grubberr self-assigned this Nov 12, 2021
@grubberr grubberr linked a pull request Nov 14, 2021 that will close this issue
16 tasks
@grubberr
Copy link
Contributor

grubberr commented Nov 15, 2021

/test connector=connectors/source-harvest

🕑 connectors/source-harvest https://github.com/airbytehq/airbyte/actions/runs/1464100150
❌ connectors/source-harvest https://github.com/airbytehq/airbyte/actions/runs/1464100150
🐛 https://gradle.com/s/tmh4q2ju3f7sy
🕑 connectors/source-harvest https://github.com/airbytehq/airbyte/actions/runs/1464100150
✅ connectors/source-harvest https://github.com/airbytehq/airbyte/actions/runs/1464100150
Python tests coverage:

	 ---------- coverage: platform linux, python 3.8.10-final-0 -----------
	 unit_tests/unit_test.py::test_example_method �[32mPASSED�[0m/actions-runner/_work/airbyte/airbyte/airbyte-integrations/connectors/source-harvest/.venv/lib/python3.8/site-packages/coverage/control.py:761: CoverageWarning: No data was collected. (no-data-collected)
	 Name                         Stmts   Miss  Cover
	   self._warn("No data was collected.", slug="no-data-collected")
	 ------------------------------------------------
	 source_harvest/__init__.py       2      2     0%
	 source_harvest/auth.py           9      9     0%
	 source_harvest/source.py        24     24     0%
	 source_harvest/streams.py      162    162     0%
	 ------------------------------------------------
	 TOTAL                          197    197     0%
	 ---------- coverage: platform linux, python 3.8.10-final-0 -----------
	 Name                                                 Stmts   Miss  Cover
	 ------------------------------------------------------------------------
	 source_acceptance_test/__init__.py                       2      0   100%
	 source_acceptance_test/base.py                          10      4    60%
	 source_acceptance_test/config.py                        75      8    89%
	 source_acceptance_test/conftest.py                     108    108     0%
	 source_acceptance_test/plugin.py                        47     47     0%
	 source_acceptance_test/tests/__init__.py                 4      0   100%
	 source_acceptance_test/tests/test_core.py              200     94    53%
	 source_acceptance_test/tests/test_full_refresh.py       38     27    29%
	 source_acceptance_test/tests/test_incremental.py        69     38    45%
	 source_acceptance_test/utils/__init__.py                 6      0   100%
	 source_acceptance_test/utils/asserts.py                 37      2    95%
	 source_acceptance_test/utils/common.py                  41     24    41%
	 source_acceptance_test/utils/compare.py                 62     25    60%
	 source_acceptance_test/utils/connector_runner.py        82     49    40%
	 source_acceptance_test/utils/json_schema_helper.py     115     14    88%
	 ------------------------------------------------------------------------
	 TOTAL                                                  896    440    51%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/connectors Connector related issues connectors/source/harvest connectors/sources-api requires-oauth connector which requires oauth type/enhancement New feature or request
Projects
No open projects
Archived in project
Development

Successfully merging a pull request may close this issue.

4 participants