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

Update from auto-update/renku-core-2.9.2 #3483

Closed
wants to merge 9 commits into from
2 changes: 1 addition & 1 deletion .github/workflows/renku-dev-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: actions/[email protected]
- uses: cypress-io/github-action@v5
- uses: cypress-io/github-action@v6
id: cypress
env:
TEST_EMAIL: [email protected]
Expand Down
62 changes: 53 additions & 9 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,22 +1,66 @@
.. _changelog:

0.48.0
------

This release contains a new privacy policy and terms of use in the UI and bug fixes to renku core service related to project migration.

User-Facing Changes
~~~~~~~~~~~~~~~~~~~

**🌟 New Features**

- 📜 **UI**: Show terms of use and privacy policy in the help section
(`#2954 <https://github.com/SwissDataScienceCenter/renku-ui/pull/2954>`_).

**✨ Improvements**

- 🖌 **UI**: Improve appearance of templates on new project page
(`#2999 <https://github.com/SwissDataScienceCenter/renku-ui/pull/2999>`_).
- 🛑 **UI**: Unify appearance of project settings alerts
(`#3001 <https://github.com/SwissDataScienceCenter/renku-ui/pull/3001>`_).

**🐞 Bug Fixes**

- **Core Service**: Fix issue with having to run project migration twice to migrate the Dockerfile/project template.
(`#3690 <https://github.com/SwissDataScienceCenter/renku-python/issues/3690>`__)
- **UI**: Restore logged in/out notifications
(`#3014 <https://github.com/SwissDataScienceCenter/renku-ui/pull/3014>`_).
- **UI**: Hide button to add storage on deployments not supporting external storages
(`#3001 <https://github.com/SwissDataScienceCenter/renku-ui/pull/3001>`_).

Internal Changes
~~~~~~~~~~~~~~~~

**Improvements**

- **UI**: Add initial alpha implementation of Renku 1.0 projects
(`#2875 <https://github.com/SwissDataScienceCenter/renku-ui/pull/2875>`_).

Individual Components
~~~~~~~~~~~~~~~~~~~~~

- `renku-python 2.9.2 <https://github.com/SwissDataScienceCenter/renku-python/releases/tag/2.9.2>`_
- `renku-ui 3.20.0 <https://github.com/SwissDataScienceCenter/renku-ui/releases/tag/3.20.0>`_

0.47.1
------

This release only includes changes to the documentation and updates to the acceptance tests.
It doesn't bring any new features or bug fixes.


0.47.0
------

This release expands Renku's cloud storage functionality in two key ways: First, mounted storages
are now read **and write**, so you can use mounted storage as an active workspace for your data in a RenkuLab
session. Second, we have expanded the cloud storage services you can integrate with RenkuLab. You can now
mount not only S3 buckets, but also WebDAV-based storages and Azure Blobs.
mount not only S3 buckets, but also WebDAV-based storages and Azure Blobs.

If you use SSH sessions via the CLI, you can use cloud storage there too! Configure cloud storage for your
project on RenkuLab.io, and those storages will be mounted in your remote session. Support for cloud
storage in local Renku sessions is still on our roadmap.
storage in local Renku sessions is still on our roadmap.

This release also adds the ability to change which resource class your session uses when you unpause the
session, in case the original resource class is now full.
Expand Down Expand Up @@ -147,15 +191,15 @@ Internal Changes
Individual components
~~~~~~~~~~~~~~~~~~~~~

- `renku-python 2.8.2 <https://github.com/SwissDataScienceCenter/renku-python/releases/tag/2.8.2>`_
- `renku-python 2.8.2 <https://github.com/SwissDataScienceCenter/renku-python/releases/tag/2.8.2>`_
- `renku-ui 3.17.2 <https://github.com/SwissDataScienceCenter/renku-ui/releases/tag/3.17.2>`_
- `renku-graph 2.48.2 <https://github.com/SwissDataScienceCenter/renku-graph/releases/tag/2.48.2>`_
- `renku-graph 2.48.2 <https://github.com/SwissDataScienceCenter/renku-graph/releases/tag/2.48.2>`_


0.45.1
------
This is a bugfix release that updates the helm chart to work with new
prometheus metrics in the renku core service, which was preventing it from
This is a bugfix release that updates the helm chart to work with new
prometheus metrics in the renku core service, which was preventing it from
starting properly if metrics were enabled. In addition this release
also addresses problems with expiring Gitlab access tokens when sessions
are paused and resumed which caused resumed session to not be able to push to Gitlab
Expand All @@ -166,8 +210,8 @@ Internal Changes

**🐞 Bug Fixes**

- **Helm Chart**: update core-service deployment to allow service and rq
metrics to run side-by-side (`#3303
- **Helm Chart**: update core-service deployment to allow service and rq
metrics to run side-by-side (`#3303
<https://github.com/SwissDataScienceCenter/renku/pull/3303>`_).
- **Notebooks**: use a larger /dev/shm folder in sessions
(`#1723 <https://github.com/SwissDataScienceCenter/renku-notebooks/issues/1723>`_)
Expand Down
141 changes: 77 additions & 64 deletions cypress-tests/cypress/e2e/useSession.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -233,74 +233,87 @@ describe("Basic public project functionality", () => {
return;
}

cy.stopAllSessionsForProject(projectIdentifier);
cy.intercept("/ui-server/api/data/storage*").as("getProjectCloudStorage");
cy.getDataCy("cloud-storage-section")
.find("button")
.contains("Add Cloud Storage")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-header")
.contains("Add Cloud Storage")
.should("be.visible");

cy.getProjectSection("Settings").click();
cy.getDataCy("settings-navbar")
.contains("a.nav-link", "Cloud Storage")
cy.getDataCy("cloud-storage-edit-schema")
.contains("s3")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-providers")
.contains("AWS")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-next-button").should("be.visible").click();

cy.getDataCy("cloud-storage-edit-options").should("be.visible");
cy.get("#sourcePath").should("have.value", "").type("giab");
cy.get("#endpoint")
.should("have.value", "")
.type("http://s3.amazonaws.com");
cy.getDataCy("cloud-storage-edit-next-button").should("be.visible").click();

cy.getDataCy("cloud-storage-edit-mount").should("be.visible");
cy.get("#name").should("have.value", "").type("data_s3");
cy.get("#mountPoint")
.should("have.value", "external_storage/data_s3")
.type("{selectAll}data_s3");
cy.get("#readOnly").should("not.be.checked").check();

cy.getDataCy("cloud-storage-edit-update-button")
.should("be.visible")
.contains("Add")
.click();

// Add a S3 storage configuration if it doesn't exist
cy.wait("@getProjectCloudStorage").then(({ response }) => {
const storages = response.body as { storage: { name: string } }[];
if (storages.find(({ storage }) => storage.name === "data_s3")) {
return;
}

cy.getDataCy("cloud-storage-section")
.find("button")
.contains("Add Cloud Storage")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-header")
.contains("Add Cloud Storage")
.should("be.visible");

cy.getDataCy("cloud-storage-edit-schema")
.contains("s3")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-providers")
.contains("AWS")
.should("be.visible")
.click();
cy.getDataCy("cloud-storage-edit-next-button")
.should("be.visible")
.click();

cy.getDataCy("cloud-storage-edit-options").should("be.visible");
cy.get("#sourcePath").should("have.value", "").type("giab");
cy.get("#endpoint")
.should("have.value", "")
.type("http://s3.amazonaws.com");
cy.getDataCy("cloud-storage-edit-next-button")
.should("be.visible")
.click();

cy.getDataCy("cloud-storage-edit-mount").should("be.visible");
cy.get("#name").should("have.value", "").type("data_s3");
cy.get("#mountPoint")
.should("have.value", "external_storage/data_s3")
.type("{selectAll}data_s3");
cy.get("#readOnly").should("not.be.checked").check();

cy.getDataCy("cloud-storage-edit-update-button")
.should("be.visible")
.contains("Add")
.click();

cy.getDataCy("cloud-storage-edit-body").contains(
"storage data_s3 has been succesfully added"
);
cy.getDataCy("cloud-storage-edit-close-button")
.should("be.visible")
.click();
});

cy.getDataCy("more-menu").should("be.visible").click();
cy.getProjectPageLink(projectIdentifier, "sessions/new")
cy.getDataCy("cloud-storage-edit-body").contains(
"storage data_s3 has been succesfully added"
);
cy.getDataCy("cloud-storage-edit-close-button")
.should("be.visible")
.click();

// Wait for the image to be ready and start a session
cy.get(".renku-container")
.contains("A session gives you an environment")
.should("exist");
cy.get(".renku-container .badge.bg-success", { timeout: TIMEOUTS.vlong })
.contains("available")
.should("exist");
cy.getDataCy("cloud-storage-item").contains("data_s3").should("exist");
cy.get("#cloud-storage-data_s3-active").should("be.checked");
cy.get(".renku-container button.btn-secondary", { timeout: TIMEOUTS.long })
.contains("Start Session")
.should("exist")
.click();
cy.get(".progress-box .progress-title").should("exist"); //.contains("Step 2 of 2");
cy.get("button")
.contains(projectTestConfig.projectName)
.should("be.visible");
cy.get(".progress-box .progress-title")
.contains("Starting Session")
.should("exist");
cy.get(".progress-box .progress-title", { timeout: TIMEOUTS.vlong }).should(
"not.exist"
);

// Verify that the S3 data is mounted
cy.getIframe("iframe#session-iframe").within(() => {
cy.get(".jp-DirListing-content", { timeout: TIMEOUTS.long }).should(
"be.visible"
);
cy.get(".jp-DirListing-item")
.contains("data_s3")
.should("be.visible")
.dblclick();

cy.get(".jp-DirListing-item")
.contains("README.s3_structure")
.should("be.visible")
.first()
.click();
Expand Down
8 changes: 4 additions & 4 deletions helm-chart/renku/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ global:
fullnameOverride: ""
image:
repository: renku/renku-core
tag: "v2.9.1"
tag: "v2.9.2"
pullPolicy: IfNotPresent
uiserver:
## The client secret for the renku-ui client application registered in keycloak.
Expand Down Expand Up @@ -613,7 +613,7 @@ ui:
replicaCount: 1
image:
repository: renku/renku-ui
tag: "3.19.0"
tag: "3.20.0"
pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets.
## Secrets must be manually created in the namespace.
Expand Down Expand Up @@ -772,7 +772,7 @@ ui:
keepCookies: []
image:
repository: renku/renku-ui-server
tag: "3.19.0"
tag: "3.20.0"
pullPolicy: IfNotPresent
imagePullSecrets: []
nameOverride: ""
Expand Down Expand Up @@ -1512,4 +1512,4 @@ affinity: {}
versions:
latest:
image:
tag: v2.9.1
tag: v2.9.2
Loading