source: ThirdParty/JobMarket/tests/regression/testsuite-server-worker.at

stable v1.7.0
Last change on this file was ab2e834, checked in by Frederik Heber <frederik.heber@…>, 3 months ago

Reduces JobMarket features for use in kubernetes clusters.

  • removes all functionality where we can enumerate the workers, enroll or remove them.
  • removes PoolGuard and CheckAlive functionality.
  • removes the shutdown thread: not needed as we don't wait for busy workers anymore.
  • removes WorkerPool. This is now handled by the kubernetes deployment.
  • TESTS: Removed respective unit and regression tests.
  • TESTS: Adapted regression tests as worker now needs to be present when first job is sent. Moreover, server needs to be equipped with worker host and port.
  • Property mode set to 100644
File size: 1.8 KB
RevLine 
[404d2b]1### fragment the molecule and check the number of configs
2
3AT_SETUP([Fragmentation - Automation: Server/Worker])
4AT_KEYWORDS([fragmentation automation server worker])
5
6# check that ports are unique over all tests such that they may run in parallel
[51a013]7WORKERPORT=11025
8CONTROLLERPORT=11026
9WORKERLISTENPORT=11027
[404d2b]10
11# start service in background
[ab2e834]12${AUTOTEST_PATH}/JobMarketServer --workeraddress 127.0.0.1:$WORKERLISTENPORT --workerport $WORKERPORT --controllerport $CONTROLLERPORT &
[404d2b]13server_pid=$!
14AT_CHECK([sleep 1], 0, [ignore], [ignore], [kill $server_pid])
15
[ab2e834]16# add a worker to work on jobs
[404d2b]17${AUTOTEST_PATH}/JobMarketPoolWorker -v 5 --signal 2 --server 127.0.0.1:${WORKERPORT} --hostname 127.0.0.1 --listen $WORKERLISTENPORT &
18worker_pid=$!
[ab2e834]19
20# add one jobs
21AT_CHECK([${AUTOTEST_PATH}/JobMarketController --server 127.0.0.1:$CONTROLLERPORT --command createjobs --executable "cat" --jobcommand "Nothing"], 0, [ignore], [ignore], [kill $server_pid])
22AT_CHECK([sleep 3], 0, [ignore], [ignore], [kill $server_pid $worker_pid])
[404d2b]23
24# send kill signal to worker such that it shuts down
25AT_CHECK([kill -INT $worker_pid], 0, [stdout], [ignore], [kill $server_pid $worker_pid])
26
27# check number of done jobs
28AT_CHECK([${AUTOTEST_PATH}/JobMarketController --server 127.0.0.1:$CONTROLLERPORT --command checkresults], 0, [stdout], [ignore], [kill $server_pid])
29AT_CHECK([fgrep "#0 are waiting in the queue and #1 jobs are calculated so far." stdout], 0, [ignore], [ignore], [kill $server_pid])
30
31# shutdown controller socket
32AT_CHECK([${AUTOTEST_PATH}/JobMarketController --server 127.0.0.1:$CONTROLLERPORT --command shutdown], 0, [stdout], [ignore], [kill $server_pid])
33
34# check that server is truely down
35AT_CHECK([sleep 1], 0, [ignore], [ignore], [kill $server_pid])
36AT_CHECK([kill $server_pid], 1, [ignore], [ignore])
37
38AT_CLEANUP
Note: See TracBrowser for help on using the repository browser.