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

Adding SecretFetcher to pyproject.toml #40

Open
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

n3o-Bhushan
Copy link
Member

@n3o-Bhushan n3o-Bhushan commented May 7, 2024

  • Added SecretFetcher to pyproject.toml
  • Updated poetry.lock
  • Fixed the test for empty secret based on new syntax

@@ -55,6 +55,7 @@ metaflow = ["zillow-metaflow"]
dask = ["dask"]
spark = ["pyspark"]
kubernetes = ["kubernetes"]
SecretFecther = ["SecretFecther"]
Copy link
Member

Choose a reason for hiding this comment

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

Curious what's the intended usage with this change? I was under the assumption that the right portion of the equation here needs to be some python libraries that this package depends on (like pyspark, kubernetes, etc. above), but here SecretFecther is something we define ourselves but not a package dependency?

Copy link
Collaborator

Choose a reason for hiding this comment

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

The goal is to reorganize the dependencies such if the user only want to access secrets that they don't need to also pip install the s3 libraries [s3fs, arrow, parquet, etc].

maybe the extra should be called boto3 instead of SecretFetcher because we are using aws? The extra name of boto3 communicates which dependency we are getting while SecretFetcher is the SDK abstraction. Or the extra be named aws and kubernetes for k8s secrets (which already exists).

Copy link
Member Author

Choose a reason for hiding this comment

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

That makes sense. I included SecretFetcher as mentioned in the ticket for on-call. @talebzeghmi Just boto3 would be enough though?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Plus kubernetes maybe? Might need some testing.
We'd also have to move out the s3 libraries into another s3 extra, which makes this a breaking change forcing a schema major version bump...

Copy link
Member

Choose a reason for hiding this comment

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

Yeah mostly I'm taking this extra pattern as a way to separate out components and dependencies we do not always need. However, in this current pattern if we always need secret fetcher, we do not need to put it as extra? Basically wondering what actual library is blocking us.

Copy link
Collaborator

Choose a reason for hiding this comment

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

What was preventing Yanik from using zdatasets is that he didn't want the set of s3 libraries [s3fs, arrow, parquet, etc] installed if he is only using SecretFetcher.

Could there be a default extra, say named s3?

Copy link
Member

Choose a reason for hiding this comment

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

Yeah that could make more sense!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants