Example #1
0
        private void OpsQueueTest()
        {
            var vmOp = new VmOp()
            {
                Config        = "",
                Id            = 0,
                Name          = null,
                Opcode        = CmpInterfaceModel.Constants.VmOpcodeEnum.STOP.ToString(),
                StatusCode    = CmpInterfaceModel.Constants.StatusEnum.Submitted.ToString(),
                StatusMessage = CmpInterfaceModel.Constants.StatusEnum.Submitted.ToString(),
                VmId          = 3,
                Vmsize        = "",
                disks         = null,
                iData         = 0,
                sData         = null
            };

            var opSpec = VmOpsController.Translate(vmOp);

            opSpec.Requestor = "";
            //opSpec = new CmpInterface(null).SubmitOpToQueue(opSpec);


            var cmp = new CmpServiceLib.CmpService(eLog, ConfigurationManager.ConnectionStrings["CMPContext"].ConnectionString, null);

            opSpec = cmp.SubmitOpToQueue(opSpec);
        }
Example #2
0
 private void StopVm()
 {
     var vmo   = new VmOpsController();
     var soRet = vmo.SubmitOp("",
                              new VmOp()
     {
         Opcode = CmpInterfaceModel.Constants.VmOpcodeEnum.STOP.ToString(),
         VmId   = 1029
     });
 }
Example #3
0
        private void DeleteVmTest(EventLog _eventLog, List <CreateVm> vmList)
        {
            VmOp vmOp = new VmOp()
            {
                Opcode = CmpInterfaceModel.Constants.VmOpcodeEnum.DELETEFROMSTORAGE.ToString(),
                iData  = 0,
                sData  = null
            };

            Task[] taskArray = new Task[vmList.Count];
            var    cmpi      = new VMServiceRepository(_eventLog);

            for (int i = 0; i < vmList.Count; i++)
            {
                var opSpec = VmOpsController.Translate(new VmOp {
                    Opcode = vmOp.Opcode, VmId = vmList[i].Id, sData = vmOp.sData, iData = vmOp.iData
                });

                taskArray[i] = Task.Factory.StartNew(() =>
                {
                    opSpec = cmpi.SubmitOperation(opSpec);

                    while (!opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Complete.ToString()) &&
                           !opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Exception.ToString()))
                    {
                        opSpec = cmpi.GetVmOpsRequestSpec(vmList[i].Name);
                    }
                });
            }
            Task.WaitAll(taskArray);

            for (int i = 0; i < vmList.Count; i++)
            {
                var opSpec = cmpi.GetVmOpsRequestSpec(vmList[i].Name);
                //Assert.AreNotEqual(opSpec, null);
                //Assert.AreEqual(opSpec.StatusCode, CmpInterfaceModel.Constants.StatusEnum.Complete);
            }
        }
Example #4
0
        private void VmOpsTest()
        {
            var ctr = new VmOpsController();

            ctr.GetVmOpsQueueStatus("", 10);
        }
Example #5
0
        //*********************************************************************
        ///
        /// <summary>
        ///
        /// </summary>
        /// <param name="_eventLog"></param>
        /// <param name="vmList"></param>
        ///
        //*********************************************************************

        private void DeleteVmTest(EventLog _eventLog, List <CreateVm> vmList)
        {
            VmOp vmOp = new VmOp()
            {
                Opcode = CmpInterfaceModel.Constants.VmOpcodeEnum.DELETEFROMSTORAGE.ToString(),
                iData  = 0,
                sData  = null
            };

            List <OpSpec> opsList = new List <OpSpec>();
            var           cmpi    = new VMServiceRepository(_eventLog);

            for (int i = 0; i < vmList.Count; i++)
            {
                var opSpec = VmOpsController.Translate(new VmOp {
                    Opcode = vmOp.Opcode, VmId = vmList[i].Id, sData = vmOp.sData, iData = vmOp.iData
                });

                opSpec = cmpi.SubmitOperation(opSpec);

                opSpec = cmpi.GetVmOpsRequestSpec(vmList[i].Name);
                while (!opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Complete.ToString()) &&
                       !opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Exception.ToString()))
                {
                    opSpec = cmpi.GetVmOpsRequestSpec(vmList[i].Name);
                }

                opsList.Add(opSpec);

                if (opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Exception.ToString()))
                {
                    break;
                }
            }

            foreach (var ops in opsList)
            {
                Assert.AreNotEqual(ops.StatusCode, null);
                Assert.AreNotEqual(ops.StatusCode, "Exception", ops.StatusMessage);
                Assert.AreEqual(ops.StatusCode, "Complete", ops.StatusMessage);
            }

            /*
             * Task[] taskArray = new Task[vmList.Count];
             * for (int i = 0; i < vmList.Count; i++)
             * {
             *  var i1 = i;
             *  taskArray[i] = Task.Factory.StartNew((Object ob) =>
             *  {
             *      OpRequest op = ob as OpRequest;
             *      var opSpec = cmpi.GetVmOpsRequestSpec(vmList[i1].Name);
             *      while (!opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Complete.ToString())
             *              && !opSpec.StatusCode.Equals(CmpInterfaceModel.Constants.StatusEnum.Exception.ToString()))
             *      {
             *          opSpec = cmpi.GetVmOpsRequestSpec(vmList[i1].Name);
             *      }
             *
             *      op.StatusCode = opSpec.StatusCode;
             *      op.StatusMessage = opSpec.StatusMessage;
             *
             *  }, new OpRequest(){});
             * }
             * Task.WaitAll(taskArray);
             *
             * foreach (var task in taskArray)
             * {
             *  var data = task.AsyncState as OpRequest;
             *  Assert.AreNotEqual(data.StatusCode, null);
             *  Assert.AreNotEqual(data.StatusCode, "Exception", data.StatusMessage);
             *  Assert.AreEqual(data.StatusCode, "Complete", data.StatusMessage);
             * }
             *
             * for (int i = 0; i < vmList.Count; i++ )
             * {
             *  var opSpec = cmpi.GetVmOpsRequestSpec(vmList[i].Name);
             *  Assert.AreNotEqual(opSpec , null);
             *  Assert.AreEqual(opSpec.StatusCode, CmpInterfaceModel.Constants.StatusEnum.Complete.ToString());
             * }*/
        }