Skip to content

🎉 Source Hubspot: Add private app authentication #14412

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

Conversation

vladimir-remar
Copy link
Contributor

What

Related to this upcoming-api-key-sunset

How

Add a TokenAuthenticator

🚨 User Impact 🚨

Are there any breaking changes? What is the end result perceived by the user? If yes, please merge this PR with the 🚨🚨 emoji so changelog authors can further highlight this if needed.

Pre-merge Checklist

Expand the relevant checklist and delete the others.

Updating a connector

Community member or Airbyter

  • Grant edit access to maintainers (instructions)
  • Secrets in the connector's spec are annotated with airbyte_secret
  • Unit & integration tests added and passing. Community members, please provide proof of success locally e.g: screenshot or copy-paste unit, integration, and acceptance test output. To run acceptance tests for a Python connector, follow instructions in the README. For java connectors run ./gradlew :airbyte-integrations:connectors:<name>:integrationTest.
  • Code reviews completed
  • Documentation updated
    • Connector's README.md
    • Connector's bootstrap.md. See description and examples
    • Changelog updated in docs/integrations/<source or destination>/<name>.md including changelog. See changelog example
  • PR name follows PR naming conventions

Airbyter

If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.

  • Create a non-forked branch based on this PR and test the below items on it
  • Build is successful
  • If new credentials are required for use in CI, add them to GSM. Instructions.
  • /test connector=connectors/<name> command is passing
  • New Connector version released on Dockerhub and connector version bumped by running the /publish command described here

Tests

Unit

Put your unit tests output here.

Integration

Put your integration tests output here.

Acceptance

Put your acceptance tests output here.

@github-actions github-actions bot added the area/connectors Connector related issues label Jul 5, 2022
@marcosmarxm marcosmarxm changed the title 🎉Add private app authentication 🎉 Source Hubspot: Add private app authentication Jul 5, 2022
@harshithmullapudi
Copy link
Contributor

Hey @vladimir-remar thanks for the contribution. Couple of more steps and we are there. Here is documentation for updating an existing connector https://docs.airbyte.io/connector-development#updating-an-existing-connector

@harshithmullapudi harshithmullapudi self-requested a review July 6, 2022 04:10
@harshithmullapudi harshithmullapudi self-assigned this Jul 6, 2022
@github-actions github-actions bot added the area/documentation Improvements or additions to documentation label Jul 6, 2022
@harshithmullapudi
Copy link
Contributor

harshithmullapudi commented Jul 6, 2022

/test connector=connectors/source-hubspot

🕑 connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2621820633
✅ connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2621820633
Python tests coverage:

Name                                                 Stmts   Miss  Cover
------------------------------------------------------------------------
source_acceptance_test/utils/__init__.py                 6      0   100%
source_acceptance_test/tests/__init__.py                 4      0   100%
source_acceptance_test/__init__.py                       2      0   100%
source_acceptance_test/tests/test_full_refresh.py       52      2    96%
source_acceptance_test/utils/asserts.py                 37      2    95%
source_acceptance_test/config.py                        77      6    92%
source_acceptance_test/utils/json_schema_helper.py     105     13    88%
source_acceptance_test/tests/test_incremental.py       121     25    79%
source_acceptance_test/utils/common.py                  80     17    79%
source_acceptance_test/tests/test_core.py              294    106    64%
source_acceptance_test/utils/compare.py                 62     23    63%
source_acceptance_test/base.py                          10      4    60%
source_acceptance_test/utils/connector_runner.py       110     48    56%
------------------------------------------------------------------------
TOTAL                                                  960    246    74%
Name                         Stmts   Miss  Cover
------------------------------------------------
source_hubspot/errors.py         6      0   100%
source_hubspot/__init__.py       2      0   100%
source_hubspot/helpers.py       70      3    96%
source_hubspot/streams.py      769     67    91%
source_hubspot/source.py        98     21    79%
------------------------------------------------
TOTAL                          945     91    90%

Build Passed

Test summary info:

All Passed

@@ -87,7 +87,8 @@ def get_common_params(self, config) -> Mapping[str, Any]:
api = self.get_api(config=config)
common_params = dict(api=api, start_date=start_date, credentials=credentials)

if credentials.get("credentials_title") == "OAuth Credentials":
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we create constants for 2 strings and use them instead?

@harshithmullapudi
Copy link
Contributor

Hey @vladimir-remar could you look at that one small change?

@vladimir-remar
Copy link
Contributor Author

vladimir-remar commented Jul 11, 2022

Hey @vladimir-remar could you look at that one small change?

Thanks for your patience, I will check it ASAP.

@vladimir-remar
Copy link
Contributor Author

@harshithmullapudi could you take a look on this and let me know if there is something new to update?

@bjgbeelen
Copy link
Contributor

@vladimir-remar I see the branch has conflicts again, that's something to already resolve perhaps for smooth merging soon

@vladimir-remar
Copy link
Contributor Author

@vladimir-remar I see the branch has conflicts again, that's something to already resolve perhaps for smooth merging soon

@bjgbeelen @harshithmullapudi conflicts already fixed

@harshithmullapudi
Copy link
Contributor

harshithmullapudi commented Jul 15, 2022

/test connector=connectors/source-hubspot

🕑 connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2676019937
✅ connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2676019937
Python tests coverage:

Name                                                 Stmts   Miss  Cover
------------------------------------------------------------------------
source_acceptance_test/utils/__init__.py                 6      0   100%
source_acceptance_test/tests/__init__.py                 4      0   100%
source_acceptance_test/__init__.py                       2      0   100%
source_acceptance_test/tests/test_full_refresh.py       52      2    96%
source_acceptance_test/utils/asserts.py                 37      2    95%
source_acceptance_test/config.py                        77      6    92%
source_acceptance_test/utils/json_schema_helper.py     105     13    88%
source_acceptance_test/tests/test_incremental.py       121     25    79%
source_acceptance_test/utils/common.py                  80     17    79%
source_acceptance_test/tests/test_core.py              294    106    64%
source_acceptance_test/utils/compare.py                 62     23    63%
source_acceptance_test/base.py                          10      4    60%
source_acceptance_test/utils/connector_runner.py       110     48    56%
------------------------------------------------------------------------
TOTAL                                                  960    246    74%
Name                          Stmts   Miss  Cover
-------------------------------------------------
source_hubspot/errors.py          6      0   100%
source_hubspot/constants.py       3      0   100%
source_hubspot/__init__.py        2      0   100%
source_hubspot/helpers.py        70      3    96%
source_hubspot/streams.py       772     68    91%
source_hubspot/source.py         99     21    79%
-------------------------------------------------
TOTAL                           952     92    90%

Build Passed

Test summary info:

All Passed

@harshithmullapudi
Copy link
Contributor

harshithmullapudi commented Jul 15, 2022

/test connector=connectors/source-hubspot

🕑 connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2676840831
✅ connectors/source-hubspot https://github.com/airbytehq/airbyte/actions/runs/2676840831
Python tests coverage:

Name                                                 Stmts   Miss  Cover
------------------------------------------------------------------------
source_acceptance_test/utils/__init__.py                 6      0   100%
source_acceptance_test/tests/__init__.py                 4      0   100%
source_acceptance_test/__init__.py                       2      0   100%
source_acceptance_test/tests/test_full_refresh.py       52      2    96%
source_acceptance_test/utils/asserts.py                 37      2    95%
source_acceptance_test/config.py                        77      6    92%
source_acceptance_test/utils/json_schema_helper.py     105     13    88%
source_acceptance_test/tests/test_incremental.py       121     25    79%
source_acceptance_test/utils/common.py                  80     17    79%
source_acceptance_test/tests/test_core.py              294    106    64%
source_acceptance_test/utils/compare.py                 62     23    63%
source_acceptance_test/base.py                          10      4    60%
source_acceptance_test/utils/connector_runner.py       110     48    56%
------------------------------------------------------------------------
TOTAL                                                  960    246    74%
Name                          Stmts   Miss  Cover
-------------------------------------------------
source_hubspot/errors.py          6      0   100%
source_hubspot/constants.py       3      0   100%
source_hubspot/__init__.py        2      0   100%
source_hubspot/helpers.py        70      3    96%
source_hubspot/streams.py       772     68    91%
source_hubspot/source.py         99     21    79%
-------------------------------------------------
TOTAL                           952     92    90%

Build Passed

Test summary info:

All Passed

@harshithmullapudi
Copy link
Contributor

harshithmullapudi commented Jul 17, 2022

/publish connector=connectors/source-hubspot

🕑 Publishing the following connectors:
connectors/source-hubspot
https://github.com/airbytehq/airbyte/actions/runs/2685196861


Connector Did it publish? Were definitions generated?
connectors/source-hubspot

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@optical
Copy link

optical commented Aug 3, 2022

Hi folks, apologies if this isn't the correct place for this question. Looking at using the Private App authentication here, but I'm unsure of exactly which Private App scopes are required by the integration? It looks like they're different to the oauth scopes that are well documented in the Airbyte Hubspot connector docs

@mranawake
Copy link

I second @optical suggestion, best if the team update the docs at https://docs.airbyte.com/integrations/sources/hubspot/ and include a 3rd column outlining private app scopes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/connectors Connector related issues area/documentation Improvements or additions to documentation bounty community connectors/source/hubspot
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

7 participants