From e30127dbff30b11b3981642d94edee42b692e231 Mon Sep 17 00:00:00 2001 From: Antoine Date: Thu, 12 Sep 2024 20:12:43 +0200 Subject: [PATCH] feat(portal): sync all google workspace organization units (#6649) Currently only root OUs are synced into Firezone. An additional query parameter is needed to list all OUs. Ref: https://developers.google.com/admin-sdk/directory/reference/rest/v1/orgunits/list --- .../lib/domain/auth/adapters/google_workspace/api_client.ex | 1 + .../domain/auth/adapters/google_workspace/api_client_test.exs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/elixir/apps/domain/lib/domain/auth/adapters/google_workspace/api_client.ex b/elixir/apps/domain/lib/domain/auth/adapters/google_workspace/api_client.ex index 7a8ffc7b4..6166475de 100644 --- a/elixir/apps/domain/lib/domain/auth/adapters/google_workspace/api_client.ex +++ b/elixir/apps/domain/lib/domain/auth/adapters/google_workspace/api_client.ex @@ -123,6 +123,7 @@ defmodule Domain.Auth.Adapters.GoogleWorkspace.APIClient do URI.parse("#{endpoint}/admin/directory/v1/customer/my_customer/orgunits") |> URI.append_query( URI.encode_query(%{ + "type" => "ALL", "maxResults" => @max_results }) ) diff --git a/elixir/apps/domain/test/domain/auth/adapters/google_workspace/api_client_test.exs b/elixir/apps/domain/test/domain/auth/adapters/google_workspace/api_client_test.exs index b0b9f06bb..f10320dd5 100644 --- a/elixir/apps/domain/test/domain/auth/adapters/google_workspace/api_client_test.exs +++ b/elixir/apps/domain/test/domain/auth/adapters/google_workspace/api_client_test.exs @@ -65,7 +65,7 @@ defmodule Domain.Auth.Adapters.GoogleWorkspace.APIClientTest do end assert_receive {:bypass_request, conn} - assert conn.params == %{"maxResults" => "350"} + assert conn.params == %{"maxResults" => "350", "type" => "ALL"} assert Plug.Conn.get_req_header(conn, "authorization") == ["Bearer #{api_token}"] end