-
Notifications
You must be signed in to change notification settings - Fork 6
feat: handle platform data for sessions #3910
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
Conversation
|
You can access the deployment of this PR at https://renku-ci-ui-3910.dev.renku.ch |
2bc60ad to
05ae9e1
Compare
cfaf400 to
464f3e8
Compare
464f3e8 to
3d30c3e
Compare
ciyer
left a comment
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.
The code looks very good!
I'm seeing some confusing behavior when changing the platform, though. Try out this scenario:
- Create a session launcher/environment and set it to make an amd64 build.
- (Wait for the image build)
- Then change the environment to arm64
There is no indication that your environment is out of sync with what will be launched when you push the launch button.
Can this be fixed?
If the built image is not compatible, then the badge will show it. |
Yes, this is correct, but the issue is that the settings for the environment may be out of sync with what will be launched if the environment settings were changed and the image has not been rebuilt. |
I don't see any easy way to fix this and I don't want to add too much new UI code for a small use-case (CSCS sessions on arm64). There is a red badge and if users don't understand that it means the session launch will not work, I don't know if they should launch a CSCS session at all. |
ciyer
left a comment
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
|
Tearing down the temporary RenkuLab deplyoment for this PR. |
Update the session launcher UI to indicate when the container image is not compatible with the resource pool. This feature will help users understand how to configure sessions running on
linux/arm64(e.g.daintat CSCS).PR Stack:
/deploy #notest renku=leafty/configure-arm-builds renku-data-services=build/support-build-arm #extra-values=enableInternalGitlab=false,dataService.imageBuilders.enabled=true,dataService.imageBuilders.outputImagePrefix=harbor.dev.renku.ch/renku-build/,dataService.imageBuilders.strategyName=renku-buildpacks-v3,dataService.imageBuilders.builderImage=leafty/test:selector-1763044425287,dataService.imageBuilders.runImage=leafty/test:run-image-1763044425287,dataService.imageBuilders.nodeSelector.renku.io/node-purpose=user,dataService.imageBuilders.tolerations[0].effect=NoSchedule,dataService.imageBuilders.tolerations[0].effect=NoSchedule,dataService.imageBuilders.tolerations[0].key=renku.io/dedicated,dataService.imageBuilders.tolerations[0].operator=Equal,dataService.imageBuilders.tolerations[0].value=user,dataService.imageBuilders.platformOverrides.linux/arm64.builderImage=salimkayal/test-arm:cuda-selector-builder-0.1.7,dataService.imageBuilders.platformOverrides.linux/arm64.runImage=salimkayal/test-arm:run-cu-0.1.0,dataService.imageBuilders.platformOverrides.linux/arm64.nodeSelector.renku.io/arch=arm64,dataService.imageBuilders.platformOverrides.linux/arm64.nodeSelector.renku.io/node-purpose=user,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[0].effect=NoSchedule,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[0].key=renku.io/dedicated,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[0].operator=Equal,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[0].value=user,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[1].effect=NoSchedule,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[1].key=renku.io/arch,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[1].operator=Equal,dataService.imageBuilders.platformOverrides.linux/arm64.tolerations[1].value=arm64