Bug fix: adding an S3 file storage was not working (#3076)

This commit is contained in:
Hugo Baraúna 2025-10-02 13:26:43 -03:00 committed by GitHub
parent bdb2b95a1d
commit 02f00794c2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 47 additions and 9 deletions

View file

@ -16,7 +16,8 @@ defmodule LivebookWeb.Hub.FileSystemFormComponent do
mode = mode(file_system)
title = title(file_system)
button = button_attrs(file_system)
file_system = file_system || %FileSystem.S3{hub_id: assigns.hub}
file_system = file_system || %FileSystem.S3{hub_id: assigns.hub.id}
changeset = FileSystems.change_file_system(file_system)
{:ok,

View file

@ -193,7 +193,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
bypass = Bypass.open()
file_system = build_bypass_file_system(bypass, team.id)
id = file_system.id
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
attrs = %{file_system: form_values}
expect_s3_listing(bypass)
refute render(view) =~ file_system.bucket_url
@ -229,7 +234,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
test "creates a Git file system", %{conn: conn, team: team} do
id = Livebook.FileSystem.Utils.id("git", team.id, "git@github.com:livebook-dev/test.git")
file_system = build(:fs_git, id: id, hub_id: team.id)
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:repo_url, :branch, :key])
attrs = %{file_system: form_values}
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
refute render(view) =~ file_system.id
@ -277,7 +287,11 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
attrs = %{file_system: form_values}
expect_s3_listing(bypass)
view
@ -322,7 +336,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
refute "/another_file.txt" in paths
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:repo_url, :branch, :key])
attrs = %{file_system: form_values}
attrs = put_in(attrs.file_system.branch, "test")
view

View file

@ -165,7 +165,11 @@ defmodule LivebookWeb.Hub.EditLiveTest do
bypass = Bypass.open()
file_system = build_bypass_file_system(bypass)
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
attrs = %{file_system: form_values}
expect_s3_listing(bypass)
@ -201,7 +205,12 @@ defmodule LivebookWeb.Hub.EditLiveTest do
test "creates a Git file system", %{conn: conn, hub: hub} do
file_system = build(:fs_git)
id = file_system.id
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:repo_url, :branch, :key])
attrs = %{file_system: form_values}
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
refute render(view) =~ file_system.id
@ -246,7 +255,11 @@ defmodule LivebookWeb.Hub.EditLiveTest do
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
attrs = %{file_system: form_values}
expect_s3_listing(bypass)
@ -298,7 +311,12 @@ defmodule LivebookWeb.Hub.EditLiveTest do
refute "/another_file.txt" in paths
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
form_values =
Map.from_struct(file_system)
|> Map.take([:repo_url, :branch, :key])
attrs = %{file_system: form_values}
attrs = put_in(attrs.file_system.branch, "test")
view