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

volume mount names upgrade fix #2019

Merged

Conversation

ryandawsonuk
Copy link
Contributor

fixes #2017

@seldondev
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ryandawsonuk

If they are not already assigned, you can assign the PR to them by writing /assign @ryandawsonuk in a comment when ready.

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@seldondev
Copy link
Collaborator

Fri Jun 26 16:56:28 UTC 2020
The logs for [lint] [2] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/2.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=2

@seldondev
Copy link
Collaborator

Fri Jun 26 16:57:36 UTC 2020
The logs for [pr-build] [1] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/1.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=1

@ryandawsonuk
Copy link
Contributor Author

/test integration

@seldondev
Copy link
Collaborator

Fri Jun 26 17:06:06 UTC 2020
The logs for [integration] [3] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/3.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=3

@ryandawsonuk
Copy link
Contributor Author

ryandawsonuk commented Jun 26, 2020

Seems I can't use the curly-braces for jsonpath inside the run command as that leads to:

E     File "<fstring>", line 1
E       (.status.state)
E        ^
E   SyntaxError: invalid syntax

Also FWIW I tried to run kind_test_all locally and first had to change the use of service as I'm on ArchLinux and second hit

ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: 'top_level.txt'
Consider using the `--user` option or check the permissions.

@seldondev
Copy link
Collaborator

Fri Jun 26 17:39:21 UTC 2020
The logs for [lint] [5] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/5.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=5

@seldondev
Copy link
Collaborator

Fri Jun 26 17:40:53 UTC 2020
The logs for [pr-build] [4] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/4.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=4

@ryandawsonuk
Copy link
Contributor Author

/test integration

@seldondev
Copy link
Collaborator

Fri Jun 26 17:44:44 UTC 2020
The logs for [integration] [6] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/6.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=6

@seldondev
Copy link
Collaborator

Fri Jun 26 17:58:06 UTC 2020
The logs for [pr-build] [7] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/7.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=7

@seldondev
Copy link
Collaborator

Fri Jun 26 17:58:10 UTC 2020
The logs for [lint] [8] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/8.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=8

@ryandawsonuk
Copy link
Contributor Author

ryandawsonuk commented Jun 26, 2020

Seems this change to the tests breaks apparently unrelated tests. Not sure why as it stands.

@ukclivecox
Copy link
Contributor

/retest

@seldondev
Copy link
Collaborator

Mon Jun 29 07:47:32 UTC 2020
The logs for [pr-build] [9] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/9.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=9

@ukclivecox
Copy link
Contributor

rebase from master and check notebook in #2021 @ryandawsonuk

@ukclivecox
Copy link
Contributor

/test notebooks

@seldondev
Copy link
Collaborator

Mon Jun 29 07:55:02 UTC 2020
The logs for [notebooks] [10] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/10.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=10

@ryandawsonuk ryandawsonuk force-pushed the 2017-volumemountnamesupgradefix branch from aac34c3 to 40a3617 Compare June 29, 2020 12:47
@seldondev
Copy link
Collaborator

Mon Jun 29 12:48:56 UTC 2020
The logs for [lint] [12] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/12.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=12

@seldondev
Copy link
Collaborator

Mon Jun 29 12:49:20 UTC 2020
The logs for [pr-build] [11] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/11.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=11

@seldondev
Copy link
Collaborator

Mon Jun 29 13:47:16 UTC 2020
The logs for [lint] [18] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/18.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=18

@seldondev
Copy link
Collaborator

Mon Jun 29 13:49:10 UTC 2020
The logs for [integration] [19] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/19.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=19

@seldondev
Copy link
Collaborator

Mon Jun 29 14:54:23 UTC 2020
The logs for [lint] [21] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/21.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=21

@seldondev
Copy link
Collaborator

Mon Jun 29 14:54:46 UTC 2020
The logs for [pr-build] [20] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/20.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=20

@ryandawsonuk
Copy link
Contributor Author

/test integration

@seldondev
Copy link
Collaborator

Mon Jun 29 15:08:58 UTC 2020
The logs for [pr-build] [22] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/22.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=22

@seldondev
Copy link
Collaborator

Mon Jun 29 15:08:59 UTC 2020
The logs for [lint] [23] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/23.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=23

@seldondev
Copy link
Collaborator

Mon Jun 29 15:10:24 UTC 2020
The logs for [integration] [24] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/24.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=24

@ryandawsonuk ryandawsonuk changed the title volume mount names upgrade fix WIP: volume mount names upgrade fix Jun 29, 2020
@ryandawsonuk
Copy link
Contributor Author

ryandawsonuk commented Jun 29, 2020

Have now been trying to test it manually. I installed 1.10 and then a model and upgraded to this branch. It seems the fix does not work as it stands. It prevents it adding a new seldon podinfo mount but that's not enough. The SeldonDeployment still ends up going to Failed status with description

Deployment.apps "iris-default-0-iris-container" is invalid: spec.template.spec.containers[0].volumeMounts[0].name:
    Not found: "podinfo"'

Seems it ends up creating an invalid Deployment. Not sure why. The controller logs basically just say the same thing.

@ryandawsonuk ryandawsonuk changed the title WIP: volume mount names upgrade fix volume mount names upgrade fix Jun 29, 2020
@seldondev
Copy link
Collaborator

Mon Jun 29 17:32:13 UTC 2020
The logs for [lint] [26] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/26.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=26

@ryandawsonuk
Copy link
Contributor Author

Have now taken a different approach. Am modifying the volume mount from the mutator. This 'works' but unfortunately doesn't get fed back to the SeldonDeployment in the cluster that was previously already mutated.

@ryandawsonuk
Copy link
Contributor Author

/test integration

@seldondev
Copy link
Collaborator

Mon Jun 29 17:33:49 UTC 2020
The logs for [pr-build] [25] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/25.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=25

@ryandawsonuk
Copy link
Contributor Author

/test notebooks

@seldondev
Copy link
Collaborator

Mon Jun 29 17:36:17 UTC 2020
The logs for [integration] [27] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/27.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=27

@seldondev
Copy link
Collaborator

Mon Jun 29 17:38:00 UTC 2020
The logs for [notebooks] [28] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/28.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=28

@ryandawsonuk
Copy link
Contributor Author

/test notebooks

@seldondev
Copy link
Collaborator

Tue Jun 30 07:05:23 UTC 2020
The logs for [notebooks] [29] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/29.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=29

@ryandawsonuk
Copy link
Contributor Author

ryandawsonuk commented Jun 30, 2020

Turns out the reason why the podinfo name doesn't get changed automatically is because the mutator doesn't get called as a webhook on upgrade of the controller. It is only called when there's an actual change to the SeldonDeployment. Slightly confusingly, our reconcile loop calls the mutator code so upgrading the controller does result in the code getting called and hence everything automatically 'works' (SeldonDeployment doesn't go to failed with this code). But it doesn't get updated in k8s because the webhook hasn't actually been invoked as a webhook.

If you make an edit to the SeldonDeployment (any trivial edit) then the webhook will be called and it then changes on the SeldonDeployment from podinfo to seldon-podinfo (confirmed that by testing).

@ryandawsonuk
Copy link
Contributor Author

/test notebooks

@seldondev
Copy link
Collaborator

Tue Jun 30 10:38:19 UTC 2020
The logs for [notebooks] [30] will show after the pipeline context has finished.
https://github.com/SeldonIO/seldon-core/blob/gh-pages/jenkins-x/logs/SeldonIO/seldon-core/PR-2019/30.log

impatient try
jx get build logs SeldonIO/seldon-core/PR-2019 --build=30

@seldondev
Copy link
Collaborator

@ryandawsonuk: The following test failed, say /retest to rerun them all:

Test name Commit Details Rerun command
notebooks fe75da7 link /test notebooks

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. I understand the commands that are listed here.

@ukclivecox ukclivecox merged commit 18b02a2 into SeldonIO:master Jun 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

upgrading from 1.1 to 1.2 with existing sdep leads to volume mount error
3 participants