-
Notifications
You must be signed in to change notification settings - Fork 945
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
feat: Add Salesforce extractor #1370
Conversation
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Unit test failed because it doesn't have the simple-salesforce dependency. How do I add that in? |
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
you could add a salesforce section in https://github.com/amundsen-io/amundsen/blob/main/databuilder/setup.py following other examples. |
I did that but I neglected to add it to |
Linting is failing. I ran |
Signed-off-by: benrifkind <ben.rifkind@gmail.com>
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 overall with just one question
# Filter the sobjects if `OBJECT_NAMES_KEY` is set otherwise return all | ||
sobjects = [ | ||
sobject | ||
for sobject in self._client.describe()["sobjects"] |
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.
is sobjects
a typo?
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.
or sobjects == salesforce objects...?
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.
sobjects
is the key in the response so I just used it as the name but I could change it to salesforce_objects
if you prefer.
* SalesForce extractor Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add simple-salesforce dependency Signed-off-by: benrifkind <ben.rifkind@gmail.com> * lint tests Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add license header Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add documentation Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add salesforce to all_deps Signed-off-by: benrifkind <ben.rifkind@gmail.com> * fix lint Signed-off-by: benrifkind <ben.rifkind@gmail.com> * isort Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Actually fix issues Signed-off-by: benrifkind <ben.rifkind@gmail.com>
* SalesForce extractor Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add simple-salesforce dependency Signed-off-by: benrifkind <ben.rifkind@gmail.com> * lint tests Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add license header Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add documentation Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Add salesforce to all_deps Signed-off-by: benrifkind <ben.rifkind@gmail.com> * fix lint Signed-off-by: benrifkind <ben.rifkind@gmail.com> * isort Signed-off-by: benrifkind <ben.rifkind@gmail.com> * Actually fix issues Signed-off-by: benrifkind <ben.rifkind@gmail.com>
Summary of Changes
This is an implementation of #1352. It adds a SalesForceExtractor which pulls metadata about SalesForce objects into a
TableMetadata
object.Tests
tests/unit/extractor/test_salesforce_extractor.py
Documentation
Added to the README
CheckList
Make sure you have checked all steps below to ensure a timely review.