summaryrefslogtreecommitdiff
path: root/opendc-experiments/opendc-experiments-base/src/main
AgeCommit message (Collapse)Author
2024-01-08refactored opendc-experiment-compute (#190)Dante Niewenhuis
* removed experiment-compute and integrated all components into opendc-compute * updated workflow gradle file * removed unneeded code
2022-11-13refactor: Replace use of CoroutineContext by DispatcherFabian Mastenbroek
This change replaces the use of `CoroutineContext` for passing the `SimulationDispatcher` across the different modules of OpenDC by the lightweight `Dispatcher` interface of the OpenDC common module.
2022-11-13refactor: Use InstantSource as time sourceFabian Mastenbroek
This change updates the modules of OpenDC to always accept the `InstantSource` interface as source of time. Previously we used `java.time.Clock`, but this class is bound to a time zone which does not make sense for our use-cases. Since `java.time.Clock` implements `java.time.InstantSource`, it can be used in places that require an `InstantSource` as parameter. Conversion from `InstantSource` to `Clock` is also possible by invoking `InstantSource#withZone`.
2022-11-04refactor: Use RandomGenerator as randomness sourceFabian Mastenbroek
This change updates the modules of OpenDC to always accept the `RandomGenerator` interface as source of randomness. This interface is implemented by the slower `java.util.Random` class, but also by the faster `java.util.SplittableRandom` class
2022-10-06style: Eliminate use of wildcard importsFabian Mastenbroek
This change updates the repository to remove the use of wildcard imports everywhere. Wildcard imports are not allowed by default by Ktlint as well as Google's Java style guide.
2022-10-03feat(exp/base): Add provisioning tool for experimentsFabian Mastenbroek
This change adds to the experiment base in OpenDC a provisioning tool to help setup the experimental environment in a reproducible manner. The experimental environment can be defined in terms of *provisioning steps* which manage the allocation, configuration, and clean-up of all resources necessary for the experiments. The provisioning steps are executed sequentially, so in case of dependencies, the steps need to be ordered correctly.
2022-09-28feat(exp/base): Add service registry for cloud servicesFabian Mastenbroek
This change adds a new module called opendc-experiments-base which will provide a base for doing experiments with OpenDC. The initial feature we introduce is the service registry which acts as DNS for services to register during experimentation.