diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 444ef8ead2b1533f27b110804625b941ca7eb44c..af8afed91f411709a62e5abf2d8c96c2d6c61c40 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -34,9 +34,10 @@ cache:
script:
- eatmydata gem install bundler --no-ri --no-rdoc
- eatmydata bundle install --jobs $(nproc) --path vendor
- - rm /dev/random && ln -s /dev/urandom /dev/random
+ - utils/ci/entropy.sh &
- SCHLEUDER_ENV=test SCHLEUDER_CONFIG=spec/schleuder.yml eatmydata bundle exec rake db:init
- eatmydata bundle exec rspec
+ - pkill -f entropy.sh
codespell:
image: debian:unstable
diff --git a/utils/ci/entropy.sh b/utils/ci/entropy.sh
new file mode 100755
index 0000000000000000000000000000000000000000..43ce61804a0cae2fe6d9eac7c155eaf22ebdaf61
--- /dev/null
+++ b/utils/ci/entropy.sh
@@ -0,0 +1,17 @@
+#!/usr/bin/env python
+# For testing purposes only
+# DO NOT USE THIS, THIS DOES NOT PROVIDE ENTROPY TO /dev/random, JUST BYTES
+
+import fcntl
+import time
+import struct
+
+RNDADDENTROPY=0x40085203
+
+while True:
+ random = "3420348024823049823-984230942049832423l4j2l42j"
+ t = struct.pack("ii32s", 8, 32, random)
+ with open("/dev/random", mode='wb') as fp:
+ # as fp has a method fileno(), you can pass it to ioctl
+ res = fcntl.ioctl(fp, RNDADDENTROPY, t)
+ time.sleep(0.001)