Skip to content

Commit 02f0079

Browse files
authored
Bug fix: adding an S3 file storage was not working (#3076)
1 parent bdb2b95 commit 02f0079

File tree

3 files changed

+47
-9
lines changed

3 files changed

+47
-9
lines changed

lib/livebook_web/live/hub/file_system_form_component.ex

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ defmodule LivebookWeb.Hub.FileSystemFormComponent do
1616
mode = mode(file_system)
1717
title = title(file_system)
1818
button = button_attrs(file_system)
19-
file_system = file_system || %FileSystem.S3{hub_id: assigns.hub}
19+
file_system = file_system || %FileSystem.S3{hub_id: assigns.hub.id}
20+
2021
changeset = FileSystems.change_file_system(file_system)
2122

2223
{:ok,

test/livebook_teams/web/hub/edit_live_test.exs

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
193193
bypass = Bypass.open()
194194
file_system = build_bypass_file_system(bypass, team.id)
195195
id = file_system.id
196-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
196+
197+
form_values =
198+
Map.from_struct(file_system)
199+
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
200+
201+
attrs = %{file_system: form_values}
197202

198203
expect_s3_listing(bypass)
199204
refute render(view) =~ file_system.bucket_url
@@ -229,7 +234,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
229234
test "creates a Git file system", %{conn: conn, team: team} do
230235
id = Livebook.FileSystem.Utils.id("git", team.id, "[email protected]:livebook-dev/test.git")
231236
file_system = build(:fs_git, id: id, hub_id: team.id)
232-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
237+
238+
form_values =
239+
Map.from_struct(file_system)
240+
|> Map.take([:repo_url, :branch, :key])
241+
242+
attrs = %{file_system: form_values}
233243

234244
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
235245
refute render(view) =~ file_system.id
@@ -277,7 +287,11 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
277287

278288
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
279289

280-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
290+
form_values =
291+
Map.from_struct(file_system)
292+
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
293+
294+
attrs = %{file_system: form_values}
281295
expect_s3_listing(bypass)
282296

283297
view
@@ -322,7 +336,12 @@ defmodule LivebookWeb.Integration.Hub.EditLiveTest do
322336
refute "/another_file.txt" in paths
323337

324338
{:ok, view, _html} = live(conn, ~p"/hub/#{team.id}")
325-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
339+
340+
form_values =
341+
Map.from_struct(file_system)
342+
|> Map.take([:repo_url, :branch, :key])
343+
344+
attrs = %{file_system: form_values}
326345
attrs = put_in(attrs.file_system.branch, "test")
327346

328347
view

test/livebook_web/live/hub/edit_live_test.exs

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,11 @@ defmodule LivebookWeb.Hub.EditLiveTest do
165165
bypass = Bypass.open()
166166
file_system = build_bypass_file_system(bypass)
167167

168-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
168+
form_values =
169+
Map.from_struct(file_system)
170+
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
171+
172+
attrs = %{file_system: form_values}
169173

170174
expect_s3_listing(bypass)
171175

@@ -201,7 +205,12 @@ defmodule LivebookWeb.Hub.EditLiveTest do
201205
test "creates a Git file system", %{conn: conn, hub: hub} do
202206
file_system = build(:fs_git)
203207
id = file_system.id
204-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
208+
209+
form_values =
210+
Map.from_struct(file_system)
211+
|> Map.take([:repo_url, :branch, :key])
212+
213+
attrs = %{file_system: form_values}
205214

206215
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
207216
refute render(view) =~ file_system.id
@@ -246,7 +255,11 @@ defmodule LivebookWeb.Hub.EditLiveTest do
246255

247256
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
248257

249-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
258+
form_values =
259+
Map.from_struct(file_system)
260+
|> Map.take([:bucket_url, :region, :access_key_id, :secret_access_key])
261+
262+
attrs = %{file_system: form_values}
250263

251264
expect_s3_listing(bypass)
252265

@@ -298,7 +311,12 @@ defmodule LivebookWeb.Hub.EditLiveTest do
298311
refute "/another_file.txt" in paths
299312

300313
{:ok, view, _html} = live(conn, ~p"/hub/#{hub.id}")
301-
attrs = %{file_system: Livebook.FileSystem.dump(file_system)}
314+
315+
form_values =
316+
Map.from_struct(file_system)
317+
|> Map.take([:repo_url, :branch, :key])
318+
319+
attrs = %{file_system: form_values}
302320
attrs = put_in(attrs.file_system.branch, "test")
303321

304322
view

0 commit comments

Comments
 (0)