// POST /api/operationstatus
        public OperationStatus Post(OperationStatus opsStatus)
        {
            string status = string.Empty;
            string responseString = string.Empty;

            try
            {
                DeploymentHelper deploymentHelper = new DeploymentHelper();

                responseString = deploymentHelper.GetOperationStatus(opsStatus.SubscriptionId, 
                                                                     opsStatus.CertificateBytes, 
                                                                     opsStatus.RequestId, out status);

                opsStatus.Status = status;
                opsStatus.ResponseString = responseString;
            }
            catch (WebException wex)
            {
                string responseStr = string.Empty;

                using (StreamReader responseReader = new StreamReader(wex.Response.GetResponseStream()))
                {
                    responseStr = responseReader.ReadToEnd();

                    if (string.IsNullOrWhiteSpace(responseString) != true)
                    {
                        Logger.Write("OperationStatusController.Post() WebException Response: " + responseStr);
                    }

                    responseReader.Close();
                }

                Logger.Write(string.Format("Error in OperationStatusController.Post()  Error: {0}\n{1}", wex.Message,
                                            wex.InnerException != null ? wex.InnerException.Message : string.Empty));

                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }
            catch (Exception ex)
            {
                Logger.Write(string.Format("Error in OperationStatusController.Post()  Error: {0}\n{1}", ex.Message,
                                            ex.InnerException != null ? ex.InnerException.Message : string.Empty));

                opsStatus = null;

                throw new HttpResponseException(HttpStatusCode.BadRequest);
            }

            return opsStatus;
        }
        public void GetOperationStatusTest()
        {
            DeploymentHelper target = new DeploymentHelper();
            string subscriptionId = "e57cc5fa-5cf7-41c0-a33c-3adaf2944c4a";

            List<Byte> certificateBytes = null; // TODO: Initialize to an appropriate value

            string requestId = "";

            string expected = string.Empty; // TODO: Initialize to an appropriate value
            
            string actual;

            string status = string.Empty;

            actual = target.GetOperationStatus(subscriptionId, certificateBytes, requestId, out status);
            
            Assert.AreEqual(expected, actual);
        }
        public void DeleteDeploymentTest()
        {
            DeploymentHelper target = new DeploymentHelper();

            string subscriptionId = "e57cc5fa-5cf7-41c0-a33c-3adaf2944c4a";

            string filePath = @"C:\Development\Certificates\AzureManagementCertificate.cer";

            List<Byte> certificateBytes = CertificateUtility.GetCertificateBytes(filePath);

            string serviceName = "commandlinetest";

            string deploymentSlot = "staging";

            string expected = string.Empty; 
            string actual;

            actual = target.DeleteDeployment(subscriptionId, certificateBytes, serviceName, deploymentSlot);

            string opsStatus = string.Empty;

            string status = "InProgress";

            while (status == "InProgress")
            {
                opsStatus = target.GetOperationStatus(subscriptionId, certificateBytes, actual, out status);

                Trace.WriteLine("Ops Status = " + status);

                Thread.Sleep(2000);
            }

            
            Assert.AreEqual(expected, actual);
        }
Example #4
0
        static OperationStatus GetOperationStatus(OperationStatus operationStatus)
        {
            try
            {
                DeploymentHelper deploymentHelper = new DeploymentHelper();

                string status = string.Empty;

                string responseString = deploymentHelper.GetOperationStatus(operationStatus.SubscriptionId, 
                                                                            operationStatus.CertificateBytes,
                                                                            operationStatus.RequestId, out status);

                operationStatus.ResponseString = responseString;
                operationStatus.Status = status;
            }
            catch (Exception ex)
            {
                Console.WriteLine(string.Format("Error: {0}\n{1}", ex.Message,
                                  ex.InnerException != null ? ex.InnerException.Message : string.Empty));

                operationStatus = null;
            }

            return operationStatus;
        }