You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
which (in some minutes) will give you a fully dockerized server setup
313
-
(`docker container ls` will list the created container, and you can see what's going on inside with the standard `docker exec -it server /bin/bash`.
314
-
Now, suppose that you want to run `WorkloadManagementSystem/Test_JobDB.py`,
315
-
the first thing to do is that you should first login in the docker container, by doing:
312
+
which (in some minutes) will give you a fully dockerized server setup. `docker container ls` will list the created container, and you can see what's going on inside with the standard `docker exec -it server /bin/bash`.
313
+
Now, suppose that you want to run `WorkloadManagementSystem/Test_JobDB.py`, the first thing to do is that you should first login in the docker container, by doing:
316
314
317
315
.. code-block:: bash
318
316
@@ -326,7 +324,7 @@ Now you can run the test with:
You can find the logs of the services in `/home/dirac/ServerInstallDIR/diracos/runit/`
327
+
You can find the logs of the services in `/home/dirac/ServerInstallDIR/diracos/runit/`.
330
328
331
329
You can also login in client and mysql with:
332
330
@@ -335,7 +333,49 @@ You can also login in client and mysql with:
335
333
./integration_tests.py exec-client
336
334
./integration_tests.py exec-mysql
337
335
336
+
To restart a service, you can go into the server docker, and run `runsvctrl`:
338
337
338
+
.. code-block:: bash
339
+
340
+
./integration_tests.py exec-server
341
+
...
342
+
runsvctrl t /home/dirac/ServerInstallDIR/diracos/runit/WorkloadManagement/JobMonitor/
343
+
344
+
And you can also restart all services (it can take some time):
345
+
346
+
.. code-block:: bash
347
+
348
+
./integration_tests.py exec-server
349
+
...
350
+
runsvctrl t /home/dirac/ServerInstallDIR/diracos/runit/*/*
351
+
352
+
353
+
You can also test DiracX in integration tests. To do that, you have to provide in the `prepare-environment` command the following flag: `TEST_DIRACX=Yes`. It will run DiracX alongside DIRAC, and use the available and activated legacy adapted services.
354
+
355
+
To deactivate a service from being used with DiracX, you can set the `diracxClient` field to `None`:
356
+
357
+
.. code-block:: python
358
+
359
+
classMyOldClient(Client):
360
+
def__init__(self, **kwargs):
361
+
super().__init__(**kwargs)
362
+
self.setServer("...")
363
+
364
+
# Set to NULL to avoid using it in ClientSelector
365
+
diracxClient =None
366
+
367
+
By setting `TEST_DIRACX=Yes` only, it will take the last version of DiracX by default. If you want to provide your own, you have to build your DiracX project, and provide the `dist` folder path when calling `prepare-client`. This path has to be absolute.
It will then mount your dist folder into DIRAC and DiracX (in `/diracx_sources`) to install the right dependencies.
374
+
375
+
For MacOS, there are two bugs that can be fixed.
376
+
377
+
- The first one is about `docker compose` not being recognized. To fix that, you can set in your environment variables `DOCKER_COMPOSE_CMD="docker-compose"`.
378
+
- The second one, is for macs with M1 (or more recent ones) chips which are not supported by the `opensearch` docker image. By setting the `ES_PLATFORM` flag to `linux/arm64` you will be able to start `opensearch` without issue.
0 commit comments