Konrad Hanff
14f8a096eb
Add unit and integration tests for runner inactivity timeout.
2021-06-23 11:04:19 +02:00
Maximilian Paß
2e4a975588
Implement even more merge request comments
2021-06-15 12:05:51 +02:00
Maximilian Paß
87f823756b
Implement merge request comments
2021-06-15 11:37:47 +02:00
Maximilian Paß
25d78df557
Restore existing jobs and fix rebase (7c99eff3) issues
2021-06-15 11:37:35 +02:00
sirkrypt0
0020590c96
Update all runners when updating environment
...
Previously only the default job would be updated to the newest specs.
Now all Nomad jobs that belong to the given environment are updated
accordingly.
2021-06-15 11:35:59 +02:00
sirkrypt0
c7d59810e5
Use Nomad jobs as runners instead of allocations
...
As we can't control which allocations are destroyed when downscaling a job, we decided
to use Nomad jobs as our runners. Thus for each runner we prewarm for an environment,
a corresponding job is created in Nomad. We create a default job that serves as a template
for the runners. Using this, already existing execution environments can easily be restored,
once Poseidon is restarted.
2021-06-15 11:35:54 +02:00
sirkrypt0
d3300e839e
Add unit tests for separate stdout and stderr on execution
2021-06-11 08:47:25 +00:00
Maximilian Paß
32fe47d669
Implement linting issues and merge request comments
2021-06-09 08:35:20 +00:00
Maximilian Paß
4b5f0a3eb6
Add tests for runner manager updating runners
2021-06-09 08:35:20 +00:00
Maximilian Paß
d0a2a1d96c
Add tests for receiving allocation updates from Nomad
2021-06-09 08:35:20 +00:00
sirkrypt0
3f572261c2
Add updating cached allocations
2021-06-09 08:35:20 +00:00
sirkrypt0
b32e9c2a67
Remove off by one with needed runners
...
Earlier we used a channel to store the runners. To make the environment
refresh block, we scheduled an additional runner as the buffered channel
was then filled up. As we don't use the channel anymore, we don't need
the additional runner anymore. Furthermore this leads to weird race
conditions in tests when comparing the runner count to the desired one.
2021-06-03 13:21:49 +00:00
sirkrypt0
630a006258
Use more uints
...
Previously we accepted int values although only uint values made sense.
We adjusted this to accept uints where appropriate.
2021-06-03 13:21:49 +00:00
sirkrypt0
b990df7b9d
Add route to create or update execution environments
2021-06-03 13:21:49 +00:00
Jan-Eric Hellenberg
619cd40fb6
Refactor EntityStore interface to multiple interfaces of specific type
2021-05-27 09:56:07 +00:00
Jan-Eric Hellenberg
5bb3c6745e
Add tests for job store, Len and Sample method of pool
2021-05-19 14:52:03 +02:00
Jan-Eric Hellenberg
fe2ec4df35
Incorporate review comments
2021-05-19 14:52:03 +02:00
Jan-Eric Hellenberg
0590f31200
Refactor setup of runner manager test suite
2021-05-19 14:52:03 +02:00
Jan-Eric Hellenberg
83ea552cf7
Refactor interfaces to use a runner manager and an environment manager.
...
See https://gitlab.hpi.de/codeocean/codemoon/poseidon/-/issues/44 .
2021-05-19 14:52:03 +02:00