diff --git a/console/index.html b/console/index.html
index ca357aa..6329d00 100644
--- a/console/index.html
+++ b/console/index.html
@@ -124,7 +124,9 @@
diff --git a/console/src/deploy.ts b/console/src/deploy.ts
index e190f3b..5f3dc0d 100644
--- a/console/src/deploy.ts
+++ b/console/src/deploy.ts
@@ -46,6 +46,9 @@ interface K8sContextsResponse {
interface K8sNamespacesResponse {
namespaces: string[];
}
+interface K8sServiceAccountsResponse {
+ service_accounts: string[];
+}
export type DeployMode = { kind: "new-fleet" } | { kind: "add-instance"; fleetName: string };
@@ -97,6 +100,10 @@ export function initDeployPanel(deps: DeployPanelDeps): DeployPanelHandle | null
// choice and a plain select can't express "not in this list yet".
const k8sNamespaceInput = document.getElementById("deploy-k8s-namespace") as HTMLInputElement | null;
const k8sNamespaceOptions = document.getElementById("deploy-k8s-namespace-options") as HTMLDataListElement | null;
+ // Service account, unlike namespace, must already exist for k8s to accept
+ // it as a pod's serviceAccountName — so (unlike namespace) a plain