-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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 Amazon Seller Partner: add app_id
to the OAuth Flow (source spec
side)
#27110
Conversation
Before Merging a Connector Pull RequestWow! What a great pull request you have here! 🎉 To merge this PR, ensure the following has been done/considered for each connector added or updated:
If the checklist is complete, but the CI check is failing,
|
dockerRepository: airbyte/source-amazon-seller-partner | ||
githubIssueLabel: source-amazon-seller-partner | ||
icon: amazonsellerpartner.svg | ||
license: MIT | ||
name: Amazon Seller Partner | ||
registries: | ||
cloud: | ||
enabled: false | ||
enabled: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔴 This is set intentionally for the dev-*
env OAuth tests !!! 🔴
This param will be set to True
only when we decide to release the source
back to the Cloud
after all the tests are passed and OAuth is working again.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have we completed all the tests and can we leave the flag as true?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how are you testing this on the dev envs? If doing so via connector version overrides in LaunchDarkly this shouldn't need to be set to true for this case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the results of the tests are available in secondary PR: https://github.com/airbytehq/airbyte-platform-internal/pull/7085
app_id
to the OAuth Flow by defaultapp_id
to the OAuth Flow (source spec
side)
Pre-released version https://github.com/airbytehq/airbyte/actions/runs/5215664388 |
The new The release version would have the tag We can move on and merge this in, but I've faced other issues while @marcosmarxm why would these params be optional for the |
…eller-partner-oauth-fix
Changed GSM configs |
/test connector=connectors/source-amazon-seller-partner
Build PassedTest summary info:
|
dockerRepository: airbyte/source-amazon-seller-partner | ||
githubIssueLabel: source-amazon-seller-partner | ||
icon: amazonsellerpartner.svg | ||
license: MIT | ||
name: Amazon Seller Partner | ||
registries: | ||
cloud: | ||
enabled: false | ||
enabled: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have we completed all the tests and can we leave the flag as true?
...-integrations/connectors/source-amazon-seller-partner/source_amazon_seller_partner/source.py
Outdated
Show resolved
Hide resolved
...-integrations/connectors/source-amazon-seller-partner/source_amazon_seller_partner/source.py
Outdated
Show resolved
Hide resolved
...-integrations/connectors/source-amazon-seller-partner/source_amazon_seller_partner/source.py
Show resolved
Hide resolved
...yte-integrations/connectors/source-amazon-seller-partner/integration_tests/sample_state.json
Outdated
Show resolved
Hide resolved
…eller-partner-oauth-fix
/test connector=connectors/source-amazon-seller-partner
Build PassedTest summary info:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you clarify why this is a breaking change? Is the change just removing a previously-required field? If so, it should be fine if this field is passed through an old config - am i missing something?
dockerRepository: airbyte/source-amazon-seller-partner | ||
githubIssueLabel: source-amazon-seller-partner | ||
icon: amazonsellerpartner.svg | ||
license: MIT | ||
name: Amazon Seller Partner | ||
registries: | ||
cloud: | ||
enabled: false | ||
enabled: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how are you testing this on the dev envs? If doing so via connector version overrides in LaunchDarkly this shouldn't need to be set to true for this case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are these schema changes related to the spec change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how are you testing this on the dev envs? If doing so via connector version overrides in LaunchDarkly this shouldn't need to be set to true for this case.
I've deployed to dev-2
and added the pre-release
version mentioned above for the tests using +New Connector
directly.
I guess the cloud.enabled: true
was not necessary, but I thought the process would be easier before the deployment took place, as missed the fact that the connector was hidden from the cloud.
I didn't use Launch Darkly
. I've made changes directly on the dev-2
db with connectors' source-definition-id
and was able to create and test the OAuth Flow for the pre-release
custom connector.
are these schema changes related to the spec change?
No. This eventually appeared after the Orders
stream has finally enabled for the tests. It was not tested by CAT before.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't use Launch Darkly. I've made changes directly on the dev-2 db with connectors' source-definition-id and was able to create and test the OAuth Flow for the pre-release custom connector.
Ah got it- this worked because the connector is not on the cloud catalog. As a note, if something is in the catalog any manual changes made in the DB will get overwritten 30 seconds later by an automatic update that occurs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apparently, not for oauth_configs db part)
The field |
Got it - this change in itself shouldn't be breaking. However, I'd like to understand what happens to users that have already authorized:
|
As far as this issue says - we do not: https://github.com/airbytehq/oncall/issues/2017#issuecomment-1563064033
Based on the answer in point 1. No. It was not working for 3rd-parties before, and half-working for those who tried using TCS's help. Since we provided our own Therefore the decision to hide it until the OAuth Flow is fixed has been made. @jnr0790 Please confirm.
It's required only for OAuth as a part of the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did not functionally test this, but directionally looks good to me. Thanks for clarifying the breaking change questions - since this won't affect existing users I don't think we need any outreach here.
Left some questions on the acceptance test config to understand why our tests marked this as breaking. Non-blocking though.
We should make sure everything works with the changes outlined on the server-side PR (not hardcoding the app_id) before merging this in.
airbyte-integrations/connectors/source-amazon-seller-partner/metadata.yaml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-amazon-seller-partner/acceptance-test-config.yml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-amazon-seller-partner/acceptance-test-config.yml
Show resolved
Hide resolved
i'll make the server side change tomorrow and provide the results in the related PR. |
Server-side PR: https://github.com/airbytehq/airbyte-platform-internal/pull/7085 has been updated and tested. Works as expected using |
/test connector=connectors/source-amazon-seller-partner
Build PassedTest summary info:
|
|
Step | Result |
---|---|
Validate airbyte-integrations/connectors/source-amazon-seller-partner/metadata.yaml | ✅ |
Connector version semver check. | ✅ |
Connector version increment check. | ✅ |
QA checks | ✅ |
Connector package install | ✅ |
Build source-amazon-seller-partner docker image for platform linux/x86_64 | ✅ |
Unit tests | ✅ |
Acceptance tests | ✅ |
Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command
airbyte-ci connectors --name=source-amazon-seller-partner test
@bazarnov |
@animer3009 Are you a Cloud user? why do you need the
thank you |
@bazarnov Now I custom builded connector. Returned back app_id. log: b464d45a_4683_4c4c_8254_f9c72f5a24ed_logs_17482_txt.txt I am not sure if downgrade only connector will help. First I will try custom builded connector. |
@bazarnov What I noticed is, looks like Airbyte does not wait for Amazon report generation... |
@animer3009 It's odd, because the last updates i've made to this connector didn't touch the fetch logic at all. Could you verify whether or not any rate limits hit recently? as well as start date, please move it to a week ago, for instance. I believe there is nothing to do with the |
@bazarnov Looks like it still started pulling... :) My VM is production. I can't play with it, as it is still working, I will keep it as is. |
@animer3009 I strongly recommend you to create an issue for this, and mention about the upgrading Airbyte, which caused problems, this should be investigated further. Thanks. |
@bazarnov P.s. Now we decided to still upgrade our production server. |
@bazarnov |
@bazarnov |
nicely done! |
What
Resolving: #25773
How
spec.py
by addingapp_id
to theadvanced_auth
specification to get this parameter from instance-wide params provided by Airbytepydantic spec
implementation and use thespec.json
instead for easy modifications.test_source.py
unit testspublic docs
due to removedapp_id
🚨 User Impact 🚨
This change is breaking since the
spec
has changed.