Commit graph

21 commits

Author SHA1 Message Date
Anders Ingemann
51bb3dd57f Integration testing for EC2 2015-04-16 22:21:46 +02:00
Anders Ingemann
b067ada15e Introduce some awesome signal handling
We can now press Ctrl+C remotely  while any subprocess of the bootstrapping process is running,
previously SIGINTs weren't propagated to the bootstrapping process because there was a thread
in between it all. Now the bootstrapping process is in it's own process group.
2015-04-16 22:21:45 +02:00
Anders Ingemann
f1bfee24a0 Prepare integration testing framework to work with providers other than virtualbox
Also, convert with context handlers in classes to functions with generators
This makes the code a lot more readable
2015-04-16 22:21:45 +02:00
Anders Ingemann
ac7e32d35e Preserve stacktraces when reraising exceptions 2015-04-16 22:21:43 +02:00
Anders Ingemann
767b32d20e Improve read_from_socket, a lot... 2015-04-16 22:21:43 +02:00
Anders Ingemann
0fe3c9e984 Cleanup adfter keyboard interrupts (also do a better job of cleaning up) 2015-04-16 22:21:42 +02:00
Anders Ingemann
87f2d889b7 Delete image after use, apparently the vbox version of delete is to do nothing 2015-04-16 22:21:42 +02:00
Anders Ingemann
9c6af89e78 Abstract bootstrapping, instance creation, booting etc..
This all now runs using a simple with: statement
2015-04-16 22:18:57 +02:00
Anders Ingemann
a11e466611 Generalize reading from socket 2015-04-16 22:18:57 +02:00
Anders Ingemann
6a0bef147a Refactor. Locking a vbox is now quite a bit easier 2015-04-16 22:15:21 +02:00
Anders Ingemann
e2cddbca4c Can now create and boot vbox image 2015-04-16 22:15:20 +02:00
Anders Ingemann
ea3eeae064 vbox instance creation working 2015-04-16 22:15:20 +02:00
Anders Ingemann
ece717a79f Fix bugs when picking the build server 2015-04-16 22:15:19 +02:00
Anders Ingemann
cee05e3fd0 Refactor... 2015-04-16 22:15:19 +02:00
Anders Ingemann
3d38ce04ef Move build_servers module into bootstrapvz 2015-04-16 22:15:19 +02:00
Anders Ingemann
909e5cee46 Put remote module into pkg root 2015-04-16 22:15:19 +02:00
Anders Ingemann
209651ef38 Dry run working in tests 2015-04-16 22:15:19 +02:00
Anders Ingemann
65b9e10ce3 VirtualBox integration 2015-04-16 22:15:19 +02:00
Anders Ingemann
86afbaf929 Clean up integration testing 2015-04-16 22:15:18 +02:00
Anders Ingemann
6b693429f3 Remove old test code 2015-04-16 22:15:18 +02:00
Anders Ingemann
e271f3e49a Initial work on integration testing started.
The work consists of three parts:
* Allow for bootstrapping remotely,
  this makes it possible to run the tests
  on e.g. OSX with VirtualBox installed
* Make bootstrapping a fully automated process
  where the manifests can be generated by the tests
  and the tests can call the bootstrapper directly in python
* Create a framework wherein instances can be booted up
  using the bootstrapped images and subsequently tested
2015-04-16 22:15:17 +02:00