public void InsertSshServer() { // arrange // act var result = _sshServerSerivce.Insert(SshServer(), false).GetAwaiter().GetResult(); // assert var SshServers = _sshServerSerivce.FindAll().GetAwaiter().GetResult(); SshServers.Should().HaveCount(1); }
public static SshServer SshServerInsert(SshServerSerivce sshServerSerivce) { sshServerSerivce.Insert(SshServer(), false).GetAwaiter().GetResult(); var sshServer = sshServerSerivce.FindAll().GetAwaiter().GetResult().FirstOrDefault(); return(sshServer); }
public async Task <IActionResult> CreateSshServer(string apiKey, string email) { if (!HasAccess(apiKey)) { return(BadRequest("No AuthKey set or wrong auth key!")); } var model = new SshServer { Name = "Please Change", SshUsername = "******", SshPassword = "******" }; var user = await _userService.GetUserByEmail(email); if (user != null) { model.LiteDbUserId = user.Id.ToString(); model.Owner = user; if (!await _userManager.IsInRoleAsync(user, "OnPremise")) { await _userManager.AddToRoleAsync(user, "OnPremise"); } } var sshServer = await _sshServerSerivce.Insert(model); if (user == null) { await _reservedServersService.Add(new ReservedServer() { Email = email, SshServerId = sshServer }); } return(Ok(sshServer)); }
public async Task <IActionResult> SaveServer(SshServer server) { if (!await CheckIfUserHasrights(server.Id)) { return(Forbid()); } var newServer = false; if (!ModelState.IsValid) { return(View("Server", server)); } server.LiteDbUsers = (await _userservice.FindAll()).ToList(); if (server.SshKeyFileNameForm != null) { await using var ms = new MemoryStream(); await server.SshKeyFileNameForm.CopyToAsync(ms); var fileBytes = ms.ToArray(); server.SshKeyFileName = fileBytes; // act on the Base64 data } if (server.SshKeyFileNameRootForHostingForm != null) { await using var ms = new MemoryStream(); await server.SshKeyFileNameRootForHostingForm.CopyToAsync(ms); var fileBytes = ms.ToArray(); server.SshKeyFileNameRootForHosting = fileBytes; // act on the Base64 data } server.Owner = (await _userservice.FindAll()) .FirstOrDefault(x => x.Id == new ObjectId(server.LiteDbUserId)); try { if (server.Id == 0) { newServer = true; server.Id = await _service.Insert(server); } else { if (server.SshKeyFileName == null) { var old = await _service.FindOne(server.Id); if (old.SshKeyFileName != null) { server.SshKeyFileName = old.SshKeyFileName; } } await _service.Update(server); } } catch (ValidateException e) { if (e.FieldName == "" && e.Message.ToLower().Contains("telnet")) { ModelState.AddModelError("Password", e.Message); } else if (e.FieldName == "" && e.Message.ToLower().Contains("ssh")) { ModelState.AddModelError("SshPassword", e.Message); } else if (e.FieldName == "") { ModelState.AddModelError("Id", e.Message); } else { ModelState.AddModelError(e.FieldName, e.Message); } } if (ModelState.ErrorCount > 0) { if (newServer) { return(await EditServer(server)); } return(await EditServer(server)); } if (newServer) { return(await Index()); } return(await Index()); }