async public Task <bool> GenerateVMConfig(QuickCreate model) { VMManager vmm = GetVMM(); if (await vmm.IsServiceNameAvailable(model.Name).ConfigureAwait(continueOnCapturedContext: false) == false) { return(false); } bool isVmImage = false; string ImageName = ""; string ImagePath = ""; XDocument vm = vmm.NewAzureVMConfig(model.Name, model.Machine_Size, model.OS, GetOSDiskMediaLocation(model.OSLabel), true, isVmImage, ImageName, ImagePath); if (!isVmImage) { vm = vmm.NewWindowsProvisioningConfig(vm, model.Name, pwd); vm = vmm.NewNetworkConfigurationSet(vm); vm = vmm.AddNewInputEndpoint(vm, "web", "TCP", 80, 80); vm = vmm.AddNewInputEndpoint(vm, "rdp", "TCP", 3389, 3389); } var builder = new StringBuilder(); var settings = new XmlWriterSettings() { Indent = true }; using (var writer = XmlWriter.Create(builder, settings)) { vm.WriteTo(writer); } String requestID_cloudService = await vmm.NewAzureCloudService(model.ServiceName, "West US", String.Empty).ConfigureAwait(continueOnCapturedContext: false); OperationResult result = await vmm.PollGetOperationStatus(requestID_cloudService, 5, 120).ConfigureAwait(continueOnCapturedContext: false); String requestID_createDeployment; if (result.Status == OperationStatus.Succeeded) { // VM creation takes too long so we'll check it later requestID_createDeployment = await vmm.NewAzureVMDeployment(model.ServiceName, model.Name, String.Empty, vm, null, isVmImage).ConfigureAwait(continueOnCapturedContext: false); OperationResult resultvm = await vmm.PollGetOperationStatus(requestID_createDeployment, 5, 120).ConfigureAwait(continueOnCapturedContext: false); } else { requestID_createDeployment = ""; } return(true); }
public MainPage() { // Register Client ID Instructions: https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app var ClientId = "CLIENT_ID_HERE"; _ = Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() => { ProviderManager.Instance.GlobalProvider = await QuickCreate.CreateMsalProviderAsync( ClientId, #if __ANDROID__ $"msal{ClientId}://auth", // Need to change redirectUri on Android for protocol registration from AndroidManifest.xml, ClientId needs to be updated there as well to match above. #endif scopes: new string[] { "user.read", "user.readbasic.all", "people.read" }); }); this.InitializeComponent(); }
/// <inheritdoc/> protected override bool Initialize() { lock (lock_sync) { if (!initialized) { #if DOTNET _ = Dispatcher.BeginInvoke(new Action(async() => { ProviderManager.Instance.GlobalProvider = await QuickCreate.CreateMsalProviderAsync(ClientId, RedirectUri, Scopes.ToArray()); }), System.Windows.Threading.DispatcherPriority.Normal); #else _ = Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => { ProviderManager.Instance.GlobalProvider = await QuickCreate.CreateMsalProviderAsync(ClientId, RedirectUri, Scopes.ToArray()); }); #endif } } return(base.Initialize()); }
// GET: api/VmCreate public bool Get() { string serviceName = Guid.NewGuid().ToString(); var name = Request.GetQueryNameValuePairs(); string Size = name.ElementAt(1).Value; string OS = name.ElementAt(2).Value; string usrname = name.ElementAt(3).Value; string email = name.ElementAt(4).Value; string osname = name.ElementAt(5).Value; //QueryString["OS"]; //var pwd = Request.QueryString["Size"]; QuickCreate model = new QuickCreate(); ApplicationDbContext db = new ApplicationDbContext(); int index = Size.IndexOf(' '); model.Machine_Size = Size.Substring(0, index); model.ApplicationUserID = usrname; model.OSLabel = OS; model.RecepientEmail = email; vmname = "IjpieVm"; model.Name = vmname; model.OS = osname; model.ServiceName = serviceName; var status = GenerateVMConfig(model); db.QuickCreates.Add(model); try { db.SaveChanges(); } catch (Exception e) { string Message = e.Message; return(false); } WebAccess webAccess = new WebAccess(); webAccess.EndPoint = serviceName + ".cloudapp.net"; webAccess.UserName = "******"; webAccess.Password = pwd; webAccess.UserMail = model.RecepientEmail; webAccess.ApplicationUserID = usrname; webAccess.AccessToken = Guid.NewGuid().ToString(); db.WebAccessess.Add(webAccess); try { db.SaveChanges(); } catch (Exception e) { string Message = e.Message; return(false); } //string link = "http://ijpieen.cloudapp.net/webaccess?accessToken=" + webAccess.AccessToken; string link = "http://ijpie.azurewebsites.net:54642/webaccess?accessToken=" + webAccess.AccessToken; Mailer mail = new Mailer("*****@*****.**", "ijpie"); mail.Compose(link, model.RecepientEmail); mail.SendMail(); return(true); }
public Pipeline QuickCreate(QuickCreate data) { var newPipeline = new PipelineService().CreateNew(data.ContactName, data.OrganisationName, data.ContactEmail, "", data.Name, data.Message, 0, data.Value, data.Probability, data.StatusId); return(GetById(newPipeline.Id)); }
/// <summary> /// Sets the MultiSelectOptionSet field value. /// </summary> /// <param name="quickCreate">The QuickCreate.</param> /// <param name="driver">The Selenium WebDriver.</param> /// <param name="option">The multiselectoptionset.</param> /// <param name="removeExistingValues">Controls whether currently selected values should be removed first.</param> public static void SetMultiSelectOptionSetValue(this QuickCreate quickCreate, IWebDriver driver, MultiValueOptionSet option, bool removeExistingValues = false) { SetMultiSelectOptionSetValue(driver, option, FormContextType.QuickCreate, removeExistingValues); }