no message
This commit is contained in:
3
.idea/workspace.xml
generated
3
.idea/workspace.xml
generated
@@ -8,8 +8,11 @@
|
|||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Common/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Constants.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/UserConnection.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/UserConnection.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/UserConnection.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/UserConnection.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AddUser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/AddUser.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/InitialiseUser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/InitialiseUser.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SSH/TaskConnectionPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SSH/TaskConnectionPass.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SSH/TaskConnectionPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SSH/TaskConnectionPass.java" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
|||||||
@@ -242,32 +242,12 @@ public class RemoteDVMTestingPlanner extends DVMTestingPlanner {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected boolean CheckModules() throws Exception {
|
protected boolean CheckModules() throws Exception {
|
||||||
RemoteFile modulesDirectory = new RemoteFile(user.workspace, "modules");
|
String log = user.connection.CheckModulesVersion();
|
||||||
RemoteFile version = new RemoteFile(modulesDirectory, "version.h");
|
if (!log.isEmpty()) {
|
||||||
int current_version = Constants.Nan;
|
testingPackage.description = log;
|
||||||
int actual_version = Constants.planner_version;
|
|
||||||
if (user.connection.Exists(version)) {
|
|
||||||
try {
|
|
||||||
current_version = Integer.parseInt(user.connection.readFromFile(version));
|
|
||||||
} catch (Exception ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (current_version < actual_version) {
|
|
||||||
Print("Закачка кода модулей...");
|
|
||||||
for (String resource_name : Constants.resourses_names) {
|
|
||||||
Print(resource_name);
|
|
||||||
user.connection.putResource(modulesDirectory, resource_name);
|
|
||||||
}
|
|
||||||
//--
|
|
||||||
Print("Сборка модулей...");
|
|
||||||
String modules_log = user.connection.compileModules(modulesDirectory);
|
|
||||||
if (!modules_log.isEmpty()) {
|
|
||||||
testingPackage.description = modules_log;
|
|
||||||
testingPackage.state = TasksPackageState.Aborted;
|
testingPackage.state = TasksPackageState.Aborted;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
package TestingSystem.DVM;
|
package TestingSystem.DVM;
|
||||||
import Common.Constants;
|
import Common.Constants;
|
||||||
import Common.Current;
|
|
||||||
import Common.Global;
|
import Common.Global;
|
||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import GlobalData.Machine.Machine;
|
import GlobalData.Machine.Machine;
|
||||||
@@ -491,14 +490,14 @@ public class UserConnection {
|
|||||||
ShellDisconnect();
|
ShellDisconnect();
|
||||||
return readFromFile(outFile).replace("\n", "").replace("\r", "");
|
return readFromFile(outFile).replace("\n", "").replace("\r", "");
|
||||||
}
|
}
|
||||||
//--
|
//-- проверка существования рабочего пространства.
|
||||||
public void CheckUserInitialization(String email) throws Exception {
|
public void CheckUserInitialization(String email) throws Exception {
|
||||||
RemoteFile userWorkspace = new RemoteFile(user.workspace, true);
|
RemoteFile userWorkspace = new RemoteFile(user.workspace, true);
|
||||||
if (!Exists(userWorkspace)){
|
if (!Exists(userWorkspace)) {
|
||||||
System.out.println("создание папки пользователя");
|
System.out.println("создание папки пользователя");
|
||||||
sftpChannel.mkdir(userWorkspace.full_name);
|
sftpChannel.mkdir(userWorkspace.full_name);
|
||||||
//--
|
//--
|
||||||
RemoteFile modulesDirectory= new RemoteFile(userWorkspace, "modules");
|
RemoteFile modulesDirectory = new RemoteFile(userWorkspace, "modules");
|
||||||
RemoteFile projectsDirectory = new RemoteFile(userWorkspace, "projects");
|
RemoteFile projectsDirectory = new RemoteFile(userWorkspace, "projects");
|
||||||
RemoteFile testsDirectory = new RemoteFile(userWorkspace, "tests");
|
RemoteFile testsDirectory = new RemoteFile(userWorkspace, "tests");
|
||||||
//--
|
//--
|
||||||
@@ -525,4 +524,29 @@ public class UserConnection {
|
|||||||
user.connection.writeToFile("", info);
|
user.connection.writeToFile("", info);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//--
|
||||||
|
public String CheckModulesVersion() throws Exception {
|
||||||
|
RemoteFile modulesDirectory = new RemoteFile(user.workspace, "modules");
|
||||||
|
RemoteFile version = new RemoteFile(modulesDirectory, "version.h");
|
||||||
|
int current_version = Constants.Nan;
|
||||||
|
int actual_version = Constants.planner_version;
|
||||||
|
if (Exists(version)) {
|
||||||
|
try {
|
||||||
|
current_version = Integer.parseInt(readFromFile(version));
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (current_version < actual_version) {
|
||||||
|
System.out.println("Закачка кода модулей...");
|
||||||
|
for (String resource_name : Constants.resourses_names) {
|
||||||
|
System.out.println(resource_name);
|
||||||
|
putResource(modulesDirectory, resource_name);
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
System.out.println("Сборка модулей...");
|
||||||
|
return compileModules(modulesDirectory);
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,7 @@ import GlobalData.Machine.Machine;
|
|||||||
import GlobalData.Machine.MachineType;
|
import GlobalData.Machine.MachineType;
|
||||||
import GlobalData.User.User;
|
import GlobalData.User.User;
|
||||||
import Visual_DVM_2021.Passes.AddObjectPass;
|
import Visual_DVM_2021.Passes.AddObjectPass;
|
||||||
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
public class AddUser extends AddObjectPass<User> {
|
public class AddUser extends AddObjectPass<User> {
|
||||||
public AddUser() {
|
public AddUser() {
|
||||||
super(User.class);
|
super(User.class);
|
||||||
@@ -31,4 +32,9 @@ public class AddUser extends AddObjectPass<User> {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
protected void performDone() throws Exception {
|
||||||
|
super.performDone();
|
||||||
|
passes.get(PassCode_2021.InitialiseUser).Do();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,8 +47,6 @@ public class InitialiseUser extends Pass_2021 {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
//рега была. просто заносим то что там пользователю
|
//рега была. просто заносим то что там пользователю
|
||||||
//todo дополнительно проверять существование папки этого пространства.
|
|
||||||
//даже с учетом БД. может быть вероятность что пространство кто то удалил.
|
|
||||||
Current.getUser().workspace = workspace.path;
|
Current.getUser().workspace = workspace.path;
|
||||||
Current.getUser().state = UserState.ready_to_work;
|
Current.getUser().state = UserState.ready_to_work;
|
||||||
Global.db.Update(Current.getUser());
|
Global.db.Update(Current.getUser());
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
package Visual_DVM_2021.Passes.SSH;
|
package Visual_DVM_2021.Passes.SSH;
|
||||||
import Common.Current;
|
import Common.Current;
|
||||||
import Common.Global;
|
import Common.Global;
|
||||||
import Common.Utils.Utils;
|
|
||||||
import GlobalData.RemoteFile.RemoteFile;
|
|
||||||
import GlobalData.Tasks.Supervisor.Remote.RemoteTaskSupervisor;
|
import GlobalData.Tasks.Supervisor.Remote.RemoteTaskSupervisor;
|
||||||
|
import Visual_DVM_2021.Passes.PassException;
|
||||||
public abstract class TaskConnectionPass<S extends RemoteTaskSupervisor> extends ConnectionPass {
|
public abstract class TaskConnectionPass<S extends RemoteTaskSupervisor> extends ConnectionPass {
|
||||||
public S supervisor; //инициализация идет в конструкторе потомка.
|
public S supervisor; //инициализация идет в конструкторе потомка.
|
||||||
public TaskConnectionPass(Class<S> s_class) {
|
public TaskConnectionPass(Class<S> s_class) {
|
||||||
@@ -24,14 +23,10 @@ public abstract class TaskConnectionPass<S extends RemoteTaskSupervisor> extends
|
|||||||
super.Connect();
|
super.Connect();
|
||||||
user.connection.CheckUserInitialization(Current.getAccount().email);
|
user.connection.CheckUserInitialization(Current.getAccount().email);
|
||||||
/*
|
/*
|
||||||
RemoteFile userWorkspace = new RemoteFile(user.workspace, true);
|
String log = user.connection.CheckModulesVersion();
|
||||||
if (!user.connection.Exists(userWorkspace))
|
if (!log.isEmpty()) {
|
||||||
throw new WorkspaceNotFoundException(
|
throw new PassException("Сборка модулей не выполнена");
|
||||||
"Рабочее пространство пользователя " + Utils.Brackets(user.login)
|
}
|
||||||
+ " на машине " + Utils.Brackets(machine.getURL())
|
|
||||||
+ "\n" + Utils.Brackets(user.workspace) + "\nне найдено.\n" +
|
|
||||||
"Требуется выполнить повторную инициализацию пользователя."
|
|
||||||
);
|
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user