-
Notifications
You must be signed in to change notification settings - Fork 60
/
.travis.yml
55 lines (51 loc) · 1.61 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
---
dist: focal
language: minimal
git:
depth: 1
addons:
apt:
sources:
- sourceline: 'deb [arch=amd64] https://apt.releases.hashicorp.com focal main'
key_url: 'https://apt.releases.hashicorp.com/gpg'
packages:
- bridge-utils
- dnsmasq-base
- ebtables
- libvirt-daemon-system
- libvirt-dev
- qemu-kvm
- qemu-utils
- ruby-dev
- ansible
- vagrant
# Cache the big Vagrant boxes
cache:
directories:
- /home/travis/.vagrant.d/boxes
install:
- vagrant --version
- vagrant plugin install vagrant-libvirt
- vagrant plugin install vagrant-reload
script:
- pushd vagrant
# use rsync since NFS doesn't work
- sed -i -E "s:^(\s*)libvirt_sync_folder_type =.*:\1libvirt_sync_folder_type = 'rsync':" Vagrantfile
# enable winxp
- sed -i -E "s/^(\s*'winxp'\:\s).*/\1true,/g" Vagrantfile
# disable ubuntu
- sed -i -E "s/^(\s*'ubuntu'\:\s).*/\1false,/g" Vagrantfile
# disable win7
- sed -i -E "s/^(\s*'win7'\:\s).*/\1false,/g" Vagrantfile
# enable downloading VM images instead of building them
- sed -i -E "s/^(\s*download_vm_image\:\s).*/\1true/" ansible/playbook_2.yml
# we are not in libvirt group, so use sudo
- while sleep 9m; do echo "=====[ $SECONDS seconds still running ]====="; done &
- sudo -E vagrant up --provider=libvirt
- kill %1
# start winxp VM
- sudo -E vagrant ssh -c 'virsh -c qemu:///system start winxp'
# wait a few minutes until the VM boots
- sleep 9m
# run vmi-process-list
- sudo -E vagrant ssh -c 'LIBVMI_DEBUG=1 vmi-process-list -n winxp -j /etc/libvmi/winxp-profile.json -s /tmp/introspector'