public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request) { string azure_access_token = request.DataStore.GetJson("AzureToken", "access_token"); string subscription = request.DataStore.GetJson("SelectedSubscription", "SubscriptionId"); string resourceGroup = request.DataStore.GetValue("SelectedResourceGroup"); string apiVersion = "2015-08-01"; string ehnamespace = request.DataStore.GetValue("ActivityLogNamespace"); string uri = $"https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resourceGroup}/providers/Microsoft.EventHub/namespaces/{ehnamespace}/eventhubs?api-version={apiVersion}"; string body = $"\"parameters\": {{\"namespaceName\":\"{ehnamespace}\",\"resourceGroupName\":\"{resourceGroup}\",\"api-version\":\"2015-08-01\", \"subscriptionId\": \"{subscription}\"}}"; AzureHttpClient ahc = new AzureHttpClient(azure_access_token, subscription); bool areHubsPresent = false; for (int i = 0; i < RETRIES && !areHubsPresent; i++) { if (!areHubsPresent) { Thread.Sleep(SLEEP); } List <EventHub> hubs = await ahc.RequestValue <List <EventHub> >(HttpMethod.Get, uri, body); if (!hubs.IsNullOrEmpty()) { foreach (EventHub hub in hubs) { if (hub.Name.EqualsIgnoreCase(INSIGHTS)) { areHubsPresent = true; break; } } } } return(areHubsPresent ? new ActionResponse(ActionStatus.Success) : new ActionResponse(ActionStatus.Failure)); }
public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request) { AzureHttpClient ahc = new AzureHttpClient(request.DataStore.GetJson("AzureToken", "access_token")); List <PowerAppEnvironment> environments = await ahc.RequestValue <List <PowerAppEnvironment> >(HttpMethod.Get, PowerAppUtility.URL_POWERAPPS_ENVIRONMENTS); bool foundEnvironment = false; if (environments.IsNullOrEmpty()) { PowerAppUtility.SkipPowerApp(request.DataStore); foundEnvironment = true; } else { for (int i = 0; i < environments.Count && !foundEnvironment; i++) { PowerAppEnvironment environment = environments[i]; if (environment.Properties != null && environment.Properties.IsDefault && environment.Properties.Permissions != null && environment.Properties.Permissions.CreatePowerApp != null) { request.DataStore.AddToDataStore("PowerAppEnvironment", environment.Name, DataStoreType.Private); foundEnvironment = true; } } } return(foundEnvironment ? new ActionResponse(ActionStatus.Success) : new ActionResponse(ActionStatus.Failure, JsonUtility.GetEmptyJObject(), "PowerAppNoEnvironment")); }
public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request) { BpstAzure ba = new BpstAzure(request.DataStore); AzureHttpClient ahc = new AzureHttpClient(ba.TokenAzure); string url = $"https://management.azure.com/subscriptions/{ba.IdSubscription}/providers/Microsoft.ApiManagement/service?api-version=2016-10-10"; List <ApiManagementService> apiManagementServices = await ahc.RequestValue <List <ApiManagementService> >(HttpMethod.Get, url); return(apiManagementServices.IsNullOrEmpty() ? new ActionResponse(ActionStatus.Failure, new ActionResponseExceptionDetail("ApiManagementErrorNoServicesFound")) : new ActionResponse(ActionStatus.Success, JsonUtility.Serialize(apiManagementServices))); }
public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request) { BpstAzure ba = new BpstAzure(request.DataStore); int attemptsInsights = request.DataStore.GetCount("attemptsInsights"); string nameNamespace = request.DataStore.GetValue("nameNamespace"); if (attemptsInsights < RETRIES) { attemptsInsights++; request.DataStore.AddToDataStore("attemptsInsights", attemptsInsights.ToString(), DataStoreType.Public); string url = $"https://management.azure.com/subscriptions/{ba.IdSubscription}/resourceGroups/{ba.NameResourceGroup}/providers/Microsoft.EventHub/namespaces/{nameNamespace}/eventhubs?api-version=2015-08-01"; string body = $"\"parameters\": {{\"namespaceName\":\"{nameNamespace}\",\"resourceGroupName\":\"{ba.NameResourceGroup}\",\"api-version\":\"2015-08-01\", \"subscriptionId\": \"{ba.IdSubscription}\"}}"; AzureHttpClient ahc = new AzureHttpClient(ba.TokenAzure, ba.IdSubscription); List <EventHub> hubs = await ahc.RequestValue <List <EventHub> >(HttpMethod.Get, url, body); if (!hubs.IsNullOrEmpty()) { foreach (EventHub hub in hubs) { if (hub.Name.EqualsIgnoreCase(INSIGHTS)) { return(new ActionResponse(ActionStatus.Success)); } } } Thread.Sleep(SLEEP); return(new ActionResponse(ActionStatus.InProgress)); } else { return(new ActionResponse(ActionStatus.Failure, new ActionResponseExceptionDetail("ActivityLogsVerifyInsightsTimeout"))); } }