private ServerAggregatingCruiseManagerWrapper InitialiseServerWrapper(MockRepository mocks, Action <CruiseServerClientBase> additionalSetup) { IRemoteServicesConfiguration configuration = mocks.DynamicMock <IRemoteServicesConfiguration>(); ICruiseServerClientFactory cruiseManagerFactory = mocks.DynamicMock <ICruiseServerClientFactory>(); CruiseServerClientBase cruiseManager = mocks.DynamicMock <CruiseServerClientBase>(); ServerLocation[] servers = new ServerLocation[] { serverLocation, otherServerLocation }; SetupResult.For(configuration.Servers) .Return(servers); SetupResult.For(cruiseManagerFactory.GenerateClient("http://myurl", new ClientStartUpSettings())) .IgnoreArguments() .Return(cruiseManager); ServerAggregatingCruiseManagerWrapper serverWrapper = new ServerAggregatingCruiseManagerWrapper( configuration, cruiseManagerFactory); if (additionalSetup != null) { additionalSetup(cruiseManager); } return(serverWrapper); }
private ProjectStatus GetProjectStatus() { using (var client = factory.GenerateClient(ServerUri)) { return(client.GetProjectStatus().FirstOrDefault(t => t.Name == ProjectName)); } }
private CruiseServerClientBase GetCruiseManager(IServerSpecifier serverSpecifier, string sessionToken) { var config = GetServerUrl(serverSpecifier); CruiseServerClientBase manager = clientFactory.GenerateClient(config.Url, new ClientStartUpSettings { BackwardsCompatable = config.BackwardCompatible }); manager.SessionToken = sessionToken; return(manager); }
private CruiseServerClientBase GetCruiseManager(string url, string sessionToken) { //var config = GetServerUrl(serverSpecifier); CruiseServerClientBase manager = _ccf.GenerateClient(url, new ClientStartUpSettings { BackwardsCompatable = false //config.BackwardCompatible }); manager.SessionToken = sessionToken; return(manager); }
private ProjectStatus GetCurrentProjectStatus() { Log.Debug("Retrieving ProjectStatus from server: " + ServerUri); var client = factory.GenerateClient(ServerUri); var loggedIn = false; if ((SecurityCredentials != null) && (SecurityCredentials.Length > 0)) { Log.Debug("Logging in"); if (client.Login(new List <NameValuePair>(SecurityCredentials))) { loggedIn = true; Log.Debug("Logged on server, session token is " + client.SessionToken); } else { Log.Warning("Unable to login to remote server"); } } else if (RemoteServerUri.IsLocal(this.ServerUri)) { Log.Debug("Sending local server bypass"); client.SessionToken = SecurityOverride.SessionIdentifier; } try { var currentStatuses = client.GetProjectStatus(); var project = currentStatuses.FirstOrDefault(p => p.Name == Project); if (project != null) { Log.Debug("Found status for dependent project {0} is {1}", project.Name, project.BuildStatus); return(project); } throw new NoSuchProjectException(Project); } finally { if (loggedIn) { Log.Debug("Logging out"); client.Logout(); } } }
/// <summary> /// Executes the specified result. /// </summary> /// <param name="result">The result.</param> /// <returns></returns> /// <remarks></remarks> protected override bool Execute(IIntegrationResult result) { if (IntegrationStatus != result.Status) { return(false); } var logger = Logger ?? new DefaultLogger(); result.BuildProgressInformation.SignalStartRunTask(!string.IsNullOrEmpty(Description) ? Description : "Running for build publisher"); var loggedIn = false; logger.Debug("Generating client for url '{0}'", ServerUri); var client = factory.GenerateClient(ServerUri); if ((SecurityCredentials != null) && (SecurityCredentials.Length > 0)) { logger.Debug("Logging in"); if (client.Login(new List <NameValuePair>(SecurityCredentials))) { loggedIn = true; logger.Debug("Logged on server, session token is " + client.SessionToken); } else { logger.Warning("Unable to login to remote server"); } } else if (RemoteServerUri.IsLocal(this.ServerUri)) { logger.Debug("Sending local server bypass"); client.SessionToken = SecurityOverride.SessionIdentifier; } logger.Info("Sending ForceBuild request to '{0}' on '{1}'", Project, ServerUri); client.ForceBuild(Project, new List <NameValuePair>(Parameters ?? new NameValuePair[0])); if (loggedIn) { logger.Debug("Logging out"); client.Logout(); } return(true); }
public CCNET(string host = "127.0.0.1") { Server = fac.GenerateClient($"tcp://{host}:21234/CruiseManager.rem"); }