Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 13 additions & 9 deletions Assets/Rivet/Editor/Types.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,25 @@ public struct BootstrapData
[JsonProperty("token")] public string Token;
[JsonProperty("api_endpoint")] public string ApiEndpoint;
[JsonProperty("game_id")] public string GameId;
[JsonProperty("backend_project")] public BackendProject BackendProject;
[JsonProperty("backend_environments")] public List<BackendEnvironment> BackendEnvironments;
[JsonProperty("envs")] public List<RivetEnvironment> Environments;
[JsonProperty("backends")] public Dictionary<string, EnvironmentBackend> Backends;
}

public struct BackendProject
public struct EnvironmentBackend
{
[JsonProperty("project_id")] public string ProjectId;
[JsonProperty("created_at")] public string CreatedAt;
[JsonProperty("endpoint")] public string Endpoint;
[JsonProperty("id")] public string Id;
[JsonProperty("slug")] public string Slug;
[JsonProperty("tier")] public string Tier;
}

public struct BackendEnvironment
public struct RivetEnvironment
{
[JsonProperty("display_name")] public string DisplayName;
[JsonProperty("endpoint")] public string Endpoint;
[JsonProperty("environment_id")] public string EnvironmentId;
[JsonProperty("name_id")] public string NameId;
[JsonProperty("id")] public string Id;
[JsonProperty("created_at")] public string CreatedAt;
[JsonProperty("slug")] public string Slug;
[JsonProperty("name")] public string Name;
}

}
39 changes: 28 additions & 11 deletions Assets/Rivet/Editor/UI/Screens/MainController.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using System;
using System.Linq;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;
Expand Down Expand Up @@ -59,11 +60,11 @@ public class MainController
// MARK: Environment
public EnvironmentType EnvironmentType = EnvironmentType.Local;
public string? RemoteEnvironmentId;
public BackendEnvironment? RemoteEnvironment
public RivetEnvironment? RemoteEnvironment
{
get
{
return BootstrapData?.BackendEnvironments[RemoteEnvironmentIndex];
return BootstrapData?.Environments[RemoteEnvironmentIndex];
}
}
public int RemoteEnvironmentIndex
Expand All @@ -72,7 +73,7 @@ public int RemoteEnvironmentIndex
{
if (BootstrapData is { } data)
{
var idx = data.BackendEnvironments.FindIndex(x => x.EnvironmentId == RemoteEnvironmentId);
var idx = data.Environments.FindIndex(x => x.Id == RemoteEnvironmentId);
return idx >= 0 ? idx : -1;
}
else
Expand All @@ -82,9 +83,9 @@ public int RemoteEnvironmentIndex
}
set
{
if (value >= 0 && value < BootstrapData?.BackendEnvironments.Count)
if (value >= 0 && value < BootstrapData?.Environments.Count)
{
RemoteEnvironmentId = BootstrapData?.BackendEnvironments[value].EnvironmentId;
RemoteEnvironmentId = BootstrapData?.Environments[value].Id;
}
}
}
Expand Down Expand Up @@ -215,14 +216,30 @@ void SetTab(MainTab tab)
private async Task GetBootstrapData()
{
var result = await new RivetTask("get_bootstrap_data", new JObject()).RunAsync();
if (result is ResultErr<JObject>) return;
if (result is ResultErr<JObject> err)
{
return;
}

var data = result.Data.ToObject<BootstrapData>(); ;
BootstrapData = data;
ExtensionData.ApiEndpoint = data.ApiEndpoint;
if (result.Data == null)
{
return;
}

_developController.OnBootstrap(data);
_deployController.OnBootstrap(data);
try
{
var data = result.Data.ToObject<BootstrapData>();
BootstrapData = data;
ExtensionData.ApiEndpoint = data.ApiEndpoint;

_developController.OnBootstrap(data);
_deployController.OnBootstrap(data);
}
catch (Exception ex)
{
RivetLogger.Error($"Exception in GetBootstrapData: {ex.Message}");
RivetLogger.Error($"Stack trace: {ex.StackTrace}");
}
}

/// <summary>
Expand Down
10 changes: 8 additions & 2 deletions Assets/Rivet/Editor/UI/Tabs/DeployController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,19 @@ public void OnBootstrap(BootstrapData data)
{
// Add environments
List<string> environments = new();
foreach (var env in data.BackendEnvironments)
foreach (var env in data.Environments)
{
environments.Add(env.DisplayName);
environments.Add(env.Name);
}
environments.Add("+ New Environment");
_environmentDropdown.choices = environments;

if (environments.Count > 0)
{
_environmentDropdown.index = 0;
_mainController.RemoteEnvironmentIndex = 0;
}

OnSelectedEnvironmentChange();
}

Expand Down
4 changes: 2 additions & 2 deletions Assets/Rivet/Editor/UI/Tabs/DevelopController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -100,9 +100,9 @@ public void OnBootstrap(BootstrapData data)
{
// Add environments
List<string> environments = new();
foreach (var env in data.BackendEnvironments)
foreach (var env in data.Environments)
{
environments.Add(env.DisplayName);
environments.Add(env.Name);
}
environments.Add("+ New Environment");
_remoteEnvironmentDropdown.choices = environments;
Expand Down