Remove Phoenix function GetDbAccountAllowedStatus (#2472)

* Scale the number of test accounts used for SQL tests to one per shard.

* Set PLAYWRIGHT_SHARD_INDEX environment variable in CI workflow.

* Add log statement for the shared index and selected account.

* Remove console log.

* Fix order of accounts so that shard index maps to same account index.

* Try to fix the SQL account scope in ci.yml

* Get tokens for all accounts and use the shard index to pick which one.

* Set tokens without loop.

* Handcode the token use in tests.

* Fix database creation.

* Add debug for rbac token issues.

* Common function for retrieving NoSQL token.

* Disable eslint rule for noconsole temporarily.

* Move getNoSqlRbacToken to separate file.

* Fix ref to new function.

* mock Resource Graph API — fires on auto-subscription selection to populate account dropdown

* Code tidy-up.

* Fix build errors.

* Remove deprecated getDbAccountAllowedStatus from PhoenixClient

The getDbAccountAllowedStatus endpoint is no longer available. All callers
now assume a Forbidden result, meaning isPhoenixNotebooks and
isPhoenixFeatures are always false.

- Remove getDbAccountAllowedStatus() from PhoenixClient
- Simplify getPhoenixStatus() in useNotebook to set both flags to false
- Remove IDbAccountAllow interface from DataModels
- Remove PhoenixDBAccountAllowed and CheckPhoenixStatus telemetry actions
- Clean up unused imports

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert removal of enum values, to be safe.

---------

Co-authored-by: Bikram Choudhury <bchoudhury@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
jawelton74
2026-05-04 07:24:04 -07:00
committed by GitHub
parent 4e8410cd66
commit a36467f4ea
3 changed files with 6 additions and 85 deletions
+1 -47
View File
@@ -12,13 +12,12 @@ import {
HttpStatusCodes,
Notebook,
} from "../Common/Constants";
import { getErrorMessage, getErrorStack } from "../Common/ErrorHandlingUtils";
import { getErrorMessage } from "../Common/ErrorHandlingUtils";
import * as Logger from "../Common/Logger";
import {
ContainerConnectionInfo,
ContainerInfo,
IContainerData,
IDbAccountAllow,
IMaxAllocationTimeExceeded,
IPhoenixConnectionInfoResult,
IPhoenixError,
@@ -196,51 +195,6 @@ export class PhoenixClient {
}
}
public async getDbAccountAllowedStatus(): Promise<IDbAccountAllow> {
const startKey = TelemetryProcessor.traceStart(Action.PhoenixDBAccountAllowed, {
dataExplorerArea: Areas.Notebook,
});
let responseJson;
try {
const response = await window.fetch(`${this.getPhoenixControlPlanePathPrefix()}`, {
method: "GET",
headers: PhoenixClient.getHeaders(),
});
responseJson = await response?.json();
if (response.status !== HttpStatusCodes.OK) {
throw new Error(`Received status code: ${response?.status}`);
}
TelemetryProcessor.traceSuccess(
Action.PhoenixDBAccountAllowed,
{
dataExplorerArea: Areas.Notebook,
},
startKey,
);
return {
status: response.status,
message: responseJson?.message,
type: responseJson?.type,
};
} catch (error) {
TelemetryProcessor.traceFailure(
Action.PhoenixDBAccountAllowed,
{
dataExplorerArea: Areas.Notebook,
error: getErrorMessage(error),
errorStack: getErrorStack(error),
},
startKey,
);
Logger.logError(getErrorMessage(error), "PhoenixClient/IsDbAcountWhitelisted");
return {
status: HttpStatusCodes.Forbidden,
message: responseJson?.message,
type: responseJson?.type,
};
}
}
private getPhoenixControlPlanePathPrefix(): string {
if (!this.armResourceId) {
throw new Error("The Phoenix client was not initialized properly: missing ARM resource id");