Skip to content
Snippets Groups Projects
Verified Commit ac06b250 authored by Théo Pirkl's avatar Théo Pirkl :nail_care:
Browse files

Bugfixes

parent b5dae1c5
Branches
No related tags found
No related merge requests found
......@@ -21,7 +21,7 @@ class StartBrowser(Runnable):
profile = self.getBasicProfile(parameters['useProxy'])
# Running
os.environ["PATH"] += os.pathsep + env("RESOURCES_PATH") + "bin/"
os.environ["PATH"] += os.pathsep + env("RESOURCES_PATH") + "bin"
driver = webdriver.Firefox(executable_path=executable, options=options, firefox_profile=profile)
......
......@@ -180,7 +180,7 @@ class WorkflowController extends Controller {
* @return array
* @throws ValidationException
*/
private function talkToClient(Workflow $workflow, array $params){
public function talkToClient(Workflow $workflow, array $params){
try {
$file = Storage::disk('local')->get('builds/build-'.$workflow->id.'.yaml');
return Http::withOptions(['body' => $file])
......
......@@ -64,19 +64,18 @@ class JobController extends Controller {
/**
* Retries all failed tasks for a particular client
* @param Client $client
* @throws \Illuminate\Validation\ValidationException
*/
public function resume(Client $client){
$client->jobs()->with('workflow')->whereStatus(1)->get()->each(function($job) use ($client){
$file = Storage::disk('local')->get('builds/build-'.$job->workflow->id.'.yaml');
$params = collect($job->data)
->put('client', $client->ip)
->put('workflow_id', $job->workflow->id)
->toArray();
Http::withOptions(['body' => $file])
->get("http://127.0.0.1:8080/playbook", $params)->json();
// Cleaning up
$job->delete();
$failed = $client->jobs()->with('workflow')->whereStatus(1)->get();
$bridge = new \App\Http\Controllers\API\WorkflowController();
$failed->each(function($job) use ($client, $bridge){
$bridge->talkToClient($job->workflow, ['client' => $client->id]);
});
$client->jobs()->with('workflow')->whereStatus(1)->update(['status' => 0]);
return back();
}
}
......@@ -80,3 +80,15 @@ L'installer est très simple :
Vous avez installé Inari Express. Vous pouvez vous en servir en cliquant sur l'icône en haut à droite de Firefox. Pour exporter, cliquez droit n'importe où dans la page courante et sélectionnez _exporter_. Vos clicks sont désormais dans le presse-papier. Collez-les dans l'interface web Inari, sous _clicks_.
\pagebreak
\newappendix{Fichier de configuration Inari}
Cette annexe explique à quoi correspond chaque ligne du fichier de configuration Inari, le fichier `.env`.
* `CLIENT_WORKERS` : le nombre de workflow exécutables simultanément. Réglage conseillé : nombre de threads du processeur moins deux.
* `SERVER_WORKERS` : le nombre de workflow envoyables simultanément. Réglage conseillé : au moins quatre.
* `HTTPHANDLER_WEBSERVER_PORT` : le port du mini-serveur web de gestion des clients. Laisser à 7070.
* `CLIENT_PORT` : le port de communication du client. Laisser à 18965.
* `SERVER_PORT` : le port de communication du serveur. Laisser à 18964.
* `SERVER_WEB_FQDN` : Le (+FQDN_a) de l'interface web.
* `FILE_LOCKER` : Le chemin absolu du dossier accueillant les fichiers collectés par les workflow. Attention : il est indispensable que ce chemin absolu finisse avec un slash.
* `RESOURCES_PATH` : Le chemin absolu contenant les resources du projet. Si le dossier Inari est dans `/tmp/inari`, il faut indiquer `/tmp/inari/projet/agent/resources/`. A nouveau, le slash de fin est indispensable au bon fonctionnement.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment