-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Pipenv #4494
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
Pipenv #4494
Conversation
Signed-off-by: Rein van 't Veer <reinvantveer@gmail.com>
…lity checks Signed-off-by: Rein van 't Veer <reinvantveer@gmail.com>
Signed-off-by: Rein van 't Veer <reinvantveer@gmail.com>
Signed-off-by: Rein van 't Veer <reinvantveer@gmail.com>
Signed-off-by: Rein van 't Veer <reinvantveer@gmail.com>
#4477 (comment) was accepted here |
I guess 5 commits in a PR is better than 380 😆 |
Signed-off-by: Rein van 't Veer <reinvantveer@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.
@reinvantveer wdyt about pip freeze
-ing all deps, to avoid issues like this?
@estroz 👍 This question couldn't have come at a better time. This PR already solves this, in https://github.com/operator-framework/operator-sdk/pull/4494/files#diff-82452578a3e817b3b4dc5c154471041589c4b535216c59dbd8982bc18e2f8d32R125 and using So in short: yes I think pinning is good here and pipenv provides a solid method to implement this. |
@estroz I'd consider pinning
|
@reinvantveer I totally missed the lock file, awesome!
I’m in favor of this option. |
@estroz Cool. I do some Rust programming in my spare time and it's awesome. If it's OK with you I'd like to process this PR first before diving into the Rust compiler to upgrade the cryptography package. This PR is pretty much self-contained (with the whole pinning business through the lockfile) so it should be the first next step I think. |
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
/cherry-pick v1.4.x |
@varshaprasad96: #4494 failed to apply on top of branch "v1.4.x":
In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@varshaprasad96 you can just make the bump on this line in a new PR. |
@reinvantveer this PR might've been merged prematurely. Builds for s390x, ppc64le, arm64 are broken due to gcc (and other deps) not being installed, but during some testing I also discovered that the Pipfile.lock's hashes don't resolve on s390x builds (at least) and I can't debug the issue. I'd like to revert this PR until we can test builds on all platforms using Github Actions for each PR since we're moving away from Travis soon. This is something I'm working on right now using |
This reverts commit 4c0a60d.
This reverts commit 4c0a60d. Signed-off-by: Eric Stroczynski <ericstroczynski@gmail.com>
retry of operator-framework#4538 and operator-framework#4494 Signed-off-by: reinvantveer <reinvantveer@gmail.com>
retry of operator-framework#4538 and operator-framework#4494 Signed-off-by: reinvantveer <reinvantveer@gmail.com>
retry of operator-framework#4538 and operator-framework#4494 Signed-off-by: reinvantveer <reinvantveer@gmail.com>
retry of operator-framework#4538 and operator-framework#4494 Signed-off-by: reinvantveer <reinvantveer@gmail.com>
retry of operator-framework#4538 and operator-framework#4494 Signed-off-by: reinvantveer <reinvantveer@gmail.com>
Description of the change:
Use Pipenv - the Python packaging authority recommended way - as a dependency resolution managemente system and vulnerability checker to install Python dependencies.
This PR is part of #4237 to work towards a more user-friendly way of doing reproducible local builds
Motivation for the change:
Python package dependency is best managed using a fit-for-purpose package manager that checks for dependency conflicts, separates wanted dependencies from required subdependencies and that is able to check for vulnerabilities. The proposed solution is fully backwards compatible.
Checklist
If the pull request includes user-facing changes, extra documentation is required:
changelog/fragments
(seechangelog/fragments/00-template.yaml
)website/content/en/docs