public void Apply(ReleaseContext rc) { switch (Noun) { case NounEnum.Host: case NounEnum.Hosts: HostAction(rc); break; case NounEnum.Build: case NounEnum.Builds: BuildAction(rc); break; case NounEnum.DeploymentUnit: case NounEnum.DeploymentUnits: DeploymentUnitAction(rc); break; case NounEnum.Package: case NounEnum.Packages: PackageAction(rc); break; case NounEnum.Artefact: case NounEnum.Artefacts: ArtefactAction(rc); break; } }
static void Main(string[] args) { try { var command = Args.Configuration.Configure<CommandObject>().CreateAndBind(args); using (var rc = new ReleaseContext()) { rc.Configuration.LazyLoadingEnabled = true; rc.Configuration.ProxyCreationEnabled = true; command.Apply(rc); } } catch (Exception ex) { Console.WriteLine(ex.Message); #if DEBUG Console.WriteLine(ex.StackTrace); var ex1 = ex.InnerException; while (ex1 != null) { Console.WriteLine(ex1.Message); Console.WriteLine(ex1.StackTrace); ex1 = ex1.InnerException; } #endif } }
public void GetCurrentCatalogOfArtefacts_ReturnsSomething() { var rc = new ReleaseContext(); var artefacts = rc.GetCurrentCatalogOfArtefacts(); Assert.IsTrue(artefacts.Count() > 0); }
public void ReleaseContextTests_CanAccessData() { var rc = new ReleaseContext(); //var query = from dt in rc.Builds // select dt; //Assert.IsTrue(query.Count() >= 0); }
public void PopulateData() { var rc = new ReleaseContext(); var mt = new Model.Tests.Initial.BaseModelTest(); mt.PopulateTestData(); mt.Builds.ForEach(b => rc.Builds.Add(b)); mt.DeployableArtefacts.ForEach(da => { rc.DeployableArtefacts.Add(da); }); mt.Hosts.ForEach(h => rc.Hosts.Add(h)); rc.SaveChanges(); }
public void ReleaseContextTests_CreateInstance() { var rc = new ReleaseContext(); Assert.IsNotNull(rc, "ReleaseContext should not be null"); }
public AgentController() { rc = new ReleaseContext(); }
private void ArtefactAction(ReleaseContext rc) { switch (Action) { case ActionEnum.List: rc.GetDeployableArtefacts().ToList().ForEach(da => Console.WriteLine(da)); break; case ActionEnum.Add: CheckArguments(arguments, "ArtefactName", "FileName", "HostRole"); rc.AddArtefact(arguments[0], arguments[1], arguments[2]); Console.WriteLine("Artefact added"); break; case ActionEnum.Update: throw new NotImplementedException(); break; case ActionEnum.Delete: CheckArguments(arguments, "ArtefactName"); rc.DeleteArtefact(arguments[0]); Console.WriteLine("Artefact deleted"); break; default: throw new Exception("Action not valid for this Noun"); } }
private void PackageAction(ReleaseContext rc) { switch (Action) { case ActionEnum.List: rc.GetReleasePackages().ToList().ForEach(rp => Console.WriteLine(rp)); break; case ActionEnum.Add: CheckArguments(arguments, "ReleaseName", "ReleaseDate", "Environment"); var releasePackage = rc.AddReleasePackage(arguments[0], DateTime.Parse(arguments[1]), arguments[2]); Console.WriteLine("Added Release Package: " + releasePackage); break; case ActionEnum.AddArtefact: CheckArguments(arguments, "PackageName", "ArtefactName", "BuildLabel"); var deploymentUnit = rc.AddArtefactToPackage(arguments[0], arguments[1], arguments[2]); Console.WriteLine("Added Deployment Unit:" + deploymentUnit.ToString()); break; case ActionEnum.RemoveArtefact: CheckArguments(arguments, "packageName", "artefactName"); rc.RemoveArtefactFromPackage(arguments[0], arguments[1]); Console.WriteLine("Artefact removed"); break; case ActionEnum.Deploy: CheckArguments(arguments, "PackageName", "EnvironmentName"); var releasingPackage = rc.DeployPackageToEnvironment(arguments[0], arguments[1]); Console.WriteLine(releasingPackage); break; default: throw new Exception("Action not valid for this Noun"); } }
private void HostAction(ReleaseContext rc) { switch (Action) { case ActionEnum.List: //rc.Hosts.ToList().ForEach(h => Console.WriteLine(h.ToString())); rc.GetHosts().ToList().ForEach(h => Console.WriteLine(h)); break; case ActionEnum.Add: CheckArguments(arguments, "HostName", "HostRole", "Environment"); rc.AddHost(arguments[0], arguments[1], arguments[2]); Console.WriteLine("Host added"); break; case ActionEnum.Update: throw new NotImplementedException(); break; case ActionEnum.Delete: rc.DeleteHost(arguments[0]); Console.WriteLine("Host deleted"); break; default: throw new Exception("Action not valid for this Noun"); } }
private void DeploymentUnitAction(ReleaseContext rc) { throw new Exception("Directly manipulating Deployment Units is not allowed!"); }
private void BuildAction(ReleaseContext rc) { switch (Action) { case ActionEnum.List: rc.GetBuilds().ToList().ForEach(b => Console.WriteLine(b.ToString())); break; case ActionEnum.Add: CheckArguments(arguments, "BuildLabel", "BuildDate", "DropLocation"); rc.AddBuild(arguments[0], DateTime.Parse(arguments[1]), arguments[2]); Console.WriteLine("Build added"); break; case ActionEnum.Update: throw new NotImplementedException(); break; case ActionEnum.Delete: CheckArguments(arguments, "BuildLabel"); rc.DeleteBuild(arguments[0]); Console.WriteLine("Build deleted"); break; default: throw new Exception("Action not valid for this Noun"); } }