Skip to content

add apps launcher handling#1356

Open
wesjdj wants to merge 2 commits into
add-apps-featurefrom
add-apps-launcher-handling
Open

add apps launcher handling#1356
wesjdj wants to merge 2 commits into
add-apps-featurefrom
add-apps-launcher-handling

Conversation

@wesjdj

@wesjdj wesjdj commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

/deploy renku=add-apps-beta extra-values=apps.enabled=true

@wesjdj wesjdj requested review from a team, SalimKayal and sgaist as code owners June 18, 2026 09:58
@wesjdj wesjdj changed the base branch from add-apps-feature to add-apps-list-patch June 18, 2026 10:01
@wesjdj wesjdj marked this pull request as draft June 18, 2026 10:01
@RenkuBot

Copy link
Copy Markdown
Contributor

You can access the deployment of this PR at https://renku-ci-ds-1356.dev.renku.ch

@coveralls

coveralls commented Jun 24, 2026

Copy link
Copy Markdown

Coverage Report for CI Build 28371791278

Warning

No base build found for commit 28a3164 on add-apps-feature.
Coverage changes can't be calculated without a base build.
If a base build is processing, this comment will update automatically when it completes.

Coverage: 86.137%

Details

  • Patch coverage: 12 uncovered changes across 5 files (30 of 42 lines covered, 71.43%).

Uncovered Changes

File Changed Covered %
components/renku_data_services/renku_apps/repository.py 8 2 25.0%
components/renku_data_services/session/blueprints.py 13 11 84.62%
components/renku_data_services/session/db.py 13 11 84.62%
components/renku_data_services/project/blueprints.py 2 1 50.0%
components/renku_data_services/project/core.py 3 2 66.67%
Total (7 files) 42 30 71.43%

Coverage Regressions

Requires a base build to compare against. How to fix this →


Coverage Stats

Coverage Status
Relevant Lines: 31999
Covered Lines: 27563
Line Coverage: 86.14%
Coverage Strength: 1.5 hits per line

💛 - Coveralls

@wesjdj wesjdj force-pushed the add-apps-list-patch branch from 4661405 to 7d804ae Compare June 29, 2026 10:31
Base automatically changed from add-apps-list-patch to add-apps-feature June 29, 2026 12:03
@wesjdj wesjdj force-pushed the add-apps-launcher-handling branch from 2e13a12 to ce99c90 Compare June 29, 2026 12:24
@wesjdj wesjdj marked this pull request as ready for review June 29, 2026 12:40

@olevski olevski left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

One small thing. But if you prefer we can address everything in future/follow up PRs.

Comment on lines +99 to +104
project = await self.project_repo.get_project(user, launcher.project_id)
runtime_state = await self.k8s_client.get_app_deployment_for_project(project, launcher)
if runtime_state is None:
return None
await self.delete_app(user, runtime_state.name)
return None

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We should be able to use labels in k8s so that we can retrieve the app based on the launcher id. Or alternatively we can save the application name from k8s into the launcher table. But the launcher table is already getting complicated. So I would go towarrds finding the app with the launcher labels. That way you dont have to find the project or the launcher.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

You can also try to find it based on reconstructing the name from the project and launcher and if that fails then fall back to the labels.

Comment on lines +296 to +301
if project_patch.visibility == Visibility.PRIVATE and await self.session_repo.project_has_app_launchers(
user, project_id
):
raise errors.ValidationError(
message="This project cannot be made private because it has one or more app launchers."
)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

comment(non-blocking): This is fine. Just not sure what the desired behaviour is. but if we need to change the behaviour I propose we do it in a follow up PR. I asked for confirmation in slack here: https://swiss-data-science.slack.com/archives/C0B1W8RBQBX/p1782737951990709

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Got confirmation that the desired behaviour is to not require the user to delete the app. But the backend should turn off the app and then prevent the app from being restarted as long as the project is private. But lets come back to this in a followup PR.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Or if you really want to address it here - then go ahead.

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.

4 participants