Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Sweta Shah
XtalkLisaPropagation
Commits
78dcc18e
Commit
78dcc18e
authored
Oct 24, 2018
by
Karsten Wiesner
💬
Browse files
added initial vagrant environment for the virtual machine that is used to develop on synthlisa
parent
9a46e6c8
Changes
2
Hide whitespace changes
Inline
Side-by-side
Vagrantfile
0 → 100644
View file @
78dcc18e
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant
.
configure
(
"2"
)
do
|
config
|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
# config.vm.box = "hashicorp/precise64"
config
.
vm
.
box
=
"ubuntu/trusty64"
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
# config.vm.box_check_update = false
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
# NOTE: This will enable public access to the opened port
# config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine and only allow access
# via 127.0.0.1 to disable public access
# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
config
.
vm
.
provider
"virtualbox"
do
|
vb
|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
# vb.memory = "1024"
vb
.
customize
[
"modifyvm"
,
:id
,
"--memory"
,
"4096"
]
end
#
# View the documentation for the provider you are using for more
# information on available options.
# Enable provisioning with a shell script. Additional provisioners such as
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
# documentation for more information about their specific syntax and use.
# config.vm.provision "shell", inline: <<-SHELL
# apt-get update
# apt-get install -y apache2
# SHELL
config
.
vm
.
provision
:shell
,
:path
=>
"bootstrap.sh"
end
bootstrap.sh
0 → 100644
View file @
78dcc18e
#!/usr/bin/env bash
sudo
apt-get
-y
update
sudo
apt-get
-y
install
git htop emacs23 libfftw3-3 libfftw3-dev
sudo
apt-get
-y
install
python-dev
sudo
apt-get
-y
install
python-numpy
sudo
apt-get
-y
install
ipython
# special for synthlisa:
sudo
apt-get
install
swig2.0
sudo ln
/usr/bin/swig2.0 /usr/bin/swig
sudo mkdir
/home/vagrant/src
sudo mkdir
/home/vagrant/local
# Append to .profile
(
cat
<<
'
EOF
'
export SOME_ENV='true'
alias ll='ls -la'
alias clob-all='rm /usr/local/lib/python2.7/dist-packages/lisaxml; git clean -dfx'
EOF
)
>>
/home/vagrant/.profile
cd
/home/vagrant/src
git clone https://github.com/vallis/lisatools
git clone https://github.com/vallis/lisasolve
git clone https://github.com/vallis/synthlisa
cd
/home/vagrant/src/lisatools/lisaXML/io-python
sudo
python setup.py
install
-v
cd
/home/vagrant/src/lisasolve/fastsource/fastbinary
sudo
python setup.py
install
-v
--with-fftw
=
/usr/lib/
cd
/home/vagrant/src/lisasolve/common
sudo
python setup.py
install
-v
cd
/home/vagrant/src/lisasolve/mc3
sudo
python setup.py
install
-v
##### Todo not working automatically
cd
/home/vagrant/src/synthlisa
sudo
python setup.py
install
--prefix
=
/vagrant
cd
/home/vagrant/src/synthlisa
sudo
python setup.py
install
sudo
apt-get
-y
install
python-scipy
sudo
apt-get
-y
install
python-matplotlib
sudo
apt-get
-y
install
python-pip
# have to explicitely call for https since they changed the server access at pip --- ToDo test if still needed at Ubuntu 14
sudo
pip
install
pyRXP
-i
https://pypi.python.org/simple/
sudo
pip
install
pyephem
-i
https://pypi.python.org/simple/
# ???
chown
-R
vagrant:vagrant /home/vagrant/
*
#use newer OS like Ubuntu 14.04.5 LTS
#
#all python sites need to be accessd with TLS1.2. which comes with openssl
#otherwise you get the tls error while e.g using pip:
#
# http://pyfound.blogspot.com/2017/01/time-to-upgrade-your-python-tls-v12.html
# test python tls version to mitigate the tlsv1 alert protocol error (not able to https access)
# python -c "import json, urllib2; print json.load(urllib2.urlopen('https://www.howsmyssl.com/a/check'))['tls_version']"
### Todo make it automatic:
# ...
# git clone https://gitlab.aei.uni-hannover.de/kwiesner/LISAGalacticBinaryDataAnalysis.git
# passwort required!
# manually change import pyRXP to pyRXPU (check error message --> 2 places to patch) ####
# The path to input data of your script can be changed to /vagrant/ provided that you have copied
# the data to the vagrant root directory on the host machine scripts should work now
#### On eventual memory error:
#
# File "/usr/lib/python2.7/dist-packages/numpy/fft/fftpack.py", line 75, in _raw_fft
# r = work_function(a, wsave)
# MemoryError
#
# change "Vagrantfile" configuration to more memory e.g. 4096
# > vagrant reload
# http://pyfound.blogspot.com/2017/01/time-to-upgrade-your-python-tls-v12.html
# test python tls version to mitigate the tlsv1 alert protocol error (not able to https access)
# python -c "import json, urllib2; print json.load(urllib2.urlopen('https://www.howsmyssl.com/a/check'))['tls_version']"
# need to run with the very latest python version 2.7.9
#sudo apt-get -y install --reinstall build-essential
#sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
#wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
#tar -xvf Python-2.7.9.tgz
#cd Python-2.7.9
#./configure
#make
#sudo make install
# sudo shutdown now -r ????
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment