Exemplo n.º 1
0
        public void EstablishContext()
        {
            Deployment       = new T();
            _verifyArguments = new DeploymentArguments
            {
                Deployment  = GetType().Assembly.FullName,
                Environment = "TEST",
                Command     = DeploymentCommands.Verify,
                Role        = "Web"
            };

            _verifyArguments.ServerMappings.AddMap("Web", "SrvTopeka02");

            DeploymentPlanDispatcher.KickItOutThereAlready(Deployment, _verifyArguments);
        }
        public void Execute()
        {
            bool verifyRan  = false;
            bool executeRan = false;
            bool traceRan   = false;

            var detail = new DeploymentDetail(() =>
            {
                traceRan = true;
                return("trace");
            }, () =>
            {
                verifyRan = true;
                var r     = new DeploymentResult();
                r.AddGood("test:v");
                return(r);
            }, () =>
            {
                executeRan = true;
                var r      = new DeploymentResult();
                r.AddGood("test:e");
                return(r);
            },
                                              () => new DeploymentResult());


            var web = new DeploymentRole("WEB");

            web.AddServer("BILL");
            web.ForEachServerMapped(s => s.AddDetail(detail));

            var plan = new DeploymentPlan();

            plan.AddRole(web);


            var args = new DeploymentArguments
            {
                Role    = "WEB",
                Command = DeploymentCommands.Execute
            };

            plan.Execute();

            Assert.IsTrue(traceRan, "trace");
            Assert.IsTrue(verifyRan, "verify");
            Assert.IsTrue(executeRan, "execute");
        }
        public void Trace()
        {
            bool verifyRan  = false;
            bool executeRan = false;
            bool traceRan   = false;

            var detail = new DeploymentDetail(() =>
            {
                traceRan = true;
                return("trace");
            }, () =>
            {
                verifyRan = true;
                return(new DeploymentResult());
            }, () =>
            {
                executeRan = true;
                return(new DeploymentResult());
            }, () => new DeploymentResult());


            var web = new DeploymentRole("WEB");

            web.AddServer(new DeploymentServer("bob"));
            web.ForEachServerMapped(s => s.AddDetail(detail));

            var plan = new DeploymentPlan();

            plan.AddRole(web);


            var args = new DeploymentArguments
            {
                Role    = "WEB",
                Command = DeploymentCommands.Trace
            };

            plan.Trace();

            Assert.IsTrue(traceRan);
            Assert.IsFalse(verifyRan);
            Assert.IsFalse(executeRan);
        }