mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-02 09:35:40 -05:00
Added in auto-install prompt for Azure CLI and arcdata extension, "Don't Ask Again" logic, removed waiting on azcli extension activate (#16646)
* Added back Don't Ask Again logic * If no Azure CLI found, throw error instead of returning undefined. * Deleted 'restart ADS' text for arcdata extension prompts * Added error catch for parse version and parsed out the * in az --version * Added back findAz() * Added arcdata version to AzTool. Parse --version using regex. * Return undefined if no az found. * Added userRequested param for findAz * No longer await on extension activate. Re-added some functions for az install. * Install works for windows * Changed auto install for az on Linux and MacOS. * Added comment for findSpecificAzAndArc and uncommented some localizedConstants * Added comment for getSemVersionArc and took out the path for some tests. * Made findSpecificAzAndArc return an object instead of a list * Removed azToolService test * Removed azToolService tests and renamed suite to azcli Extension Tests * Got rid of new Regexp for regex in parseVersions * Added back azToolService.ts * Added logic to enable prompt user to install arcdata extension and auto-install capability. No update capability yet. Co-authored-by: Candice Ye <canye@microsoft.com>
This commit is contained in:
@@ -26,28 +26,31 @@ export function throwIfNoAz(localAz: IAzTool | undefined): asserts localAz {
|
||||
}
|
||||
}
|
||||
|
||||
export function getExtensionApi(azToolService: AzToolService): azExt.IExtension {
|
||||
export function getExtensionApi(azToolService: AzToolService, localAzDiscovered: Promise<IAzTool | undefined>): azExt.IExtension {
|
||||
return {
|
||||
az: getAzApi(azToolService)
|
||||
az: getAzApi(localAzDiscovered, azToolService)
|
||||
};
|
||||
}
|
||||
|
||||
export function getAzApi(azToolService: AzToolService): azExt.IAzApi {
|
||||
export function getAzApi(localAzDiscovered: Promise<IAzTool | undefined>, azToolService: AzToolService): azExt.IAzApi {
|
||||
return {
|
||||
arcdata: {
|
||||
dc: {
|
||||
endpoint: {
|
||||
list: async (namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.arcdata.dc.endpoint.list(namespace, additionalEnvVars);
|
||||
}
|
||||
},
|
||||
config: {
|
||||
list: async (additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.arcdata.dc.config.list(additionalEnvVars);
|
||||
},
|
||||
show: async (namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.arcdata.dc.config.show(namespace, additionalEnvVars);
|
||||
}
|
||||
@@ -57,14 +60,17 @@ export function getAzApi(azToolService: AzToolService): azExt.IAzApi {
|
||||
postgres: {
|
||||
arcserver: {
|
||||
delete: async (name: string, namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.postgres.arcserver.delete(name, namespace, additionalEnvVars);
|
||||
},
|
||||
list: async (namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.postgres.arcserver.list(namespace, additionalEnvVars);
|
||||
},
|
||||
show: async (name: string, namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.postgres.arcserver.show(name, namespace, additionalEnvVars);
|
||||
},
|
||||
@@ -87,6 +93,7 @@ export function getAzApi(azToolService: AzToolService): azExt.IAzApi {
|
||||
},
|
||||
namespace: string,
|
||||
additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.postgres.arcserver.edit(name, args, namespace, additionalEnvVars);
|
||||
}
|
||||
@@ -95,14 +102,17 @@ export function getAzApi(azToolService: AzToolService): azExt.IAzApi {
|
||||
sql: {
|
||||
miarc: {
|
||||
delete: async (name: string, namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.sql.miarc.delete(name, namespace, additionalEnvVars);
|
||||
},
|
||||
list: async (namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.sql.miarc.list(namespace, additionalEnvVars);
|
||||
},
|
||||
show: async (name: string, namespace: string, additionalEnvVars?: azExt.AdditionalEnvVars) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.sql.miarc.show(name, namespace, additionalEnvVars);
|
||||
},
|
||||
@@ -118,20 +128,29 @@ export function getAzApi(azToolService: AzToolService): azExt.IAzApi {
|
||||
namespace: string,
|
||||
additionalEnvVars?: azExt.AdditionalEnvVars
|
||||
) => {
|
||||
await localAzDiscovered;
|
||||
validateAz(azToolService.localAz);
|
||||
return azToolService.localAz!.sql.miarc.edit(name, args, namespace, additionalEnvVars);
|
||||
}
|
||||
}
|
||||
},
|
||||
getPath: async () => {
|
||||
await localAzDiscovered;
|
||||
throwIfNoAz(azToolService.localAz);
|
||||
return azToolService.localAz.getPath();
|
||||
},
|
||||
getSemVersion: async () => {
|
||||
getSemVersionAz: async () => {
|
||||
await localAzDiscovered;
|
||||
throwIfNoAz(azToolService.localAz);
|
||||
return azToolService.localAz.getSemVersion();
|
||||
return azToolService.localAz.getSemVersionAz();
|
||||
},
|
||||
getSemVersionArc: async () => {
|
||||
await localAzDiscovered;
|
||||
throwIfNoAz(azToolService.localAz);
|
||||
return azToolService.localAz.getSemVersionArc();
|
||||
},
|
||||
version: async () => {
|
||||
await localAzDiscovered;
|
||||
throwIfNoAz(azToolService.localAz);
|
||||
return azToolService.localAz.version();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user