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

[Engprod] Stable python package management #3078

Closed
Bobgy opened this issue Feb 14, 2020 · 10 comments · Fixed by #4310
Closed

[Engprod] Stable python package management #3078

Bobgy opened this issue Feb 14, 2020 · 10 comments · Fixed by #4310
Assignees
Labels
area/engprod lifecycle/frozen priority/p1 status/triaged Whether the issue has been explicitly triaged

Comments

@Bobgy
Copy link
Contributor

Bobgy commented Feb 14, 2020

We have done many hotfixes like

Also e.g. things don't work when we upgrade base google/cloud-sdk image.

Can we set up a stable python package management strategy that pins all the packages we use?

Some options:

UPDATE: we have decided to go with pip-tools, because it's lightweight and just focus on the dependency pinning task we wanted.

/cc @numerology
/cc @Ark-kun
/area engprod

@Ark-kun
Copy link
Contributor

Ark-kun commented Feb 18, 2020

I think we have two goals here:

  • Test the SDK in a stable environment
  • Test the SDK in a more recent environment that the user might have

Python's way of pinning dependencies is to freeze the packages to a file: pip3 freeze > requirements.txt which can then be used to reproduce the environment: pip3 install -r requirements.txt.

So, we should probably test both ways - test with pinned packages installed from requirements.txt and test with latest packages installed by running the setup.py.

We should probably use pinned versions for the image building.

@Bobgy
Copy link
Contributor Author

Bobgy commented Feb 19, 2020

Test the SDK in a more recent environment that the user might have

@Ark-kun Thanks, totally make sense to me. Can we handle this goal in post submit test instead, so it is not presubmit blocking?

@Ark-kun
Copy link
Contributor

Ark-kun commented Feb 24, 2020

Can we handle this goal in post submit test instead, so it is not presubmit blocking?

Sounds good.

@Ark-kun Ark-kun self-assigned this Feb 24, 2020
@Bobgy Bobgy added status/triaged Whether the issue has been explicitly triaged priority/p1 labels Mar 4, 2020
@Bobgy
Copy link
Contributor Author

Bobgy commented Mar 6, 2020

TODOs:

@Ark-kun
Copy link
Contributor

Ark-kun commented Mar 18, 2020

  • SDK

@discordianfish
Copy link
Member

Metadata writer image: #3408

@Ark-kun
Copy link
Contributor

Ark-kun commented Apr 16, 2020

The visualization-server licenses seem to be broken after some package got updated.

@Bobgy
Copy link
Contributor Author

Bobgy commented Apr 16, 2020

@Ark-kun OK, I will try to do the same for visualization-server.

@stale
Copy link

stale bot commented Jul 16, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the lifecycle/stale The issue / pull request is stale, any activities remove this label. label Jul 16, 2020
@Bobgy
Copy link
Contributor Author

Bobgy commented Jul 16, 2020

/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen and removed lifecycle/stale The issue / pull request is stale, any activities remove this label. labels Jul 16, 2020
k8s-ci-robot pushed a commit that referenced this issue Aug 3, 2020
* build: fix visualization server build failure by adding missing licenses for new deps

* wip

* chore: pin visualization server python dependencies

* updates

* update licenses
chensun pushed a commit to chensun/pipelines that referenced this issue Aug 7, 2020
 (kubeflow#4310)

* build: fix visualization server build failure by adding missing licenses for new deps

* wip

* chore: pin visualization server python dependencies

* updates

* update licenses
jingzhang36 pushed a commit to jingzhang36/pipelines that referenced this issue Aug 12, 2020
 (kubeflow#4310)

* build: fix visualization server build failure by adding missing licenses for new deps

* wip

* chore: pin visualization server python dependencies

* updates

* update licenses
Bobgy added a commit that referenced this issue Aug 12, 2020
* build: fix visualization server build failure by adding missing licenses for new deps

* wip

* chore: pin visualization server python dependencies

* updates

* update licenses
Jeffwan pushed a commit to Jeffwan/pipelines that referenced this issue Dec 9, 2020
 (kubeflow#4310)

* build: fix visualization server build failure by adding missing licenses for new deps

* wip

* chore: pin visualization server python dependencies

* updates

* update licenses
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/engprod lifecycle/frozen priority/p1 status/triaged Whether the issue has been explicitly triaged
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants