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

feat: support connected services #1849

Merged
merged 51 commits into from
May 15, 2024

Conversation

leafty
Copy link
Member

@leafty leafty commented Apr 25, 2024

This PR adds support to mount repositories from external sources in session. This requires connected services support from renku-data-services. Also, the API for starting Renku 2.0 sessions has been modified to accept external repositories.

Changes in notebooks:

  • Refactored the UserServer class to be an abstract class. Renku1UserServer and Renku2UserServer inherit from UserServer and contain the corresponding adaptations needed to support Renku 1.0 and Renku 2.0 sessions respectively.
  • Changed the amalthea patches to reflect changes in git-clone and git-proxy.
  • Updated the patch_statefulset_tokens() method invoked when resuming sessions.

Changes in git-clone:

  • Refactored the git-clone container to support cloning repositories from any source.
  • Cloning is done optimistically. The git-clone container will not crash if a repository cannot be cloned.
  • For private repositories, a git provider must be configured and will be used to clone.
  • The container now only uses the renku_access_token.

Changes in git-proxy:

  • Refactored the git-proxy container to support injecting credentials from external services.
  • The git-proxy is a simple pass-through for anonymous sessions (meaning it should probably not run for anonymous sessions).
  • Repositories matching a configured git provider will have credentials injected:
    • From renku-gateway-auth for the internal GitLab
    • From renku-data-services for other services
  • The container now only uses the renku_access_token and the renku_refresh_token.

See: SwissDataScienceCenter/renku-data-services#179
This feature can be tested at: https://renku-ci-ds-179.dev.renku.ch/v2.

/deploy renku-data-services=build/add-connected-services-demo renku=build/add-connected-services-demo renku-ui=build/add-connected-services-demo

@leafty leafty force-pushed the leafty/build-connected-services branch from bd9228d to 648d921 Compare April 26, 2024 12:42
@leafty leafty force-pushed the leafty/build-connected-services branch from 648d921 to f15f746 Compare April 26, 2024 12:56
@leafty leafty force-pushed the leafty/build-connected-services branch from 77fdda5 to 33190c2 Compare April 29, 2024 09:36
@leafty leafty force-pushed the leafty/build-connected-services branch from f576bca to 32bddb0 Compare April 29, 2024 13:42
@leafty leafty force-pushed the leafty/build-connected-services branch from 987e876 to 87cb311 Compare April 29, 2024 15:09
@leafty leafty force-pushed the leafty/build-connected-services branch from 76449a1 to ef61ee4 Compare April 30, 2024 09:29
@leafty leafty marked this pull request as ready for review May 7, 2024 09:04
@leafty leafty requested a review from a team as a code owner May 7, 2024 09:04
@leafty leafty changed the base branch from master to build/connected-services-final May 7, 2024 09:05
@leafty leafty force-pushed the leafty/build-connected-services branch from 24725fc to efa3eb1 Compare May 10, 2024 10:03
@olevski olevski self-assigned this May 10, 2024
@Panaetius Panaetius assigned Panaetius and unassigned olevski May 14, 2024
@leafty leafty temporarily deployed to renku-ci-nb-1849 May 15, 2024 12:36 — with GitHub Actions Inactive
@RenkuBot
Copy link
Contributor

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

@leafty leafty temporarily deployed to renku-ci-nb-1849 May 15, 2024 12:46 — with GitHub Actions Inactive
@leafty leafty merged commit fa405ba into build/connected-services-final May 15, 2024
18 of 20 checks passed
@leafty leafty deleted the leafty/build-connected-services branch May 15, 2024 14:07
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