-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy path.travis.yml
47 lines (47 loc) · 2.77 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
# Use C as a dummy language.
language: c
# command to install dependencies
before_install:
# Create a Vagrant user, to have Travis-CI be similar to the deployment and Vagrant.
- sudo adduser --disabled-password --home /vagrant --gecos '' vagrant
# Remove some packages that we get from Debian anyway.
- sudo apt-get --quiet=2 remove --purge -y mongodb-10gen mysql-client-core-5.5 man-db >/dev/null
# Remove some packages that actively depend on locales working properly.
- sudo apt-get --quiet=2 remove postgresql-9.1 postgresql-contrib-9.1 postgresql-9.2 postgresql-contrib-9.2 postgresql-9.3 postgresql-contrib-9.3 postgresql-9.4 postgresql-contrib-9.4 >/dev/null
# Tell dpkg it is OK to choose the new config files, without prompting.
- echo 'Dpkg::Options { "--force-confdef"; "--force-confnew"; }' | sudo dd of=/etc/apt/apt.conf.d/99conf
# Trans-grade to Debian.
- sudo rm /etc/apt/sources.list
- echo 'deb http://mirror.mit.edu/debian/ jessie main' | sudo dd of=/etc/apt/sources.list
- sudo apt-get --quiet=2 update
- sudo apt-get --quiet=2 --force-yes -y install debian-archive-keyring >/dev/null
- sudo apt-get --quiet=2 update
- sudo rm -f /etc/dpkg/dpkg.cfg.d/multiarch # Remove historic multi-arch config.
- echo -n | sudo dd of=/var/lib/dpkg/info/libc-bin.list # Pretend nothing conflicts with this package's files.
- sudo dpkg -r --force-depends --force-remove-essential locales libc6-dev
- sudo apt-get --quiet=2 --fix-broken install >/dev/null
# Make sure locales are in a healthy shape.
- echo 'en_US.UTF-8 UTF-8' | sudo dd of=/etc/locale.gen
- sudo /usr/sbin/locale-gen
# On Travis-CI, remove insserv, since the Travis-CI version breaks w/ nginx.
- sudo dpkg -r --force-depends insserv
- sudo apt-get --quiet=2 --fix-broken install >/dev/null
# Remove udev, and let us get the Debian version.
- sudo dpkg --purge --force-depends --force-remove-essential udev initramfs-tools plymouth mountall upstart ureadahead
- sudo apt-get --quiet=2 --fix-broken install || echo "Working around..."
- sudo ln -sf /bin/true /var/lib/dpkg/info/udev.postinst
- sudo ln -sf /bin/true /var/lib/dpkg/info/initramfs-tools.postinst
- sudo ln -sf /bin/true /var/lib/dpkg/info/plymouth.postinst
- sudo dpkg --configure -a
# Do the Sandcats installing.
- make stage-provision
# Hackishly start the Meteor app. The Travis-CI image has no systemd, so we rely on this
# for now.
- sudo rsync -a $PWD/. /vagrant/.
# We run 'meteor' below first to do the user-specific install process...
- meteor --version
# We need Twisted for the silly Python script. While at it, get the latest version of Python.
- sudo apt-get --quiet=2 -y install python python-twisted python-openssl
# ...and now we do the actual meteor run command.
script:
- bash .travis-run-tests.sh