示例#1
0
        public void RunConventions()
        {
            try
            {
                // Now run the "conventions", for example: Deploy.ps1 scripts, XML configuration, and so on
                RunInstallConventions();

                // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                RunRollbackCleanup();
            }
            catch (Exception ex)
            {
                if (ex is CommandException)
                {
                    Console.Error.WriteLine(ex.Message);
                }
                else
                {
                    Console.Error.WriteLine(ex);
                }
                Console.Error.WriteLine("Running rollback conventions...");

                deployment.Error(ex);

                // Rollback conventions include tasks like DeployFailed.ps1
                RunRollbackConventions();

                // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                RunRollbackCleanup();

                throw;
            }
        }
示例#2
0
        public void RunConventions()
        {
            try
            {
                // Now run the "conventions", for example: Deploy.ps1 scripts, XML configuration, and so on
                RunInstallConventions();

                // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                RunRollbackCleanup();
            }
            catch (Exception installException)
            {
                if (installException is CommandException || installException is RecursiveDefinitionException)
                {
                    Console.Error.WriteLine(installException.Message);
                }
                else
                {
                    Console.Error.WriteLine(installException);
                }

                Console.Error.WriteLine("Running rollback conventions...");

                deployment.Error(installException);

                try
                {
                    // Rollback conventions include tasks like DeployFailed.ps1
                    RunRollbackConventions();

                    // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                    RunRollbackCleanup();
                }
                catch (Exception rollbackException)
                {
                    if (rollbackException is CommandException)
                    {
                        Console.Error.WriteLine(rollbackException.Message);
                    }
                    else if (rollbackException is RecursiveDefinitionException && rollbackException.Message != installException.Message)
                    {
                        //dont duplicate these error messages
                        Console.Error.WriteLine(rollbackException.Message);
                    }
                    else if (!(rollbackException is RecursiveDefinitionException))
                    {
                        Console.Error.WriteLine(rollbackException);
                    }
                }
                throw;
            }
        }
示例#3
0
        public void RunConventions()
        {
            try
            {
                // Now run the "conventions", for example: Deploy.ps1 scripts, XML configuration, and so on
                RunInstallConventions();

                // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                RunRollbackCleanup();
            }
            catch (Exception installException)
            {
                if (installException is CommandException || installException is RecursiveDefinitionException)
                {
                    log.Verbose(installException.ToString());
                }
                else
                {
                    Console.Error.WriteLine(installException);
                }

                Console.Error.WriteLine("Running rollback conventions...");

                deployment.Error(installException);

                try
                {
                    // Rollback conventions include tasks like DeployFailed.ps1
                    RunRollbackConventions();

                    // Run cleanup for rollback conventions, for example: delete DeployFailed.ps1 script
                    RunRollbackCleanup();
                }
                catch (Exception rollbackException)
                {
                    //if the "rollback" exception message is identical to the exception we got during "install", dont log it
                    if (rollbackException.Message != installException.Message)
                    {
                        if (rollbackException is CommandException || rollbackException is RecursiveDefinitionException)
                        {
                            log.Verbose(installException.ToString());
                        }
                        else
                        {
                            Console.Error.WriteLine(rollbackException);
                        }
                    }
                }
                throw;
            }
        }